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