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

1304 commits

Author SHA1 Message Date
Nikolaj Bjorner 8beb6618d3 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-09 17:51:33 +01:00
Nikolaj Bjorner be65e9a241 fix #3218
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-09 17:37:38 +01:00
Nikolaj Bjorner c765869d38 fix #3176
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-07 12:34:07 +01:00
Nikolaj Bjorner d3bd3bd4fc fix #3155
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-05 18:26:34 +01:00
Nikolaj Bjorner ba79700096 remove mc printing from goals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-02 18:06:23 -08:00
Nikolaj Bjorner 8b720a0d66 fix #3115 fix #3116 regressions from #3111 etc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-02 16:38:33 -08:00
Nikolaj Bjorner a319f4bf58 fix #3104
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-02 05:16:48 -08:00
Nikolaj Bjorner bfca26b972 fix #3111
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-02 04:46:12 -08:00
Nikolaj Bjorner e1ece7e968 CTRACE
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-24 20:24:42 -08:00
Nikolaj Bjorner 238ff78374 fix #3082
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-24 09:01:31 -08:00
Nikolaj Bjorner b68efe44af fix fix
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-23 12:28:15 -08:00
Nikolaj Bjorner cb6eb0fc96 fix #3078
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-23 09:48:45 -08:00
Nikolaj Bjorner 5af139055d fix #3079
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-23 09:45:05 -08:00
Nikolaj Bjorner dcd4fff284 fixes to cuts
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-21 18:06:57 -08:00
Nuno Lopes 7d8b56027f fix #3068: unsound cache of exprs in or expression
this tactic has a quite broken caching mechanism (needs a stack).. :S
2020-02-21 18:48:54 +00:00
Nuno Lopes 55df045f85 fix #3058: missing cache reset in dom_simplify of not
just introduced the bug 5 mins ago..
2020-02-20 18:05:52 +00:00
Nuno Lopes c9be09b18c fix #3052: incorrect handling of ands simplified to false in dom-simplify
+ add support for not operations
2020-02-20 16:21:46 +00:00
Nikolaj Bjorner a543099a4f fix #3023 again
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-19 10:04:44 -08:00
Nikolaj Bjorner a4d81b2847 fix #3045 fix #3046
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-19 09:52:26 -08:00
Nuno Lopes 1ac365ca74 fix #3040: soudness bug in dom-simplify 2020-02-19 13:02:45 +00:00
Nikolaj Bjorner 4bad2dd92c fix #3043
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-18 22:58:14 -08:00
Nikolaj Bjorner cc2cd5b557 fix #3041
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-18 22:57:30 -08:00
Nikolaj Bjorner f810f25d8d fix #3004
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-17 19:37:47 -10:00
Nikolaj Bjorner 23a474655b fix #3034
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-17 19:09:46 -10:00
Nikolaj Bjorner b6ee0b151a fix #3027
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-17 00:22:48 -10:00
Nikolaj Bjorner 234b53b831 fix #3028
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-17 00:20:01 -10:00
Nikolaj Bjorner d25db0d3e9 fix #3026
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-16 15:48:46 -10:00
Nikolaj Bjorner 19ba2948d1 fi #3023
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-15 22:00:36 -10:00
Nikolaj Bjorner c2f6f2e715 fix #3010
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-15 21:27:58 -10:00
Nikolaj Bjorner 4f6e3cfe71 fix #2976
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-11 22:20:20 -08:00
Nuno Lopes feba007696 fix #2965, fix #2968: bugs in domsimplify on cache usage and boolean trial propagation 2020-02-10 10:56:36 +00:00
Nuno Lopes 8279b406ab minor code simplification 2020-02-06 09:01:16 +00:00
Nuno Lopes 506fbf9672 fix #2933: soundness issue in dom-simplify with (or foo true) 2020-02-04 14:05:12 +00:00
Nikolaj Bjorner 3760107bb8 fix #2930
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-02 20:03:55 -08:00
Nuno Lopes d79692b185 remove unused file & hide a few symbols 2020-01-31 17:13:28 +00:00
Lev Nachmanson 7eb1affc7b after rebasing with Z3Prover
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson 2b11ed241e fix lemma generation for intervals
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson 578e24d8c1 bound the size of bit vectors
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson ab1b2ae86d remove dead code and a fix in no_lemmas_hold
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson 086e25b7fa lemmas with less equivalence explanations
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson 9c62b431e4 address the NB's comments
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson 9302d8bef3 Guard the creation of solvers in qfnia_tactic.cpp by a define 2020-01-28 10:04:21 -08:00
Lev Nachmanson 1230b46008 perf in equiv_monomials
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev e4cbe980e9 limit the number of tactics in qfnia
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner 05da2508bf fix #2873
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-22 11:08:44 -06:00
Nikolaj Bjorner 55f59364a3 cap memory consumption on int2bv tactic to 100MB
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-06 14:25:31 -08:00
Nikolaj Bjorner 030da1f8ac build warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-05 20:50:36 -08:00
Nikolaj Bjorner 1d0572354b add bit-matrix, avoid flattening and/or after bit-blasting, split pdd_grobner into solver/simplifier, add xlin, add smtfd option for incremental mode logic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-01 20:14:20 -08:00
Nikolaj Bjorner 216affd852 set defrag
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-31 11:55:44 -08:00
Nikolaj Bjorner a7dc50362b fix #2836 2019-12-31 11:55:43 -08:00
Nikolaj Bjorner ce4e71fbe9 fix #2831 again
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-28 18:44:33 -08:00
Nikolaj Bjorner d4f2215024 revert restriction to nira test, move to tuned version of grobner
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-27 16:38:35 -08:00
Nikolaj Bjorner dd07d21f6c fix #2821
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-27 12:16:28 -08:00
Nikolaj Bjorner fec94d1552 fix #2805
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-20 12:48:19 -08:00
Nikolaj Bjorner c839f58276 fix #2796
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-10 15:37:40 -08:00
Nikolaj Bjorner 184f7cedf6 fix #2795 2019-12-10 03:06:45 -08:00
Nikolaj Bjorner 5da0902dd4 remove smt option
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-07 11:31:21 +03:00
Nikolaj Bjorner 9af4cc0fd6 links to API (related to issue in z3doc)
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-03 12:20:11 +01:00
Nikolaj Bjorner 1eab774b91 fix #2774
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-12-02 15:22:03 -08:00
Nikolaj Bjorner b371592c0d unused variable warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-30 19:21:35 -08:00
Nikolaj Bjorner a257ec0cc1 build warnings #2748
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-28 15:36:54 -08:00
Nikolaj Bjorner c36d9f7b3e fix #2741
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-26 19:45:34 -08:00
Nikolaj Bjorner 84025d5c11 add rewrites for moduli as exercised in example from #2319
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-24 19:02:28 -08:00
Nikolaj Bjorner 29e1fb67d2 fix #2720, unsound preprocessing in elim_uncnstr_tactic where datatype properties of eliminated subterms is forgotten
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-18 13:34:45 -08:00
Nikolaj Bjorner 1a9dfc5e80 inherit weights
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-14 09:32:55 -08:00
Nikolaj Bjorner 5f90e72d85 ensure generation is increased #2667
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-13 19:18:54 -08:00
Nikolaj Bjorner 12819640b7 fix E instantiation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-11 17:10:47 -08:00
Nikolaj Bjorner 74cfcc4730 clang warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-11 07:19:20 -08:00
Nikolaj Bjorner 20598e3bd2 address clang warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-11 07:16:46 -08:00
Nikolaj Bjorner 779183da06 fixing smtfd
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-10 18:23:32 -08:00
Nikolaj Bjorner 4fabaf95aa remove deprecated and bind1st and unused warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-08 13:26:50 -08:00
Nikolaj Bjorner 1e0c1cefd6 add definitions for under-specified cases of arithmetic operators #2663 #2676 #2679
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-06 18:24:22 +01:00
Nikolaj Bjorner a78f899225 expand deep stores by lambdas to avoid expanding select/store axioms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-03 10:29:10 +01:00
Nikolaj Bjorner 16d4ccd396 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-31 10:06:09 -07:00
Nikolaj Bjorner 8125fb134f na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-23 20:19:06 -07:00
Nikolaj Bjorner e5504247e9 use propagation filter
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-20 16:00:20 -07:00
Nikolaj Bjorner 11736f078e ensure statistics survive cancelation in tactics, fix propagation for smtfd
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-18 19:22:46 -07:00
Nikolaj Bjorner 203ba12abc moving to context reset model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-18 19:22:46 -07:00
Nikolaj Bjorner ca498e20d1 move value factories to model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-16 19:48:35 -07:00
Nikolaj Bjorner ed149ea449 working on core focused refinement loop
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-15 15:52:41 -07:00
Nikolaj Bjorner cc26d49060 preparations for dealing with #2596
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-12 17:44:52 -07:00
Nikolaj Bjorner ce06cd0d7a replace iterators by for, looking at @2596
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-12 10:08:30 -07:00
Nikolaj Bjorner 66b38eac9f add back dotnet after adding ;*.cs to path
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-07 20:07:55 -07:00
Nikolaj Bjorner feff1f7f96 fix #2609
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-02 14:40:11 -07:00
Nikolaj Bjorner 18fe28c0f0 fix perf bug exposed by Shelly Grossman
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-25 20:01:06 -07:00
Nikolaj Bjorner a44cf7a9ba unused variable warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-22 10:15:20 -07:00
Nikolaj Bjorner b506e45845 align name of tactic in report
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-20 08:57:21 -07:00
Nikolaj Bjorner 4b51fe466d fix #2562
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-17 11:49:11 -04:00
Nikolaj Bjorner 0c972b8bee tidy
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-13 15:45:10 -04:00
Nikolaj Bjorner da805f6016 address perf bottleneck exposed by #2552
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-13 18:31:52 +02:00
Nikolaj Bjorner 63840806d8 fix #2546, retrieve model in optsmt lex before iterating
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-10 11:19:59 +02:00
Nikolaj Bjorner 78a1f53ac9 fix #2544
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-09 18:07:03 +02:00
Nikolaj Bjorner b1cdb3e451 add mbqi to smtfd. For Nuno, of course
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-09 11:28:25 +02:00
Nikolaj Bjorner c22a17f430 smtfd
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-08 18:14:28 +02:00
Nikolaj Bjorner d3da161803 smtfd
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-08 12:26:37 +03:00
Nikolaj Bjorner 5ba4d8d0f1 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-07 18:22:28 +03:00
Arie Gurfinkel d44081db7d fix clang compilation errors 2019-09-07 18:21:54 +03:00
Nikolaj Bjorner ff3cff06b2 deal with ite
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-07 17:53:01 +03:00
Nikolaj Bjorner c476c4a86a smtfd solver that uses lazy iteration around fd to produce theory lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-07 17:48:33 +03:00
Nikolaj Bjorner 000e485794 add array selects to basic ackerman reduction improves performance significantly for #2525 as it now uses the SAT solver core instead of SMT core
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-01 12:17:19 -07:00
Nikolaj Bjorner 2e6908bd9e fix #2509, fix issue with model inheritance exposed by #2483
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-08-27 10:48:22 -03:00
Nikolaj Bjorner ce84e0f240 remove strategic solver header file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-08-09 15:56:04 -07:00
Nikolaj Bjorner fc41a61b6e expose strategic solver factory prototype at level of solver module
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-08-09 15:52:12 -07:00
Nikolaj Bjorner bbfac99b22 fix #2469
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-08-06 13:52:42 -07:00
Nikolaj Bjorner 0af249d651 'na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-08-06 13:44:12 -07:00
Nikolaj Bjorner d7ac8dbc7d fix #2458
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-08-03 08:36:25 -07:00
Nikolaj Bjorner 9474833c98 fix #2391
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-07-11 09:26:22 +01:00
Nikolaj Bjorner adb91ae93c compile 0 case regardless of numerical value
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-07-11 09:07:18 +01:00
Nikolaj Bjorner 8d9a631c5d try to copy artifacts
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-07-10 16:21:14 +01:00
Nikolaj Bjorner 5de35d46eb fix #2390
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-07-10 08:55:00 +01:00
Nikolaj Bjorner c744b19bce resort to only supporting ground non-linear division for nra_tactic/nra_probe #2372 #2376
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-07-04 07:08:47 +07:00
Christoph M. Wintersteiger 77827498bd
Added checkpoints to lia2card tactic. 2019-07-03 14:32:27 +01:00
Nikolaj Bjorner f3b79087ee add default tactic as option to overwrite the behavior of strategic solver factory
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-17 09:27:10 -07:00
Nikolaj Bjorner d17248821a include chronological backtracking, two-phase sat, xor inprocessing, probsat, ddfw
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-13 08:45:21 -07:00
Nikolaj Bjorner e0d8cefde4 remove cooperate
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-12 20:15:46 -07:00
Nikolaj Bjorner 1ff08c45ce model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-12 19:36:25 -07:00
Lev Nachmanson 14ff768a63 limit the size of bit vectors
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2019-06-11 16:40:54 -07:00
Nikolaj Bjorner 7f74382863 capture i by value
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-05 09:06:18 +01:00
Nikolaj Bjorner 27971e3f68 exception behavior in C++11 threads?
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-05 09:06:17 +01:00
Nikolaj Bjorner 9f3089b098 try with std::vector and ptr_vectors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-05 09:06:17 +01:00
Nikolaj Bjorner e4e60bff26 include thread in tactical
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-05 09:06:17 +01:00
Nikolaj Bjorner 1f84381c4c pfor
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-05 09:06:17 +01:00
Nikolaj Bjorner 9262908ebb mux
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-05 09:06:17 +01:00
Bruce Mitchener 960b8566f5 Fix some unused variable warnings. 2019-06-01 15:45:17 +07:00
Nikolaj Bjorner 8893913c98 remove internal referenes to set_activity
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-30 16:06:05 -07:00
Nikolaj Bjorner f128398bf9 add clause proof module, small improvements to bapa
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-30 15:57:19 -07:00
Nikolaj Bjorner f99384c6a3 fix nightly regression from solve-eqs context solver addition
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-27 04:17:43 -07:00
Nikolaj Bjorner b2845d888e add get_lstring per #2286
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-22 18:32:57 +04:00
Nikolaj Bjorner 335040a4ff track dependencies in context solve
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-16 23:06:21 +03:00
Nikolaj Bjorner 483a973b37 add pre-processing to default tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-16 20:20:59 +03:00
Nikolaj Bjorner 3e53b6f2db na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-16 19:21:00 +03:00
Nikolaj Bjorner f79dccccfe fix #2238
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-08 10:15:57 +02:00
Nikolaj Bjorner 9cb1a0f094 fix #2253
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-27 14:24:53 -07:00
Nikolaj Bjorner fa88bdb075 fix #2251 thanks to Clark
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-27 09:44:18 -07:00
Nikolaj Bjorner d4410d0872 address compilation warnings of unused parameters, add shorthands to set parameters on Optimize
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-16 14:32:48 -07:00
Nikolaj Bjorner 5fdf5b67a4 remove not
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-01 12:17:49 -07:00
Nikolaj Bjorner 3afe081f62 fixup compiled patterns
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-29 11:42:40 -07:00
Nikolaj Bjorner 1c694fd42f sr
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 16:11:16 -07:00
Nikolaj Bjorner 7a6823aef1 add special relations tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 10:07:50 -07:00
Nikolaj Bjorner bce1ee6d39 new files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 09:21:34 -07:00
Nikolaj Bjorner 3548057bd1 fix detection of arithmetic operations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-02-20 14:00:05 +01:00
Nikolaj Bjorner cc216f8cc3 fix regressions breaking build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-02-19 21:24:44 +01:00
Nikolaj Bjorner c022d47d60 Merge branch 'master' of https://github.com/z3prover/z3 2019-02-19 18:17:17 +01:00
Nikolaj Bjorner caa15ea04d enable cardinality constraints in nla2bv
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-02-19 18:17:07 +01:00
Nuno Lopes 61272fdc0c remove a few more inc/dec refs 2019-02-19 13:36:39 +00:00
Nuno Lopes 8e4ef19f45 fix debug build 2019-02-19 10:54:41 +00:00
Nuno Lopes 8c2584bcf7 eliminate a few ref incs/decs plus remove unused variable 2019-02-19 10:52:12 +00:00
Nikolaj Bjorner 7f51cc7931 fix #2140
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-02-16 09:54:05 -08:00
Nikolaj Bjorner 89bf2d4368 add API for setting variable activity
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-02-15 12:05:24 -08:00
Nikolaj Bjorner d04e72819a abstract solver API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-02-06 19:42:01 +01:00
Nikolaj Bjorner 8d20310758 adding trail/levels
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-01-29 14:45:51 -08:00
Nikolaj Bjorner 498864c582 adding dump facility for cancelation #2095, easing dimacs in/out
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-01-24 12:21:23 -08:00
Nikolaj Bjorner 9c07167ff8 add new pyg file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-01-23 16:06:44 -08:00
Nikolaj Bjorner 8e5c1fcfd1 make context_solve configurable and exposed as top-level tactic parameter
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-01-23 16:06:25 -08:00
Nikolaj Bjorner 0b84c60886 fix another bug uncovered by Dunlop, prepare grounds for equality solving within NNFs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-01-14 01:25:25 -08:00
Nikolaj Bjorner dc5e4ca1c5 fix drat generation in asymmetric branch simplification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-01-12 13:19:09 -08:00
Nikolaj Bjorner e4d6aa07dc use vectors instead of hash-tables in dimacs serialization to avoid hash-table contention
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-01-12 11:05:00 -08:00
Nikolaj Bjorner 9379ec3a68 add back pre_visit, which does get called from rewriter_def/rewriter.h
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-12-21 18:52:09 -08:00
Nuno Lopes 3104291b80 spread a few anonymous namespaces and remove some m_imp idioms 2018-12-21 23:02:15 +00:00
Nuno Lopes 178e5b31e8 spread a few anonymous namespaces and remove some m_imp idioms 2018-12-21 22:49:06 +00:00
Nuno Lopes 52f960a7c8 elim_uncnstr_tactic: remove m_imp idiom to reduce mem alloc 2018-12-21 19:48:18 +00:00
Nikolaj Bjorner 58b9fc437d add sin/cos axiom regardless of whether sin/cos can be eliminated. fix #2037
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-12-13 16:09:08 -06:00
Bruce Mitchener f40eed99f7 Remove unused nl_purify_tactic.cpp
This file wasn't built and won't compile as the header for it
is missing.

