3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-16 05:48:44 +00:00
Commit graph

4006 commits

Author SHA1 Message Date
Nikolaj Bjorner 0077ddf33c try delay init for user propagator in smt_tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-03 09:45:07 -08:00
Nikolaj Bjorner bfd61fec00 enable user propagation on tactics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-02 08:28:52 -08:00
Nikolaj Bjorner 71cbb160d2 fix regression from today, see #5676
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-01 14:29:53 -08:00
Nikolaj Bjorner c6a5aa0cc4 try th_lemma, update documentation of api functions for creating strings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-01 09:21:02 -08:00
Nikolaj Bjorner 3b4f976118 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-30 19:15:03 -08:00
Nikolaj Bjorner 4daba290b1 change user propagation to apply scheme similar to theory_recfun
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-30 19:12:15 -08:00
Nikolaj Bjorner 959f4c9440 rename files to theory_user_propagator 2021-11-29 19:44:58 -08:00
Nikolaj Bjorner 5857236f2f introducing base namespace for user propagator 2021-11-29 19:41:30 -08:00
Nikolaj Bjorner c083aa82ee add debug information in user-propagate #5687
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-29 08:59:53 -08:00
Nikolaj Bjorner 833dd62623 fix #5681 2021-11-24 13:24:31 +01:00
Nikolaj Bjorner e8f5a29c31 fix #5679
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-22 19:37:10 +01:00
Nikolaj Bjorner 4928c28e63 fix #5675
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-19 08:42:32 -08:00
Nikolaj Bjorner 518ef9f916 fix #5674
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-18 21:14:50 -08:00
Nikolaj Bjorner b6f7deacf4 fix #5663 2021-11-12 11:36:42 -08:00
Nikolaj Bjorner 63ac2ee0d1 #5614 turn on / off options to get better performance.
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-11 17:54:46 -08:00
Nikolaj Bjorner af2cc460a9 #5646 2021-11-03 08:53:48 -07:00
Nikolaj Bjorner dd1e0fc561 #5643 2021-11-03 08:53:48 -07:00
Nikolaj Bjorner 87d4ce2659 working on #5614
there are some different sources for the performance regression illustrated by the example. The mitigations will be enabled separately:
- m_bv_to_propagate is too expensive
- lp_bound_propagator misses equalities in two different ways:
   - it resets row checks after backtracking even though they could still propagate
   - it misses equalities for fixed rows when the fixed constant value does not correspond to a fixed variable.

