3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 00:55:31 +00:00
Commit graph

18138 commits

Author SHA1 Message Date
Jakob Rath
4a2379c23d Add unit test for refinement loop in bench6 2022-12-12 17:48:23 +01:00
Jakob Rath
eda6534453 more readable intervals 2022-12-12 16:41:18 +01:00
Jakob Rath
9f1f949d9d tests 2022-12-12 14:51:18 +01:00
Jakob Rath
917e1b6a4c When adding clauses, prioritize bool-propagation over evaluation
See test_band1 and clause:  v2 == v0 & v1  -->  v2 <= 0
2022-12-12 14:48:13 +01:00
Jakob Rath
587e77648a Keep value_propagate for now 2022-12-12 13:57:30 +01:00
Jakob Rath
759d8f2a94 Fix watching of boolean literals 2022-12-12 13:50:15 +01:00
Jakob Rath
1eb8eb560b test_ineq2 2022-12-12 13:37:28 +01:00
Jakob Rath
b1271ac7fb Check for missed boolean propagations 2022-12-12 11:52:45 +01:00
Jakob Rath
9feefa4c0a Remove clause methods that should not be used 2022-12-12 11:47:27 +01:00
Nikolaj Bjorner
5a27ae6b53 disable tangent lemma, which appears to be counter-productive
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-11 12:56:21 -08:00
Nikolaj Bjorner
d092523733 bugfixes to try_factor_equality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-10 10:51:21 -08:00
Nikolaj Bjorner
c27bd0d650 added try_factor
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-09 14:58:37 -08:00
Nikolaj Bjorner
6e886114f9 add parity4
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-09 09:56:47 -08:00
Nikolaj Bjorner
707577644f assignment -> assignment_t for build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-09 09:33:24 -08:00
Nikolaj Bjorner
57f2d72fe2 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-09 09:26:40 -08:00
Jakob Rath
8d13446537 Solve boolean skeleton first 2022-12-09 17:22:51 +01:00
Nikolaj Bjorner
e716e507d9 investigate bench4
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-09 08:14:42 -08:00
Nikolaj Bjorner
a6b49d8b4e provide access to saturation for selected constraints 2022-12-08 19:17:35 -08:00
Nikolaj Bjorner
33902c7c9e fix parity propagation code, add tail-spin unit tests. The unit tests diverge because conflict resolution removes conflicting literals from the conflict clause before the decision variable gets processed. We have to change how conflict resolution is processed for such conflict clauses
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-08 09:57:38 -08:00
Jakob Rath
3c8718615a yes, no need for plugins to be mutually exclusive 2022-12-08 16:19:11 +01:00
Jakob Rath
5ad961029d Rename revert_decision -> revert_pvar, and enable it.
Also rename resolve_with_assignment to resolve_evaluated
2022-12-08 16:19:11 +01:00
Jakob Rath
676aa81c5a Fix test_ineq2 2022-12-08 16:19:11 +01:00
Jakob Rath
a81e05e660 We shouldn't assume that v is assigned
Happens if it is a viable conflict for v
2022-12-08 16:19:11 +01:00
Jakob Rath
3fe8f4a0cd minor issue about narrow with first=true 2022-12-08 16:19:11 +01:00
Jakob Rath
85818612fb val_pp 2022-12-08 16:19:11 +01:00
Nikolaj Bjorner
28fb67219e fix new (and unused) function for extracting min parity of a polynomial
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-08 07:13:31 -08:00
Nikolaj Bjorner
acbd60799d add placeholder for factor equality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-07 20:12:19 -08:00
Nikolaj Bjorner
437f826e8b sketch parity generalization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-07 20:04:58 -08:00
Jakob Rath
55d691e16e enable 2022-12-07 18:45:00 +01:00
Jakob Rath
45e94ae7dd insert_eval 2022-12-07 18:41:42 +01:00
Clemens Eisenhofer
592791ba34 continue instead of return 2022-12-07 16:55:30 +01:00
Clemens Eisenhofer
c088eb4a26 Readded variable evaluation as fallback for variable elimination 2022-12-07 16:54:39 +01:00
Clemens Eisenhofer
47cb83f578 Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat 2022-12-07 16:35:42 +01:00
Jakob Rath
93ee9c7f8e compile 2022-12-07 16:16:07 +01:00
Jakob Rath
a4adb63662 unit test updates 2022-12-07 16:15:28 +01:00
Jakob Rath
71acba20e2 Assertion was too strong (via test_ineq1) 2022-12-07 16:13:24 +01:00
Jakob Rath
05a1f4d096 Skip try_parity for x==y and y==x 2022-12-07 16:09:10 +01:00
Jakob Rath
85715eb164 Update use of insert_eval and lemma scores to support propagation 2022-12-07 16:08:24 +01:00
Jakob Rath
fca4f18194 p 2022-12-07 12:47:30 +01:00
Nikolaj Bjorner
754cb540d0 disable new code paths for commit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-07 02:23:43 -08:00
Nikolaj Bjorner
fdba85e39f trigger also parity constraints in linear case
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-06 05:18:50 -08:00
Nikolaj Bjorner
ef811a3dd8 add propagation rule for strict inequality to force univariate polynomials
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-06 04:56:42 -08:00
Nikolaj Bjorner
317edb2b03 add parity propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-05 10:22:18 -08:00
Nikolaj Bjorner
f2c228f160 update function that propagates bounds on x*y = 0 to be more comprehensive
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-05 01:19:26 -08:00
Nikolaj Bjorner
1d440ac871 try adding unit propagation / distinguish these in saturation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-04 14:22:34 -08:00
Nikolaj Bjorner
066b7d2d71 add review comments based on debugging
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-04 03:49:17 -08:00
Nikolaj Bjorner
db18c7206a debugging
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-03 17:09:36 -08:00
Nikolaj Bjorner
0a5b03194c retire omega and use overflow detection including literals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-03 16:54:07 -08:00
Nikolaj Bjorner
5b8dcfb801 wip - adding saturation/propagations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-03 15:38:01 -08:00
Nikolaj Bjorner
0288704a59 add TODO marker in saturation for overflow rule
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-03 09:07:24 -08:00