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

1542 commits

Author SHA1 Message Date
Jamey Sharp
426306376f
CNF conversion refactoring (#5547)
* split sat2goal out of goal2sat

These two classes need different things out of the sat::solver class,
and separating them makes it easier to fiddle with their dependencies
independently.

I also fiddled with some headers to make it possible to include
sat_solver_core.h instead of sat_solver.h.

* limit solver_core methods to those needed by goal2sat

And switch sat2goal and sat_tactic over to relying on the derived
sat::solver class instead. There were no other uses of solver_core.

I'm hoping this makes it feasible to reuse goal2sat's CNF conversion
from places like the tseitin-cnf tactic, so they can be unified into a
single implementation.
2021-09-20 08:53:10 -07:00
Nikolaj Bjorner
3e6ff768a5 fix regression bug in mam reported by Aseem 2021-09-10 07:09:22 +02:00
Nikolaj Bjorner
e70f501932 handle potential extra nodes from q_solver 2021-09-09 09:17:11 +02:00
Nikolaj Bjorner
c4d0ded7b7 #5532 2021-09-08 06:19:49 +02:00
Nikolaj Bjorner
93415740b6 left over bugs #5532
disabling complete const rewriting (temporarily) as it can loop
2021-09-07 07:00:41 +02:00
Nikolaj Bjorner
be4df46f6f #5532 remove unsound rewrite rule that was recently added 2021-09-07 06:42:24 +02:00
Nikolaj Bjorner
72f6271d82 #5532
bugs in:
- rewriting of 0-ary expressions was incomplete
- sharing annotations when a node has two theories attached it is shared
- sharing of const of an array

Remove unreadable part of pretty printer for lp solver.
2021-09-06 19:14:03 +02:00
Nikolaj Bjorner
3764eb1959 #5532
ensure re-internalization for predicates that are replayed.
Theory internalization is currently not considered in depth.
2021-09-05 00:24:34 -07:00
Nikolaj Bjorner
3021da87cf #5532 2021-09-04 21:10:26 -07:00
Nikolaj Bjorner
9c91698201 #5532 2021-09-04 18:03:15 -07:00
Nikolaj Bjorner
051ede64e7 #5532 2021-09-04 09:48:46 -07:00
Nikolaj Bjorner
3de9162c7e handle null more gracefully 2021-09-04 09:42:45 -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
0ddbbe9bd2 #5532 2021-09-03 15:41:52 -07:00
Nikolaj Bjorner
5633af76cc #5532 2021-09-03 15:25:50 -07:00
Nikolaj Bjorner
a566c7307d #5532 2021-09-03 12:33:04 -07:00
Nikolaj Bjorner
87f5b9282f #5532 2021-09-03 12:20:23 -07:00
Nikolaj Bjorner
c4158ebc33 #5532 2021-09-03 12:02:57 -07:00
Nikolaj Bjorner
af5c6e43b9 #5528 2021-09-02 11:21:57 -07:00
Nikolaj Bjorner
e9a4a9a390 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-09-02 09:23:59 -07:00
Nikolaj Bjorner
e05ef8ece9 account for updating scoped state by goal2sat #5528 2021-09-02 04:20:19 -07:00
Nikolaj Bjorner
f4abe3db02 #5528 2021-09-02 03:13:46 -07:00
Nikolaj Bjorner
6907d30717 #5528 2021-09-01 20:44:00 -07:00
Nikolaj Bjorner
a74c01c8b9 #5528 2021-09-01 20:39:54 -07:00
Nikolaj Bjorner
0c53c139da add to_string method to make it easier to use without << 2021-09-01 15:37:58 -07:00
Nikolaj Bjorner
7ce4be8455 #5528 2021-09-01 14:01:15 -07:00
Nikolaj Bjorner
a3ba4e1366 #5528 2021-09-01 11:34:44 -07:00
Nikolaj Bjorner
7c782a7ef8 #5518
patch a gaping hole in recfun
2021-08-31 19:49:18 -07:00
Nikolaj Bjorner
1426390aec #5518 2021-08-31 16:38:27 -07:00
Nikolaj Bjorner
34c8f598a5 #5518 2021-08-31 14:21:10 -07:00
Nikolaj Bjorner
07bbd026ac #5518 2021-08-31 13:02:54 -07:00
Nikolaj Bjorner
148cb83b0d #5482 fix default case for model construction
port mg_merge functionality from theory_array_base that ensures default values in arrays congruent modulo stores are the same
2021-08-29 17:30:39 -07:00
Nikolaj Bjorner
e7fcbd9563 bail on first model validation failure
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-08-28 17:08:34 -07:00
Nikolaj Bjorner
992daa6d2e #5482
remove overly permissive filter on select_store axiom
2021-08-27 21:03:30 -07:00
Nikolaj Bjorner
828fc72754 types
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-08-26 18:55:53 -07:00
Nikolaj Bjorner
17663acf75 #5482 other relevancy tracking 2021-08-25 05:59:42 -07:00
Nikolaj Bjorner
037c93b258 #5482 2021-08-25 05:59:42 -07:00
Nikolaj Bjorner
7bae297297 #5482
add unit propagation
2021-08-24 11:24:31 -07:00
Nikolaj Bjorner
e90ec457c3 #5482
non-termination (stack overflow) bug in recursive comparison
2021-08-24 09:49:36 -07:00
Nikolaj Bjorner
dd91cfb47e #5482
update temp variables
2021-08-23 22:21:52 -07:00
Nikolaj Bjorner
d0e210849f #5454 again
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-08-19 03:06:23 -07:00
Nikolaj Bjorner
adcdd11afc #5454 again 2021-08-18 13:32:51 -07:00
Nikolaj Bjorner
34fc0276e9 Update array_axioms.cpp 2021-08-16 17:52:37 -07:00
Nikolaj Bjorner
904c6e21b1 modify #5454 2021-08-16 03:29:40 -07:00
Nikolaj Bjorner
429e5ed0cd #5454
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-08-15 19:07:37 -07:00
Nikolaj Bjorner
3d13c0335f #5454
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-08-15 18:40:05 -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
b016465ad2 #5454 2021-08-11 20:31:53 -07:00
Nikolaj Bjorner
fea14245a0 #5454 2021-08-11 19:43:42 -07:00
Nikolaj Bjorner
46107022f7 #5454 2021-08-11 17:06:42 -07:00