Simon Cruanes
|
4fadbeb04d
|
chore: migrate to dune
|
2019-01-18 18:37:26 -06:00 |
|
Simon Cruanes
|
73c7db2b4e
|
feat(cc): boolean propagation of literals in CC
|
2018-08-18 19:56:22 -05:00 |
|
Simon Cruanes
|
400f2e02f1
|
refactor(th-combine): simplify handling of theory conflicts
|
2018-08-18 18:55:17 -05:00 |
|
Simon Cruanes
|
ca531d73a6
|
refactor(cc): fix bugs, use list of nodes in equiv class
|
2018-08-18 18:06:16 -05:00 |
|
Simon Cruanes
|
c2d79b2e6a
|
fix(main): properly handle option no-restarts
|
2018-08-18 18:05:22 -05:00 |
|
Simon Cruanes
|
162b6fad98
|
refactor(term): notion of is_value, which are kept as representatives
|
2018-08-18 17:19:50 -05:00 |
|
Simon Cruanes
|
04eea28cfc
|
chore: disable some warning in Solver
|
2018-08-18 16:39:38 -05:00 |
|
Simon Cruanes
|
2b2765c67f
|
chore: debug msg
|
2018-08-18 15:04:29 -05:00 |
|
Simon Cruanes
|
8ea844a5a0
|
chore: improve debug msg in check invariants
|
2018-08-18 15:02:44 -05:00 |
|
Simon Cruanes
|
d5ca5c2c81
|
chore: minor debug msg
|
2018-08-18 14:56:28 -05:00 |
|
Simon Cruanes
|
6d2d1c91e8
|
refactor(cc): disable path compression
|
2018-08-18 14:52:44 -05:00 |
|
Simon Cruanes
|
1d212350ef
|
refactor(cc): internal refactorings
|
2018-08-18 14:52:44 -05:00 |
|
Simon Cruanes
|
b8445d0ca3
|
refactor: introduce check_invariants in CC
costly, but helps find bugs
|
2018-08-18 14:52:44 -05:00 |
|
Simon Cruanes
|
ce9bcb234d
|
refactor(term): printing utils
|
2018-08-18 14:52:44 -05:00 |
|
Simon Cruanes
|
c9ab548a5a
|
detail in debug
|
2018-08-17 14:22:36 -05:00 |
|
Simon Cruanes
|
74cd2009a3
|
refactor: small changes
|
2018-07-02 18:55:36 -05:00 |
|
Simon Cruanes
|
bf70f9688d
|
refactor(cc): merge the two task queues
|
2018-06-27 21:43:15 -05:00 |
|
Simon Cruanes
|
b7518a632a
|
refactor(cc): simplify congruence closure
|
2018-06-27 21:38:16 -05:00 |
|
Simon Cruanes
|
fb713aa171
|
fix(cc): update terms properly
|
2018-06-22 21:28:26 -05:00 |
|
Simon Cruanes
|
0931747404
|
refactor(cc): better handling of terms that should be ignored by CC
|
2018-06-22 21:02:07 -05:00 |
|
Simon Cruanes
|
9ac274fc09
|
refactor: simplify literals; remove useless casts in CC; bit for pending nodes
|
2018-06-22 19:38:04 -05:00 |
|
Simon Cruanes
|
225afb624e
|
fix: add missig module Value
|
2018-06-17 14:26:07 -05:00 |
|
Simon Cruanes
|
6933a7b5d0
|
refactor: add reset_tasks function to clear caches on backtrack
also refactor CC a bit
|
2018-06-16 22:50:03 -05:00 |
|
Simon Cruanes
|
c8ca60461a
|
fix: typo in Th_bool
|
2018-06-16 20:47:23 -05:00 |
|
Simon Cruanes
|
1f79809644
|
fix(cc.model): model building needs special case for bool
|
2018-06-11 21:56:50 -05:00 |
|
Simon Cruanes
|
080cde778e
|
feat(model): proper model construction for CC + fun interpretation
|
2018-06-11 21:42:02 -05:00 |
|
Simon Cruanes
|
f3c02ebd58
|
wip: implement model construction and evaluation
|
2018-05-28 02:43:31 -05:00 |
|
Simon Cruanes
|
20ecdd6c1f
|
remove useless fields
|
2018-05-28 01:31:34 -05:00 |
|
Simon Cruanes
|
10d394a9c3
|
fix(cc): public add function must also saturate CC
|
2018-05-28 01:22:58 -05:00 |
|
Simon Cruanes
|
cac216da20
|
fix(cc): update handling of signature table (point to node, not repr)
|
2018-05-26 00:46:27 -05:00 |
|
Simon Cruanes
|
aac7879b9d
|
wip: fix CC for theory terms
|
2018-05-26 00:04:41 -05:00 |
|
Simon Cruanes
|
04f25779fa
|
refactor(term): much simpler term model, without builtins or typeclass
just use a few custom functions in `Cst.t`
|
2018-05-25 23:45:15 -05:00 |
|
Simon Cruanes
|
9b8c21513a
|
refactor: internalize terms earlier
|
2018-05-25 21:32:24 -05:00 |
|
Simon Cruanes
|
ea5bce9635
|
refactor(cc): simplify explanations
|
2018-05-25 20:51:37 -05:00 |
|
Simon Cruanes
|
47ddce5960
|
refactor: use 1st class for theory actions
|
2018-05-25 20:23:09 -05:00 |
|
Simon Cruanes
|
edeb28c8ad
|
refactor(smt): use list of lits as explanations for propagations
|
2018-05-25 19:36:53 -05:00 |
|
Simon Cruanes
|
6302d13fe8
|
wip: use Lit.Set.t for explanations
|
2018-05-25 19:36:21 -05:00 |
|
Simon Cruanes
|
d1c88e73f7
|
wip: fix main solver
|
2018-05-23 22:24:24 -05:00 |
|
Simon Cruanes
|
fade033458
|
refactor: get SAT properly again on some problems
|
2018-05-20 14:30:36 -05:00 |
|
Simon Cruanes
|
3968688a35
|
large refactor of SAT solver, all internal code in Internal now
|
2018-05-09 22:47:21 -05:00 |
|
Simon Cruanes
|
24bbe97ceb
|
rename to sidekick
|
2018-05-09 19:28:41 -05:00 |
|
Simon Cruanes
|
eb40cfa5e3
|
wip
|
2018-05-09 18:14:06 -05:00 |
|
Simon Cruanes
|
4e215e3d01
|
fix(cc): fix bugs in congruence closure and explanations
also, simplify API for backtracking
|
2018-04-02 21:10:49 -05:00 |
|
Simon Cruanes
|
543f8a5a99
|
add distinct handling to congruence closure
|
2018-02-23 00:44:23 -06:00 |
|
Simon Cruanes
|
f21d373620
|
minor refactoring, removing useless field in nodes
|
2018-02-22 21:19:54 -06:00 |
|
Simon Cruanes
|
77af72e739
|
fix bugs in SAT solver
- new atoms must always be added to heap if not present
- fix slices dimensions at creation, do not depend on mutable indices
|
2018-02-19 21:32:13 -06:00 |
|
Simon Cruanes
|
20a85a1f35
|
th_bool: fix polarity issues
|
2018-02-19 21:27:15 -06:00 |
|
Simon Cruanes
|
2be10fb907
|
first implementation of on-the-fly Tseitin transformation
|
2018-02-19 20:48:02 -06:00 |
|
Simon Cruanes
|
d7fc5cf29d
|
fix problems with slices in the SAT core
|
2018-02-19 20:47:43 -06:00 |
|
Simon Cruanes
|
d53bd8671a
|
lower overhead for adding clauses to the SAT solver
- directly build clauses from arrays
- use IArrays rather than lists, when possible
- pushing local/persistent clauses is now direct, no more queues
|
2018-02-19 19:47:03 -06:00 |
|