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

19183 commits

Author SHA1 Message Date
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
Nikolaj Bjorner
63c0f35978 update ml api
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 19:27:17 -08:00
Nikolaj Bjorner
d51d518f96 update ml api
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 19:24:45 -08:00
Nikolaj Bjorner
1289937d1a update ml api
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 19:19:41 -08:00
Nikolaj Bjorner
9a94a9aa6f update ml api
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 19:14:24 -08:00
Nikolaj Bjorner
17bae9b4c1 update ml api
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 19:09:37 -08:00
Nikolaj Bjorner
162fa3dc96 disambiguate overloaded with for Julia bindings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 19:06:20 -08:00
Nikolaj Bjorner
4c6d44f974 add ocaml signature for simplifier
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 18:58:18 -08:00
Nikolaj Bjorner
550619bfcf add API for creating and attaching simplifiers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 17:06:03 -08:00
Nikolaj Bjorner
ebc2cd572b fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 14:53:04 -08:00
Nikolaj Bjorner
88bf3c6e51 check if trail is empty to avoid collecting variables 2023-01-31 13:35:43 -08:00
Nikolaj Bjorner
8495be11f9 add shortcut filter to avoid traversing model reconstruction trail if there are no intersections with model 2023-01-31 13:34:52 -08:00
Nikolaj Bjorner
6d8d8f1971 fix release message
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 12:43:05 -08:00
Nikolaj Bjorner
e6f8fe359e remove empty file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 12:32:28 -08:00
Nikolaj Bjorner
d263b373ed update release notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 12:19:33 -08:00
Nikolaj Bjorner
971b9d4081 fix #6564
fixes to simplifier command front-end
2023-01-31 09:32:34 -08: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
238d604a10 android 16 byte alignment for stack allocated memory?
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-30 23:00:44 -08:00
Nikolaj Bjorner
5794d080b5 updated doc generation script
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-30 22:52:32 -08:00
Nikolaj Bjorner
6022c17131 Add simplification customization for SMTLIB2
Add the ability to customize incremental pre-processing simplification for the SMTLIB2 front-end. The main new capability is to use pre-processing tactics in incremental mode that were previously not available. The main new capabilities are
- solve-eqs
- reduce-args
- elim-unconstrained
There are several more. Documentation and exposed simplifiers are populated incrementally. The current set of supported simplifiers can be inspected by using z3 with the --simplifiers flag or referring to https://microsoft.github.io/z3guide/docs/strategies/simplifiers

Some pending features are:
- add the ability to update parameters to simplifiers similar to how tactics can be controlled using parameters.
- expose simplification solvers over the binary API.
2023-01-30 22:38:51 -08:00
Nikolaj Bjorner
dd0decfe5d create simplifier_solver wrapper to supply simplifier layer
move sat_smt_preprocess to solver
fix bugs in model_reconstruction_trail for dependency replay

This is a preparatory step for exposing pre-processing as tactics.
2023-01-30 16:12:25 -08: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
4ffe3fab05 fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-28 21:51:51 -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
246d6f7b77 fix #6561 2023-01-28 03:47:18 -08:00
Nikolaj Bjorner
83bd3d1e21 fix mk-project file for python build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-27 18:04:58 -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
Nikolaj Bjorner
0f3c56213e move dominator simplifier functionality to rewriter and simplifier, move bv_bounds simplifier functionality to simplifier 2023-01-27 17:11:48 -08:00
Clemens Eisenhofer
e8163b1769 Removed wrong assertion 2023-01-27 08:32:44 +01:00
Nikolaj Bjorner
d4ca7e5374 #6555 2023-01-26 21:39:52 -08: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
Nikolaj Bjorner
8be43ca68b reshuffle pre-conditions for powers 2023-01-25 13:51:19 -08:00
Nikolaj Bjorner
e41dd91893 add module for handling axioms for powers 2023-01-25 13:34:13 -08:00
Nikolaj Bjorner
9e2ec9d018 add stubs for proof production in elim_unconstrained 2023-01-25 13:32:51 -08:00
Nikolaj Bjorner
b3de7ac595 remove passing proof parameter to expr-inverter
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-25 11:15:09 -08:00
Jakob Rath
88d11c9381 skip always-true constraints 2023-01-25 12:34:01 +01:00
Jakob Rath
223f9fffed avoid unused variable warning 2023-01-25 12:32:04 +01:00
Jakob Rath
f91bb12f0e Add warning to not trust the unsat cores yet 2023-01-25 12:30:27 +01:00