Commit graph

13 commits

Author SHA1 Message Date
Simon Cruanes
73c7db2b4e feat(cc): boolean propagation of literals in CC 2018-08-18 19:56:22 -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
f3c02ebd58 wip: implement model construction and evaluation 2018-05-28 02:43:31 -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
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
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
Simon Cruanes
98934ab74f move boolean builtins to a sublibrary 2018-02-08 23:19:35 -06:00
Simon Cruanes
7b44146102 make it compile! with stubs for conversion parse ast -> ast -> term 2018-02-08 22:19:32 -06:00
Simon Cruanes
d73684902f wip: have a proper smtlib parser 2018-02-05 23:09:29 -06:00
Simon Cruanes
221ed7dcdb continue large refactoring, progress in theory combination
- first draft of theory combination
- theory interface
- have the project compile
2018-02-01 22:53:06 -06:00