Commit graph

709 commits

Author SHA1 Message Date
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
c125fdafa6 fix(sat): use Conflict exn to signal conflict on add_clause 2018-06-22 21:01:22 -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
b12db3f03e chore: fix travis, only build on >= 4.03 2018-06-17 14:34:18 -05:00
Simon Cruanes
225afb624e fix: add missig module Value 2018-06-17 14:26:07 -05:00
Simon Cruanes
83edbe7b48 fix(build): make menhir+zarith mandatory deps 2018-06-17 13:54:12 -05:00
Simon Cruanes
eec7fdca2b chore: update travis script to use docker 2018-06-17 12:54:16 -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
c5f23e32b9 test: proper smtlib for QFUF problems 2018-06-11 21:56:34 -05:00
Simon Cruanes
5e380464ce fix(sat): base-level = 1 under assumptions 2018-06-11 21:47:37 -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
1d99547856 rename dir 2018-05-26 10:34:12 -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
0b42a34a20 refactor: cleanup SAT 2018-05-25 21:33:38 -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
b73e900839 sat: only re-internalize atoms of permanent clauses, on backtrack 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
39be2c260e fixes 2018-05-20 15:32:06 -05:00
Simon Cruanes
208f51276d fix: some fixes in SAT 2018-05-20 14:43:33 -05:00
Simon Cruanes
fade033458 refactor: get SAT properly again on some problems 2018-05-20 14:30:36 -05:00
Simon Cruanes
4a39192846 refactor(sat): wip: simpler clauses 2018-05-20 13:38:39 -05:00
Simon Cruanes
f69d5cd9f1 refactor(sat): wip: simplify SAT solver 2018-05-20 13:09:51 -05:00
Simon Cruanes
5860612cd9 wip: refactor SAT solver 2018-05-11 20:33: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
36df2d952b delay addition of clauses to internal sat solver until solve() 2018-05-09 21:09:55 -05:00
Simon Cruanes
441ca61465 remove annoying spelling mistake 2018-05-09 19:58:04 -05:00
Simon Cruanes
c44e9bc16d remove dead library 2018-05-09 19:51:45 -05:00
Simon Cruanes
70749155bf cleanup of unused sublibrary 2018-05-09 19:34:53 -05:00
Simon Cruanes
4628bff514 remove some files 2018-05-09 19:30:44 -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
d19b798ee9 add ability to parse and process dimacs files 2018-04-11 19:57:51 -05:00
Simon Cruanes
d47d619265 add dimacs sub-library 2018-04-11 19:57:23 -05:00
Simon Cruanes
c82099731d remove todo file 2018-04-11 09:03:09 -05:00
Simon Cruanes
da77d3ab3b add todo 2018-04-11 09:02:36 -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
bc1a573407 chore: better error printing 2018-04-02 21:07:54 -05:00
Simon Cruanes
543f8a5a99 add distinct handling to congruence closure 2018-02-23 00:44:23 -06:00