Most of the related code was removed in df6b1a707e.
2018-12-02 23:49:49 +07:00
Bruce Mitchener 3149d7f7a4 Fix typos. 2018-11-30 22:19:30 +07:00
Bruce Mitchener b83d6d77c9 Use nullptr rather than 0/NULL. 2018-11-28 14:57:01 +07:00
Bruce Mitchener e570940662 Prefer using empty rather than size comparisons. 2018-11-27 21:42:04 +07:00
Nikolaj Bjorner 0c1408b30e fixing #1948
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-11-21 13:48:48 -08:00
Nikolaj Bjorner 6ef2557e2a investigate #1946
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-11-18 09:34:33 -08:00
Nikolaj Bjorner b02c698284 align variable names with dimacs input
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-11-08 16:52:10 -08:00
Nikolaj Bjorner cf4bf7b591 more consistent use of parallel mode when enabled, takes care of example test from #1898 that didn't trigger parallel mode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-11-02 18:44:53 -05:00
Florian Pigorsch 326bf401b9 Fix some spelling errors (mostly in comments). 2018-10-20 17:07:41 +02:00
Michał Janiszewski cfd0486582 Catch exceptions by const-reference
Exceptions caught by value incur needless cost in C++, most of them can
be caught by const-reference, especially as nearly none are actually
used. This could allow compiler generate a slightly more efficient code.
2018-10-16 19:16:07 +02:00
Bruce Mitchener 373b691709 Use 'override' where possible. 2018-10-02 10:26:38 +07:00
Bruce Mitchener cdfc19a885 Use nullptr. 2018-10-02 09:11:19 +07:00
Nikolaj Bjorner 96d3b98a44 fix #1783, wronge clausification of negated pb inequalities. Signs were ignored
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-08-11 13:33:09 -07:00
Nikolaj Bjorner 8b4e1c1209 fix #1793
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-08-06 18:13:26 -07:00
Nikolaj Bjorner 60110bb289 reduce dependencies in CMakeLists file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-08-05 10:34:13 -07:00
Nikolaj Bjorner 6400da63ab missing file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-08-05 10:10:52 -07:00
Nikolaj Bjorner 74efe253a0 fix header files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-08-05 10:09:23 -07:00
Nikolaj Bjorner e041ebbe80 bmc improvements, move fd_solver to self-contained directory
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-08-05 10:00:49 -07:00
Nikolaj Bjorner 49141c7813 remove left-over break assert
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-16 08:33:41 +01:00
Nikolaj Bjorner d00ffdda82 strengthen filter for specialized tactic conditions, add flag to disable hnf to lp_params
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-15 22:35:47 -07:00
Nikolaj Bjorner fc4627a24f force the new arithmetic solver for QF_LIA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-09 16:33:48 -07:00
Nuno Lopes d2b77b1170 remove dead code 2018-07-07 19:07:13 +01:00
Nikolaj Bjorner c4e4139ab6 fix clause check in goal2dimacs, redo rewriting of mod to avoid deeply nested mod
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-06 21:33:53 -07:00
Nikolaj Bjorner f96133f4d9 fix #1729
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-05 07:17:08 -07:00
Nikolaj Bjorner a74f2ed9dc Merge branch 'master' of https://github.com/z3prover/z3 2018-07-04 16:05:02 -07:00
Nikolaj Bjorner 1eb8ccad59 overhaul of error messages. Add warning in dimacs conversion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-04 16:04:37 -07:00
Nuno Lopes 9826835e15 invertible: fix bug with numerals, e.g. (bvmull x y #x32) 2018-07-04 16:50:37 +01:00
Nuno Lopes 53e582ba22 invertible_tactic: add support for a few more operations that produce full domain 2018-07-04 11:59:01 +01:00
Nikolaj Bjorner c7e1d59b19 Merge branch 'master' of https://github.com/z3prover/z3 into lev 2018-07-03 13:42:50 -07:00
Nuno Lopes 72f60f5bfc remove copy in generic_model_converter 2018-07-03 17:51:40 +01:00
Nuno Lopes cd482c683e invertible tactic: fix bugs with shift 2018-07-03 17:18:00 +01:00
Nikolaj Bjorner 03ed33ac02 merge with master
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-02 15:31:26 -07:00
Nuno Lopes a73d030321 invertible_tactic: add partial support for shifts 2018-07-02 18:29:34 +01:00
Nuno Lopes cef17c22a1 remove some allocs from exceptions 2018-07-02 17:08:02 +01:00
Nikolaj Bjorner 05738702d6 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-02 08:10:47 -07:00
Nuno Lopes 8791f61aa7 reduce mem allocation in tactic API 2018-07-02 13:41:44 +01:00
Nikolaj Bjorner 13413d0529 update for int return value
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-01 15:08:16 -07:00
Nikolaj Bjorner fad1e611aa build warnings, updates to reduce-invertible, change is_algebraic tester to use int return type
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-01 12:34:55 -07:00
Nikolaj Bjorner 5a2a8d7d5c
Merge pull request #1715 from levnach/master
merge lar_solver/int_solver
2018-07-01 12:20:02 -07:00
Nikolaj Bjorner b8b70c53fa update invertible tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-01 09:17:20 -07:00
Nikolaj Bjorner e027622886 updates to invertible tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-30 21:46:29 -07:00
Nikolaj Bjorner 76417fa3b6 fleshing out reduce-invertible tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-30 17:06:56 -07:00
Nikolaj Bjorner ac014bef94 outline of invertible reduction
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-30 13:46:29 -07:00
Nuno Lopes 5de6628a5d remove spurious copies and inc_refs around ref_vector 2018-06-28 10:31:38 +01:00
Nikolaj Bjorner 7844476a7d fixes to term-graph, add proof-checker routines for PR_BIND, remove orphaned file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-27 17:04:47 -07:00
Lev Nachmanson 9ba4026bc6 avoid going creating hnf_cuts if all involved vars have integral values
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add explanations to hnf cuts

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

nits and virtual methods (#68)

* local

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

* virtual method in bound propagator

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

cleanup from std::cout

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

handle the case when the number of terms is greater than the number of variables in hnf

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

method name's fix

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

restore hnf_cutter to work with m_row_count <= m_column_count

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

tune addition of rational numbers (#70)

* log quantifiers only if present

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

* merge and fix some warnings

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

* set new arith as default for LIA

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

* local

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

* virtual method in bound propagator

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

* prepare for mixed integer-real

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

* fix default tactic usage

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

give shorter explanations, call hnf only when have a not integral var

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

overhaul of mpq (#71)

* log quantifiers only if present

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

* merge and fix some warnings

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

* set new arith as default for LIA

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

* local

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

* virtual method in bound propagator

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

* prepare for mixed integer-real

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

* fix default tactic usage

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

* overhaul of mpz/mpq

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

* disabled temporary setting

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

* remove prints

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

fix for 32 bit build (#72)

* log quantifiers only if present

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

* merge and fix some warnings

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

* set new arith as default for LIA

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

* local

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

* virtual method in bound propagator

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

* prepare for mixed integer-real

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

* fix default tactic usage

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

* overhaul of mpz/mpq

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

* disabled temporary setting

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

* remove prints

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

* customize for 64 bit

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

yes (#74)

* log quantifiers only if present

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

* merge and fix some warnings

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

* set new arith as default for LIA

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

* local

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

* virtual method in bound propagator

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

* prepare for mixed integer-real

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

* fix default tactic usage

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

* overhaul of mpz/mpq

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

* disabled temporary setting

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

* remove prints

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

* customize for 64 bit

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

* customize for 64 bit

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

* more refactor

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

fix the merge

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fixes in maximize_term untested

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix compilation (#75)

* log quantifiers only if present

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

* merge and fix some warnings

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

* set new arith as default for LIA

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

* local

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

* virtual method in bound propagator

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

* prepare for mixed integer-real

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

* fix default tactic usage

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

* overhaul of mpz/mpq

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

* disabled temporary setting

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

* remove prints

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

* customize for 64 bit

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

* customize for 64 bit

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

* more refactor

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

* merge

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

* relax check

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

* change for gcc

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

* merge

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-27 12:16:58 -07:00
Lev Nachmanson 6202b2f2e4 add cancellations
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

syntax errors

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

use std::vector instead of vector in cut_solver temporarily

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix in is_upper_bound, is_lower_bound

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add bound() for polynomial, needs more testing

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on resolve

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

implement resolve()

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

implement improves()

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

replace low_bound by lower_bound

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

better printing in cut_solver.h

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add value vector to cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on bound propagaion for cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

bound propagation for integer inequalites

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

bound propagation for integer inequalites

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

bound propagattions on integers

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

adding m_explanation field to cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

simplify bound propagation in cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

calculate conflict explanation

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

change m_explanation type to a set

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

making cut_solver a member of int_solver, missing push/pop support

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

Nikolaj's comments

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

Nikolaj's comments

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

return explanations from cut_solver and hook up push/pop

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

hook up push/pop

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

using resize of std::vector

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

it is a big squashed commit

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

rename hpp to cpp

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fixes in push/pop of cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

return simple inequalities a part of a conflict

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on propagation and the main loop

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add file

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

init m_v[j], the var values only when j is fixed

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

handle decide in cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

start on resolve_conflict

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

start on resolve_conflict

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

remove cut_solver_def.h

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

in the middle

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

change signature of resolve

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix the domain of the decided var

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on tightening of ineqs

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on tight ineqs

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on tightening

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on tightening

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

resolve conflict

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix in usage of resolve()

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on conflict resolution

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

cut_solver is not a template

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

represent var_info as a class, not a struct

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

make literal a class

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

better resolve_conflict scheme, and switch to *constraints in literals

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

debug conflict resolution in cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

switch to vector

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

remove nondetermenistic behavior from cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

debug resolve conflict

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix backjump

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix backjump

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix backjump

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix backjump

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

dumb explanation

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

get rid of a parameter

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add lemmas origins

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

use lemma_origins to provide correct explanations

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

use lemma_origins to provide correct explanations

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

store lemmas in a separate vector

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

use std::unordered_set for m_dependent_constraints

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

use std::unordered_set for m_dependent_constraints

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix bugs with lemmas

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

finding conflicting cores

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

switch from changed variables to active_set

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

less active constraints

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

work on cut_solver.h

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

propagate simple constraing immediately

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

propagate simple constraints immediately

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fixing bugs with active set

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

remove const_cast

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

towards unbounded variables

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

toward unbounded variables

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

toward unbounded variables

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

make lemmas_origins a set

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

use correct hash and equal in m_lemma_origins

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add testing code

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add testing code

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

debug

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

debug unlimited vars

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

take in Nikolaj's comments and improvements

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

address the comments

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

handle unlimited vars in check_inconsistent

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

debug

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

detect trivial polynomials in resolve

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

Nikolaj's changes

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

simplify handling of m_global_bound_var

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

decide on m_global_bound_var if it is not fixed

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

simplify m_global_bound_var

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

remove m_global_bound_var, simplify the indexing of var_infos of cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

do not run cut_solver with vars without any bound

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

small changes

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add cancellation in cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

do not pop lemmas during a cut_solver run

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

treating cut_solver as an heurisitic

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

prepare for cut_solver returning undef

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

simplify work with active_set in cut_solver, add stats

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

simplify var_info literals

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix a bug in fill_conflict_explanation

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix a bug in the conflict explanation

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add timeout to validate_* in theory_lra.cpp

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

simplify cut_solver, no special treatment for simple constraints

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

cleanup the cancel story

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

cleanup cancelling

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix a bug in push/pop of cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

extract a method in int_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

some progress with the new scheme

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

add testing code

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fixes in test and in literal creation

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix a bug in bound propagation in cut_solver.h

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

simplify cut_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

provide valid conflict explanation

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

use a lazy push in stacked_map

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

use a lazy push in stacked_map

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

optimize stack operations on var_info's domains

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fix a bug in tightening

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

use the standard tactics from qflia_tactic

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

spread the var domain stack over literals

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

spread the var domain stack over literals

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

avoid cycling in cut_solver.h and fixes in push/pop

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

fixes after rebase

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-27 11:35:11 -07:00
Nuno Lopes 6c64e138b0 ufbv_rewriter_tactic: remove unneeded imp class 2018-06-26 18:05:14 +01:00
Nikolaj Bjorner 520ce9a5ee integrate lambda expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-26 07:23:04 -07:00
Nikolaj Bjorner 61c25fdc8e Merge branch 'master' of https://github.com/z3prover/z3 2018-06-23 21:57:19 -07:00
Nikolaj Bjorner e187023304 fix #1699
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-23 21:57:10 -07:00
rainoftime fc8b1d9a7d Refine default_tactic: if the constraint is an SAT instance and proof is not enabled, then use the qffd tactic 2018-06-22 16:46:47 +08:00
Nikolaj Bjorner 8969a7035c
Merge pull request #1693 from NikolajBjorner/master
fix #1675
2018-06-20 17:36:24 -07:00
Nikolaj Bjorner 19e2f8c9d5 fix #1694
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-20 17:35:41 -07:00
Nikolaj Bjorner 335d672bf1 fix #1675, regression in core processing in maxres
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-19 23:23:19 -07:00
Nikolaj Bjorner cd890bd993 fix bug in order for model conversion in normalize_bounds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 09:34:53 -07:00
Nikolaj Bjorner 450da5ea0c moving model_evaluator to model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 17:40:54 -07:00
Nikolaj Bjorner 74621e0b7d first eufi example running
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner 1920450f98 throttle ite-blasting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel 38a45f5482 Fix typo in comment 2018-06-14 16:08:49 -07:00
Nikolaj Bjorner ff0f257102 remove iff
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:48 -07:00
Nikolaj Bjorner 753b9dd734 fix #1650 fix #1648
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-25 08:56:13 -07:00
Nikolaj Bjorner f5775f265a fix python build script dependencies
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-23 09:21:33 -07:00
Nikolaj Bjorner 0708ecb543 dealing with compilers that don't take typename in non-template classes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-23 09:11:33 -07:00
Nikolaj Bjorner 50c93d1ad4 merge with 4.7.1
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-22 17:10:36 -07:00
Daniel Schemmel f02d031d11
As of GCC8, the throw by value, catch by reference idiom is enforced via -Wcatch-value 2018-05-19 04:39:36 +02:00
Daniel Schemmel 5134c16833
NULL-initialize pointers to help GCC static analyzer Fixes: variable may be used uninitialized 2018-05-19 03:45:05 +02:00
Nikolaj Bjorner 96914d8578 update model conversion
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-03 11:46:26 -07:00
Nikolaj Bjorner 1fc1249bef create empty model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-02 11:28:13 -07:00
Nikolaj Bjorner fa93bc419d fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-01 10:53:36 -07:00
Nikolaj Bjorner 454d20d23e fix build errors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-01 10:06:54 -07:00
Nikolaj Bjorner e4d24fd2c3 fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-01 09:39:19 -07:00
Nikolaj Bjorner f525f43e43 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-30 09:30:43 -07:00
Nikolaj Bjorner 859c68c2ac merge with opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-30 08:27:54 -07:00
Christoph M. Wintersteiger e13f3d92af Updated CMakelists.txt 2018-04-24 15:01:05 +01:00
Christoph M. Wintersteiger a1d870f19f Added tactic for QF_FPLRA 2018-04-24 12:43:11 +01:00
Nikolaj Bjorner a37303a045 move parallel-tactic to solver level
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-16 08:21:21 -07:00
Nikolaj Bjorner cd35caff52 clean up parallel tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-16 03:18:57 -07:00
Nikolaj Bjorner 012a96fd81 adding smt parallel solving
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-15 16:16:48 -07:00
Nikolaj Bjorner 252fb4af6e add backtracking conquer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-14 15:34:33 -07:00
Nikolaj Bjorner d58a9d2528 fix accounting for branches
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-13 22:04:14 -07:00
Nikolaj Bjorner c5a30285a8 add filter cubes parameter
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-13 17:03:49 -07:00
Nikolaj Bjorner a3e651156a parallel params
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-13 16:23:35 -07:00
Nikolaj Bjorner d57bca8f8c fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-10 10:43:55 +08:00
Nikolaj Bjorner f2dfc0dc24 including all touched tautology literals each round
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-08 15:46:21 -07:00
Christoph M. Wintersteiger 2abc759d0e Merge branch 'master' of https://github.com/Z3Prover/z3 2018-04-08 21:58:39 +01:00
Christoph M. Wintersteiger b373bf4252 Bugfixes for fpa2bv_converter. Fixes #1564. 2018-04-08 21:51:27 +01:00
Nikolaj Bjorner 2dc92e2b94 merge with pull request #1557
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-07 17:22:49 -07:00