3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-05 15:33:59 +00:00
Commit graph

2465 commits

Author SHA1 Message Date
Jakob Rath
06cc15d1cc refinement loop output 2023-02-09 16:28:52 +01:00
Jakob Rath
a0f5386bdd Use parity helper functions 2023-02-08 15:11:39 +01:00
Jakob Rath
bf03886a87 elem 2023-02-07 09:57:32 +01:00
Jakob Rath
984e98c88f Avoid duplicates 2023-02-06 17:52:52 +01:00
Jakob Rath
a37536e0ae clarify unsat_core 2023-02-06 17:52:52 +01:00
Jakob Rath
c79a16db2a Fix dependency tracking for input boolean conflicts 2023-02-06 16:28:41 +01:00
Jakob Rath
d7797a53df temporary fix 2023-02-06 11:34:28 +01:00
Jakob Rath
8774952aeb Merge remote-tracking branch 'origin/master' into polysat 2023-02-06 10:50:05 +01:00
Nikolaj Bjorner
b45f42133d updates to try_div_monotonicity
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-02-04 15:55:14 -08:00
Jakob Rath
d69155b9e9
Shared features from polysat branch (#6567)
* Allow setting default debug action

* Fix dlist and add iterator

* Add var_queue iterator

* Add some helpers

* rational: machine_div2k and pseudo_inverse

* Basic support for non-copyable types in map

* tbv helpers

* pdd updates

* Remove duplicate functions

gcc doesn't like having both versions
2023-02-03 13:08:47 -08:00
Jakob Rath
539a4e4eae less eval 2023-02-03 17:43:07 +01:00
Jakob Rath
1a733a3a50 compute polysat unsat core 2023-02-03 17:37:09 +01:00
Jakob Rath
579275a17d cleanup 2023-02-03 16:33:02 +01:00
Jakob Rath
4b1ec583ec Remove outdated assertion 2023-02-03 16:07:58 +01:00
Jakob Rath
63416dbcd7 fix 2023-02-03 15:59:26 +01:00
Jakob Rath
6365e322f3 Try to propagate boolean decisions after backjumping 2023-02-03 15:56:19 +01:00
Jakob Rath
5678c1c592 We need more clause names 2023-02-03 15:54:56 +01:00
Jakob Rath
bdf20f513b debug 2023-02-03 11:18:11 +01:00
Clemens Eisenhofer
ae41f82939 Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat 2023-02-03 07:15:58 +01:00
Clemens Eisenhofer
c042505c34 Another monotonicity lemma 2023-02-03 07:15:10 +01:00
Nikolaj Bjorner
741634b703 compiler warning fix
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-02-02 19:26:51 -08:00
Jakob Rath
2dc93116e5 cleanup pdecide 2023-02-02 13:28:28 +01:00
Jakob Rath
5589d3389d Drop assign_verify 2023-02-02 13:22:10 +01:00
Nikolaj Bjorner
682e868129 initialize field
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-02-01 10:18:14 -08:00
Nikolaj Bjorner
0f86a00229 use setter method to easier track updates to settings. 2023-02-01 10:18:14 -08:00
Jakob Rath
40519c70aa fix includes 2023-02-01 17:00:26 +01:00
Jakob Rath
53bbb49031 Restore mod_interval for fixplex 2023-02-01 16:34:25 +01:00
Jakob Rath
20b5455d08 Merge branch 'master' into polysat 2023-02-01 16:28:57 +01:00
Clemens Eisenhofer
4648c35a35 Missing file 2023-02-01 15:10:47 +01:00
Jakob Rath
fe164c843d Fix/simplify constraint_manager::watch 2023-02-01 15:02:56 +01:00
Jakob Rath
0d56edb65c Fix missing boolean propagation after boolean conflict
Usually in SAT solving, the conflict clause has at least two false literals at the max level (otherwise, the last literal would have been propagated at an earlier level).
But here we are adding clauses on demand; so after backtracking we may have the case that the conflict clause has exactly one undefined literal that must be propagated explicitly.
2023-02-01 15:02:56 +01:00
Clemens Eisenhofer
783bd60598 Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat 2023-02-01 11:28:15 +01:00
Clemens Eisenhofer
8db575ea3b Division monotonicity 2023-02-01 11:27:46 +01:00
Jakob Rath
975fb25221 Fix to bench15 bug was unsound 2023-02-01 11:17:29 +01:00
Jakob Rath
f0625b604a Promote assertions to release mode 2023-02-01 11:12:13 +01:00
Jakob Rath
576e0b70b2 stub for conflict::find_deps 2023-02-01 10:53:49 +01:00
Jakob Rath
1bb68a4fc1 track dependency of base-level conflict 2023-02-01 10:47:26 +01:00
Jakob Rath
3c822117d1 assert before deref 2023-02-01 10:41:02 +01:00
Jakob Rath
9314ad3808 minor changes to bounds propagation 2023-02-01 10:36:49 +01:00
Clemens Eisenhofer
63f7001117 Justify shift-premis in variable_elimination 2023-01-31 15:50:42 +01:00
Jakob Rath
9916a76543 try_eval constraints when adding clause
(fix assertion in bench15)
2023-01-31 15:15:51 +01:00
Nikolaj Bjorner
304b316314 move bounded division lemmas to nla solver/ nla_divisions. 2023-01-30 11:11:04 -08:00
Nikolaj Bjorner
03ca330926 fix division filter
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-30 08:23:17 -08:00
Nikolaj Bjorner
2c4a9c2f5c fix division filter
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-30 08:20:26 -08:00
Nikolaj Bjorner
8e37e2f913 handle non-linear division axioms, consolidate backtracking state in nla_core
this update enables new incremental linear axioms based on division terms.
It also consolidates some of the backtracking state in nla_core / emons to use stack traces instead of custom backtracking state.
2023-01-29 17:22:57 -08:00
Nikolaj Bjorner
8ea49eed8e convert reduce-args to a simplifier
- convert reduce-args to a simplifier. Currently exposed as reduce-args2 tactic until the old tactic code gets removed.
- bug fixes in model_reconstruction trail
  - allow multiple defs to be added with same pool of removed formulas
  - fix tracking of function symbols instead of expressions to filter replay
- add nla_divisions to track (cheap) divisibility lemmas.
-
2023-01-28 20:12:14 -08:00
Nikolaj Bjorner
fb1f4f3a2c add pragma
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-27 18:03:06 -08:00
Nikolaj Bjorner
91d6082f2f Move modular interval to interval directory 2023-01-27 17:55:36 -08:00
Clemens Eisenhofer
e8163b1769 Removed wrong assertion 2023-01-27 08:32:44 +01:00
Nikolaj Bjorner
ae24b73b19 bugfixes to incremental linearization for expanding power
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-26 21:19:45 -08:00