FYI @levnach
2021-11-02 14:55:39 -07:00
Henrich Lauko 96671cfc73
Add and fix a few general compiler warnings. (#5628)
* rewriter: fix unused variable warnings

* cmake: make missing non-virtual dtors error

* treewide: add missing virtual destructors

* cmake: add a few more checks

* api: add missing virtual destructor to user_propagator_base

* examples: compile cpp example with compiler warnings

* model: fix unused variable warnings

* rewriter: fix logical-op-parentheses warnings

* sat: fix unused variable warnings

* smt: fix unused variable warnings
2021-10-29 15:42:32 +02:00
Alexander Traud d1592c6abf
fix misspelled \brief for doxygen (#5632) 2021-10-29 15:34:28 +02:00
Nikolaj Bjorner 61eb8d1908 add ref for regression
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-26 11:39:13 +02:00
Nikolaj Bjorner aa5b4b8c77 strengthen contract for log_axiom_instantiation #5621
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-26 09:49:44 +02:00
Nikolaj Bjorner bdecc25619 strengthen contract for log_axiom_instantiation #5621
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-26 09:49:44 +02:00
Nikolaj Bjorner 7f41d6140f use some suggestions from #5615
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-22 12:39:55 -04:00
Nikolaj Bjorner f05ac8a429 updated C++ API for escaped and unescaped strings #5615
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-21 14:52:59 -04:00
Nikolaj Bjorner 13da6a02a6 add handling of quantifiers #5612 2021-10-20 12:27:56 -04:00
Nikolaj Bjorner 115203e87c fixes to sat.euf ematching #5573 2021-10-16 15:52:37 -07:00
Nikolaj Bjorner f60ed2ce92 #5591 2021-10-13 21:38:36 -07:00
Nikolaj Bjorner 7b341313d5 #5593 2021-10-13 17:50:56 -07:00
Nikolaj Bjorner 96e117d78c Update smt_context.cpp 2021-10-12 17:10:12 -07:00
Nikolaj Bjorner c15968aa9e fix #4901 2021-10-12 17:10:04 -07:00
Christoph M. Wintersteiger 58fd4fc860
Merge pull request #5550 from wintersteiger/cwinter_fpa_fixes
Assorted fixes for floats
2021-10-12 18:24:49 +01:00
Nikolaj Bjorner 52032b9ef8 #5467 2021-10-12 10:16:15 -07:00
Christoph M. Wintersteiger 00e8ea7962
Make terms that are internalized on the fly relevant 2021-10-12 12:45:10 +00:00
Christoph M. Wintersteiger 8e69f76784
Add additional equality in theory_fpa 2021-10-12 12:45:09 +00:00
Nikolaj Bjorner c3549ec784 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-11 11:03:45 -07:00
Margus Veanes 146f4621c5
Updated regex derivative engine (#5567)
* updated derivative engine

* some edit

* further improvements in derivative code

* more deriv code edits and re::to_str update

* optimized mk_deriv_accept

* fixed PR comments

* small syntax fix

* updated some simplifications

* bugfix:forgot to_re before reverse

* fixed PR comments

* more PR comment fixes

* more PR comment fixes

* forgot to delete

* deleting unused definition

* fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fixes

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-08 13:04:49 -07:00
Nikolaj Bjorner 8a85cfdb12 fix #5579 -
It is only possible to reach this case when new assertions are created.
2021-09-30 09:32:34 -07:00
Nikolaj Bjorner 9aad331699 #5546
try dampening
2021-09-14 10:32:53 +02:00
Nikolaj Bjorner f13ccf8969 bv2char and char2bv with Clemens
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-09-13 16:09:03 +02:00
Nikolaj Bjorner 3e6ff768a5 fix regression bug in mam reported by Aseem 2021-09-10 07:09:22 +02:00
Nikolaj Bjorner 18e4546404 modernize parameter defaults
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-09-03 17:42:36 -07:00
Nikolaj Bjorner cdcfbeb6d8 #5532
remove "reflect" parameter from exposed options. It should be internal only.
2021-09-03 16:01:59 -07:00
Nikolaj Bjorner e9a4a9a390 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-09-02 09:23:59 -07:00
Nikolaj Bjorner edb26e7be7 Merge branch 'master' of https://github.com/z3prover/z3 2021-09-02 08:53:56 -07:00
Nikolaj Bjorner 02acc38c28 add extra checks that user-supplied assumptions are asserted
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-09-02 08:53:47 -07:00
Nikolaj Bjorner 9e306e3b6e more useful diagnostics 2021-09-01 20:50:35 -07:00
Nikolaj Bjorner 968717a532 follow on fix from #5528
the same bug is also undetected in the main solver
2021-09-01 20:49:39 -07:00
Nikolaj Bjorner 535f442655 #5518
regression from adding lambdas in model
2021-08-31 12:13:27 -07:00
Nikolaj Bjorner 09696e989e add missing lambda defs per #5509
the result is now unknown because the nested expression contains exists, which doesn't get replaced by universal quantifier which is assumed by the legacy core.
The legacy core should not depend on universal quantifiers only, but fixing this is a risk. Workaround is to rewrite goals using forall only (replace exists by de-Morgan dual).
2021-08-27 11:57:26 -07:00
Nikolaj Bjorner 9790a8aa43 #5507
can't use auto-config if there are no assertions. Auto-config only works properly for one-shot mode since theories aren't loaded on demand in this solver.
2021-08-27 09:42:40 -07:00
Nikolaj Bjorner e75b5e9513 don't copy "true" 2021-08-25 05:59:42 -07:00
Nikolaj Bjorner aa05298950 fix #5491 2021-08-19 21:12:27 -07:00
Nikolaj Bjorner 749d1ab305 remove dependencies on stale component 2021-08-16 17:52:36 -07:00
Nikolaj Bjorner 6a3ba64afe #5454
@wintersteiger: added code review comment to theory_fpa. The bug seen in #5454 doesn't surface with theory_fpa, though.
2021-08-15 16:48:28 -07:00
Nikolaj Bjorner eefde76bd4 na 2021-07-31 17:16:59 -07:00
Nikolaj Bjorner b723e1093b misc warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-31 17:16:59 -07:00
Nikolaj Bjorner 7de8c72246 cleanups
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-31 11:32:47 -07:00
Nikolaj Bjorner 5652d2a157 #5429 #5431 2021-07-25 11:59:42 -07:00
Nikolaj Bjorner 0ba518b0c0 avoid perf abyss for macros
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-20 20:07:06 -07:00
Nikolaj Bjorner 284d599788 #5323
https://github.com/Z3Prover/z3/issues/5323#issuecomment-866503616
2021-07-18 05:14:14 -07:00
Nikolaj Bjorner 9e5dcf3ecb bound length of ubv2s
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-16 16:17:59 +02:00
Margus Veanes 8e9bc86c23
fixed bug #5343 and did some related optimizations (#5411) 2021-07-15 22:28:59 +02:00
Nikolaj Bjorner 0752b1385c add length axioms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-13 14:22:58 +02:00
Nikolaj Bjorner f74adb1ebd ubv2s step3 2021-07-12 17:15:08 +02:00
Nikolaj Bjorner b6a3891ac4 str.from_ubv step2 2021-07-12 15:00:36 +02:00
Nikolaj Bjorner 805bb58289 fix #5404 2021-07-12 12:35:24 +02:00
Nikolaj Bjorner e05f5ef6d1 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-11 06:15:27 +02:00
Nikolaj Bjorner 5fac396c2f simplify some verbose trace-stream 2021-07-11 06:15:27 +02:00
Nikolaj Bjorner 66fc980154 add helper axioms for int2bv #5396 2021-07-10 17:13:16 +02:00
Nikolaj Bjorner 2973d3bdc1 fix #5392 2021-07-07 23:43:30 +02:00
Nikolaj Bjorner 897cbf347b fix #5381 2021-07-07 16:51:06 +02:00
Nikolaj Bjorner 4f184b6aa9 fix #5376 2021-07-06 19:20:35 +02:00
Nikolaj Bjorner af5b2a4179 #5376 2021-07-06 16:44:44 +02:00
Nikolaj Bjorner ca05c66847 #5376 2021-07-06 14:20:23 +02:00
Nikolaj Bjorner 2a8d00d815 fix #5378
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-06 00:04:16 +02:00
Nikolaj Bjorner f95d0b7216 #5349 #5338 2021-06-16 16:01:42 -05:00
Nikolaj Bjorner 2156c74d51 #4702
initial gcd test implementation for accumulated parity constraints
2021-06-01 15:26:36 -07:00
Nikolaj Bjorner 4d75281841 fix #5315
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-30 10:38:04 -07:00
Nikolaj Bjorner b1606487f0 fix #5289 2021-05-30 10:32:30 -07:00
Nikolaj Bjorner 3024fe7baf fix #5312 2021-05-29 08:17:33 -07:00
Nikolaj Bjorner 15916091d1 fix #5307
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-28 14:38:41 -07:00
Nuno Lopes f1e0d5dc8a remove a hundred implicit constructors/destructors 2021-05-23 14:25:01 +01:00
Nikolaj Bjorner 20a67e47ca remove symbol -> zstring -> symbol round-trips
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-22 13:12:49 -07:00
Nikolaj Bjorner 8ba0fb5b58 rounding mode sort removed for incompatibility
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-21 16:18:43 -07:00
Nikolaj Bjorner 00deb12238 signed
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-21 15:51:27 -07:00
Nikolaj Bjorner 03d2c5f3d0 consolidate literals 2021-05-20 12:58:27 -07:00
Nikolaj Bjorner c959e28d4a remove prints, remove ability to toggle eager_eq_axioms option
NB. Spacer sets eager_eq_axioms option to false, but relevancy of this option is not clear at all as all other default paths don't use this option and theory_lra is incorrect when it is set to false.
2021-05-20 04:26:45 -07:00
Nikolaj Bjorner cc12e3ed38 fix #5280 2021-05-19 16:52:24 -07:00
Nikolaj Bjorner 7b3a587505 fix #5225 2021-05-18 18:04:03 -07:00
Nikolaj Bjorner 9031b5b949 fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-18 11:46:46 -07:00
Nikolaj Bjorner 30974968af fix #5256
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-17 17:41:34 -07:00
Nikolaj Bjorner d2bd92eab9 fix #5271 2021-05-17 10:42:34 -07:00
Nikolaj Bjorner f02fbb49bb fix #5253 2021-05-10 13:00:52 -07:00
Nikolaj Bjorner 2b1b10be69 fix #5236 2021-05-05 13:50:53 -07:00
Murphy Berzish 466269ee13
theory_str iterator refactoring and dead code removal (#5222)
* z3str3: iterator refactoring

* z3str3: remove old nfa dead code

* z3str3: continued iterator refactoring

* z3str3: remove unroll dead code

* z3str3: ctx_dep_analysis iterator refactoring

* z3str3: continued iterator refactoring

* z3str3: final iterator refactoring
2021-05-05 10:06:03 -05:00
Nikolaj Bjorner b658934bd8 fix #5197 fix #5193 2021-04-20 10:16:44 -07:00
Nuno Lopes 21e59f7c6e
change model evaluator to respect resource limits (#5184) 2021-04-14 11:48:39 -07:00
Nuno Lopes ce96182746 micro opt: dont reallocate an hashtable in a destructor 2021-04-14 17:32:34 +01:00
Nikolaj Bjorner 4a6083836a call it data instead of c_ptr for approaching C++11 std::vector convention. 2021-04-13 18:17:35 -07:00
Nikolaj Bjorner 804f065215 fixes for #4688
https://github.com/Z3Prover/z3/issues/4866#issuecomment-778721073
2021-04-11 17:42:12 -07:00
Nikolaj Bjorner 2dcfe799bc fix #4998 2021-04-11 04:42:16 -07:00
Nikolaj Bjorner 878847179f fix #5144 2021-04-10 15:30:17 -07:00
Nikolaj Bjorner 8d9be5322f fix #4365
m_library_aware_axiom_todo.reset(); should not be called because this vector is owned by the m_library_aware_trail_stack object.
2021-04-10 13:03:05 -07:00
Lev Nachmanson 8848e5b4c3 correctly explain the all fixed test in the octaganal tree
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2021-04-10 08:54:52 -07:00
Lev Nachmanson 18610bf31f debug issue 5127
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2021-04-10 08:54:52 -07:00
Nikolaj Bjorner a99e75f58f fix #5154 2021-04-07 11:28:51 -07:00
Nikolaj Bjorner 1b503b8887 na 2021-04-06 20:09:51 -07:00
Nikolaj Bjorner 0b0efa83ca debugging #5127 2021-04-06 20:09:50 -07:00
Nikolaj Bjorner e5e663e874 fix for #5153 2021-04-06 20:09:50 -07:00
Nikolaj Bjorner 6099b84ff6 fix #5149 2021-04-06 20:09:49 -07:00
Nikolaj Bjorner 1fc9a7ba84 fix regression, fix #5115 2021-03-30 17:43:12 -07:00
Nikolaj Bjorner c71bbb6391 fix #5136, regression when removing variable registration for mod/div operations 2021-03-30 13:45:54 -07:00
Nikolaj Bjorner 6d28b1a858 fix #5134 2021-03-29 14:11:49 -07:00
Nikolaj Bjorner 6bdf377e11 remove unneeded assertion fix #5131 2021-03-28 21:20:05 -07:00
Nikolaj Bjorner 0432311b11 fix #5121 2021-03-28 16:14:37 -07:00
Nikolaj Bjorner 6aa766a544 fix perf regression for new arithmetic solver, missing equality propagation #5106 2021-03-28 14:17:50 -07:00
Nikolaj Bjorner d6691830c7 fix perf regression for new solver, missing equality propagations #5106 2021-03-28 14:17:50 -07:00
Nikolaj Bjorner bb2c40072e skip div 1 2021-03-28 14:17:49 -07:00
Nikolaj Bjorner 22d66f57f1 pp 2021-03-28 14:17:49 -07:00
Nikolaj Bjorner 0c25d2560d improve diagnosability 2021-03-26 14:58:25 -07:00
Nikolaj Bjorner e89071d366 #5125 2021-03-26 14:58:24 -07:00
Nikolaj Bjorner 15a7621e27 remove template dependency for trail objects 2021-03-19 11:15:05 -07:00
Nikolaj Bjorner c05c5caab5 fix #5111 2021-03-19 11:15:04 -07:00
Murphy Berzish 064b1f0721
z3str3: address code reviews and remove some dead code (#5116) 2021-03-19 10:37:16 -07:00
Nikolaj Bjorner bf692a5076 dependency
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-03-17 17:10:01 -07:00
Nikolaj Bjorner ab0735fde2 separate component for asserted_formulas to break dependency cycles
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-03-17 15:51:38 -07:00
Nikolaj Bjorner ddbcd08d46 move asserted_formulas to solver scope 2021-03-17 15:02:16 -07:00
Nikolaj Bjorner 648568489c internalize only terms not atoms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-03-16 06:53:14 -07:00
Nikolaj Bjorner cb8c6ffafc a pending issue from #4866
https://github.com/Z3Prover/z3/issues/4866#issuecomment-748658905
2021-03-16 05:26:13 -07:00
Nikolaj Bjorner ee614c2e46 fix #5090 2021-03-15 17:02:38 -07:00
Nikolaj Bjorner ff0de59a70 more streamlined diagnostics to prepare for #5106 2021-03-15 16:23:35 -07:00
Nikolaj Bjorner 18143d8932 fix #5102 2021-03-15 01:01:33 -07:00
Nikolaj Bjorner 845ba7a11e use a large delay for nlsat 2021-03-14 19:14:44 -07:00
Nikolaj Bjorner 155738088f fix internalization on post-visit, increase delay to 100 2021-03-14 17:20:39 -07:00
Nikolaj Bjorner 8412ecbdbf fixes to new solver, add mode for using nlsat solver eagerly from nla_core 2021-03-14 13:57:04 -07:00
Nikolaj Bjorner 9a975a4523 array solver fixes 2021-03-13 06:19:32 -08:00
Murphy Berzish 04ac5f03f7
z3str3: use improved substr axioms from seq_axioms (#5097) 2021-03-12 14:51:16 -06:00
Nikolaj Bjorner 857557ad93 deal with compiler warnings 2021-03-08 20:39:19 -08:00
Nikolaj Bjorner 88fbf6510f updates to theory_lra 2021-03-08 17:19:07 -08:00
Nikolaj Bjorner f29a596070 deal with compiler warnings, from MacOS CI build 2021-03-08 17:14:09 -08:00
Nikolaj Bjorner 7eceeff349 move branch of unit variable 2021-03-08 10:09:04 -08:00
Nikolaj Bjorner 7edc99f807 na 2021-03-06 12:36:19 -08:00
Nikolaj Bjorner ea181fe8b2 more useful trace 2021-03-05 15:01:40 -08:00
Nikolaj Bjorner 38737db802 fixes and more porting seq_eq_solver to self-contained module 2021-03-04 16:23:22 -08:00
Nikolaj Bjorner e398959732 move eq solver functionality to common place, fixes to goal2sat 2021-03-04 07:57:31 -08:00
Nikolaj Bjorner 8c66691e6d disable propagation in proof mode as it produces ill-formed proof objects. Fixes #5063 2021-03-03 09:51:56 -08:00
Nikolaj Bjorner 0ce1c34d81 fix #5065 - regression solving str.from_int equations now that it isn't injective any longer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-03-02 12:59:48 -08:00
Nikolaj Bjorner 56478f917b enable sat.euf in opt, enable smt legacy for lns 2021-03-02 06:21:20 -08:00
Nikolaj Bjorner 484c83e6c0 revert enum split for legacy solver 2021-03-01 04:13:17 -08:00
Nikolaj Bjorner f725989225 optimize for enumeration datatypes 2021-02-28 21:31:21 -08:00
Nikolaj Bjorner 026065ff71 streamline pb solver interface and naming after removal of xor 2021-02-28 12:32:04 -08:00
Nikolaj Bjorner 830f314a3f fixes to dt_solver and related 2021-02-27 11:03:20 -08:00
Nikolaj Bjorner 5c47f244e9 fix #5047 2021-02-26 03:37:14 -08:00
Nikolaj Bjorner ea1089e980 fix #4938 2021-02-26 02:06:28 -08:00
Murphy Berzish 56e4ee3273
z3str3: use assert_axiom_rw more consistently (#5055) 2021-02-25 19:50:18 -06:00
Nikolaj Bjorner 64ba0b631a fixes to seq solver 2021-02-25 10:35:14 -08:00
Nikolaj Bjorner 377d060036 move to separate axiom management
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-23 18:09:45 -08:00
Murphy Berzish 9bde93f812
z3str3: check whether rewritten axioms rewrite to TRUE (#5039) 2021-02-23 10:36:14 -06:00
Murphy Berzish 5599387a34
z3str3: add str.is_digit support (#5038) 2021-02-23 10:36:01 -06:00
Nikolaj Bjorner d9fb40602e use theory agnostic axioms in more cases 2021-02-21 18:36:53 -08:00
Nuno Lopes e773e1e78d fix a few more warnings 2021-02-19 12:16:05 +00:00
Nuno Lopes d6ce9cce95 fix clang warnings 2021-02-19 10:59:22 +00:00
Nikolaj Bjorner a22fb8a96e revert unit propagation of equality literals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-18 23:11:03 -08:00
Nikolaj Bjorner 27584d68db more rewrite rules
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-18 22:14:53 -08:00
Murphy Berzish 27db97c269
Z3str3: add str.to_code and str.from_code (#5015) 2021-02-18 16:51:34 -06:00
Nikolaj Bjorner ca9fcbd1df na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-18 13:46:59 -08:00
Nikolaj Bjorner 4f9117a921 Move seq axioms to theory independent module 2021-02-16 05:13:52 -08:00
Nikolaj Bjorner 823830181b butterfly effect with relevancy marking
bail out of infinite instantiation loop
2021-02-15 16:37:23 -08:00
Nikolaj Bjorner a6dce246f6 fix #5031 2021-02-15 14:36:01 -08:00
Nikolaj Bjorner c387863da1 fix #5032, reset substitution during fold transformation 2021-02-15 14:14:25 -08:00
Nikolaj Bjorner 70b4822571 patch seq theory using purification to avoid unsoundness caused by interaction with canonization and rewriting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-14 17:41:06 -08:00
Nikolaj Bjorner eac69c5504 incorrect axiomatization
Fixes repro in https://github.com/Z3Prover/z3/issues/4866#issuecomment-778706682
2021-02-14 15:29:10 -08:00
Nikolaj Bjorner 45af1bd243 fix build, move seq_skolem 2021-02-14 14:40:29 -08:00
Nikolaj Bjorner 083d09aa81 fix #5016 2021-02-14 13:52:10 -08:00
Nikolaj Bjorner 83f4a006c6 wreckfun 2021-02-12 19:46:47 -08:00
Nikolaj Bjorner 612cc5cfba fix #5014
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-12 16:01:33 -08:00
Nikolaj Bjorner 998cf4c726 fix #5020
comparison for strict neighbor relation seemed reversed.
Alas, this could introduce additional regressions
2021-02-12 12:24:27 -08:00
Nikolaj Bjorner 25f53c0467 deal with warnings reported in https://launchpadlibrarian.net/522361319/buildlog_ubuntu-groovy-s390x.z3_4.8.10-1ubuntu4ppa1_BUILDING.txt.gz
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-11 13:49:47 -08:00
Nikolaj Bjorner 5c04b9eee2 fix #5012
teething stage for from/to code axiomatization
2021-02-09 16:38:03 -08:00
Nikolaj Bjorner 8ca2de41db turn on from/to code handling #5007 samples 2021-02-09 10:00:08 -08:00
Nikolaj Bjorner a152bb1e80 remove template Context dependency in every trail object 2021-02-08 15:41:57 -08:00
Nikolaj Bjorner 0ec567fe15 integrate v2 of lns 2021-02-04 15:47:40 -08:00
Nikolaj Bjorner fb1509d011 expose internal API for set_phase 2021-02-02 14:29:06 -08:00
Nikolaj Bjorner 8f577d3943 remove ast_manager get_sort method entirely 2021-02-02 13:57:01 -08:00
Nikolaj Bjorner 937b61fc88 fix build, refactor 2021-02-02 05:26:57 -08:00
Nikolaj Bjorner 3ae4c6e9de refactor get_sort 2021-02-02 04:45:54 -08:00
Nikolaj Bjorner 4455f6caf8 move to get_sort as method, add opt_lns pass, disable xor simplification unless configured, fix perf bug in model converter update trail 2021-02-02 03:58:19 -08:00
Nikolaj Bjorner 46f754c43d add priority queue to instantiation 2021-01-31 16:17:52 -08:00
Nikolaj Bjorner 6d99a8f0cc fixes for unicode 2021-01-31 14:55:52 -08:00
Nikolaj Bjorner 657ed4db7a fix relevancy bug for recfun
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-30 07:19:57 -08:00
Nikolaj Bjorner b402268d35 fix #4982
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-29 06:43:33 -08:00
Nikolaj Bjorner c0c314d1ae build fix
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-29 06:23:27 -08:00
Murphy Berzish da68c3213c
Unicode for Z3str3 (#4981)
* z3str3: remove hard-coded char set

* z3str3: remove hard-coded char set

* z3str3: use char abstraction

* z3str3: scope management for unicode chars

* add QF_CHAR for z3str3

* z3str3: remove hard-coded char set

* z3str3: use char abstraction

* z3str3: scope management for unicode chars

* add QF_CHAR for z3str3

* z3str3: add 'char' string solver case

* z3str3: fix mk_char using the wrong ast manager

* z3str3: fix refcounted character vectors
2021-01-29 06:14:38 -08:00
Nikolaj Bjorner cfcd7f18a9 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-28 17:09:12 -08:00
Nikolaj Bjorner afc4c700b1 move directory
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-28 14:49:15 -08:00
Nikolaj Bjorner 42e601483d add selected updates #4981
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-28 13:43:30 -08:00
Nikolaj Bjorner e3d634807b move common routines for quantifiers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-28 13:23:40 -08:00
Nikolaj Bjorner f48fb8d3e8 it just works
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-28 11:12:05 -08:00
Nikolaj Bjorner 579caab025 na 2021-01-27 19:35:34 -08:00
Nikolaj Bjorner 909257f856 remove family id externals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-27 06:48:24 -08:00
Nikolaj Bjorner 8d8fe872ad remove plugin status to theory_seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-27 06:22:25 -08:00
Nikolaj Bjorner 696b3c79b9 fixes to self-contained character unicode 2021-01-27 06:13:37 -08:00
Nikolaj Bjorner d0f1d8f59e move to unicode as stand-alone theory
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-27 05:46:45 -08:00
Nikolaj Bjorner ecba26beae missing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-26 17:07:46 -08:00
Nikolaj Bjorner 32058d9c68 add char_decl_plugin 2021-01-26 16:43:03 -08:00
Nikolaj Bjorner 20332c6d3e adding char decl plugin for separate theory treatment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-26 16:28:44 -08:00
Nikolaj Bjorner 8ed1992029 char value
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-26 11:29:40 -08:00
Nikolaj Bjorner 31b7ad3012 prepare char utilities as a stand-alone theory 2021-01-26 10:34:10 -08:00
Nikolaj Bjorner f33d6f89b9 fix #4973 2021-01-25 12:20:27 -08:00
Nikolaj Bjorner 47cb1d1207 remove bit-vector dependencies in theory_str_mc. See discussion #4939
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-23 13:03:06 -08:00
Nikolaj Bjorner e4cec19f03 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-23 12:16:00 -08:00
Nikolaj Bjorner 96f1f4a567 rename to seq_char instead of seq_unicode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-23 12:12:06 -08:00
Artem Alekseev 7e668e9a1f
Fix build (#4960) 2021-01-23 11:13:10 -08:00
Nikolaj Bjorner 03fd251ccb streamline unicode/ascii toggling. Fix bit-width for unicode to 18 2021-01-23 11:11:44 -08:00
Nikolaj Bjorner 90eb4de526 track reference counts of allocated characters
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-23 10:42:43 -08:00
Nikolaj Bjorner 680b185872 adding ematching engine, fixing seq_unicode 2021-01-22 17:10:45 -08:00
Nikolaj Bjorner db17ae03c6 early return, statistics, remove unused field 2021-01-21 23:53:34 -08:00
Nikolaj Bjorner 4c82350ca4 na 2021-01-21 23:35:04 -08:00
Nikolaj Bjorner 2051cac3a3 tidy 2021-01-21 23:34:47 -08:00
Nikolaj Bjorner 4e8ba8b160 regression fix, fix unicode mode 2021-01-21 22:06:15 -08:00
Nikolaj Bjorner 64ba44d2ac fix underflow bug when subtracting unsigned numbers 2021-01-21 21:01:02 -08:00
Nikolaj Bjorner dafee71500 reshuffle unicode support to use global parameter, and use bit-vectors on demand 2021-01-21 14:24:26 -08:00
Nikolaj Bjorner 3a2ed691f8 fix #4952
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-20 00:49:28 -08:00
Nikolaj Bjorner 95d98ea8ce throttle equality propagation to shared expressions 2021-01-19 04:51:00 -08:00
Nikolaj Bjorner d1dab327cd fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-11 23:51:40 -08:00
Nikolaj Bjorner fc3a642876 fix #4948 2021-01-11 19:26:16 -08:00
Nikolaj Bjorner 223bffd035 fix #4920 2021-01-09 02:02:50 -08:00
Nikolaj Bjorner 43eb862374 fix #4932 2021-01-08 12:50:36 -08:00
Nikolaj Bjorner 3d39f37e63 fix #4930
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-08 12:15:02 -08:00
Nikolaj Bjorner c36355c1e5 fix #4933
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-08 10:57:55 -08:00
Nikolaj Bjorner ac7d07ca58 fix #4937 2021-01-07 17:32:05 -08:00
Nikolaj Bjorner f519c58ace Add groovy R.U.Stan option to retrieve models even when they don't exist #4924
Usage:
z3 4924.smt2 smt.candidate_models=true
2020-12-30 14:38:41 -08:00
Nikolaj Bjorner 374ae52d70 testing mbi 2020-12-26 13:49:59 -08:00
Nikolaj Bjorner 021bd8a994 sym file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-12-21 17:08:38 -08:00
Nikolaj Bjorner a164087384 remove cheap-eqs option as there is already propagate_eqs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-12-21 11:04:04 -08:00
Nikolaj Bjorner 727095c563 fix #4899 2020-12-17 23:03:01 -08:00
Nikolaj Bjorner 7fe8298479 fix #4873 2020-12-12 16:03:48 -08:00
Nikolaj Bjorner dda4d66325 fix #4888
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-12-12 12:33:48 -08:00
Nikolaj Bjorner 621e99284b fix arith_solver=6 regression over solver=2
https://github.com/Z3Prover/z3/issues/4613#issuecomment-668047545
2020-12-08 16:36:43 -08:00
Nikolaj Bjorner 8ce08d57a0 na 2020-12-08 12:08:15 -08:00
Nikolaj Bjorner c49d39af81 perf for #4655 2020-12-07 21:34:57 -08:00
Lev Nachmanson 7089610bbd set arith.cheap_eqsTO True
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-12-07 12:02:57 -08:00
Lev Nachmanson b90143cc0e set the defalt for cheap_eqs=False, do not run
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-12-06 18:26:26 -08:00
Nikolaj Bjorner 746dd745ad fix #4856 2020-12-06 14:06:08 -08:00
Nikolaj Bjorner c3c7aad1a8 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-12-06 11:18:37 -08:00
Nikolaj Bjorner 4d55f83654 misc 2020-12-04 16:59:13 -08:00
Murphy Berzish b0fd25f041
z3str3: don't compute intersection difficulty against a null automaton (#4846) 2020-12-04 10:40:03 -06:00
Nikolaj Bjorner 6d427d9dae fix #4839 2020-12-02 12:46:24 -08:00
Nikolaj Bjorner 12198d13ac fix #4794 2020-12-02 12:24:35 -08:00