Commit graph

38 commits

Author SHA1 Message Date
Simon Cruanes
a4e3fd5a69 feat: provide simple repr->monoid mapping in core 2019-12-28 05:17:47 -06:00
Simon Cruanes
7d8589accd refactor: change the functor stack 2019-10-29 15:06:19 -05:00
Alexander Bentkamp
7fe6f07c0b split on_merge into two events: pre and post merge 2019-08-21 11:43:59 -05:00
Alexander Bentkamp
cde983df86 add assert for Expl.mk_merge 2019-08-21 11:43:59 -05:00
Simon Cruanes
d527b2b945 fix: remove some module aliases for 4.08 2019-07-31 03:25:04 -05:00
Simon Cruanes
2430eb754d feat(cc): make bitfields non-global; remove dead code 2019-06-11 11:38:54 -05:00
Simon Cruanes
3e7ef47fab feat: add CC.merge_t 2019-06-11 10:26:04 -05:00
Simon Cruanes
36449d1645 feat(cc): expose a way to access bitfields 2019-06-10 15:19:57 -05:00
Simon Cruanes
6c603d5589 refactor: remove code that checks invariants 2019-06-10 14:28:05 -05:00
Simon Cruanes
38f001b0e7 refactor: move Lit inside the solver, as output, not input 2019-06-07 17:31:11 -05:00
Simon Cruanes
07d3e22cc1 fix(cc): fix error in initial signature 2019-06-07 16:18:38 -05:00
Simon Cruanes
8dcb67552e refactor: rewrite production of explanation in CC
- use a mutable bit in nodes for finding common ancestor
- use fold-like traversal of explanations
2019-06-07 15:50:48 -05:00
Simon Cruanes
ef1110925f feat(cc): callback on propagations 2019-06-07 14:58:41 -05:00
Simon Cruanes
357dc73426 feat(check): use mini-cc to check CC conflicts on the fly 2019-06-07 14:47:52 -05:00
Simon Cruanes
2000114ab4 feat: add more stats 2019-06-07 13:27:03 -05:00
Simon Cruanes
e3e964a4c6 fix: first version that seems to work on QF_UF 2019-06-07 11:23:53 -05:00
Simon Cruanes
2e7ab9ba9b wip: simplify a lot and only keep th-bool-static in the functor 2019-06-05 16:53:13 -05:00
Simon Cruanes
080a20480f refactor: continue functorization of sidekick 2019-05-27 19:55:21 -05:00
Simon Cruanes
6e9e95c233 wip: functorize everything 2019-05-26 23:20:47 -05:00
Simon Cruanes
ddde590ffd refactor(cc): no micro theories, only callbacks 2019-04-02 21:30:14 -05:00
Simon Cruanes
539186bfe6 feat: modular statistics aggregate 2019-03-22 20:14:28 -05:00
Simon Cruanes
fadf76d944 chore: migrate from sequence to iter 2019-03-22 19:43:05 -05:00
Simon Cruanes
d58759aa8c fix: integrate negation into CC; map boolean subterms to literals 2019-03-22 19:41:05 -05:00
Simon Cruanes
cb0b5cbcbd refactor: change signature of CC.Theory.on_new_term 2019-03-09 16:51:39 -06:00
Simon Cruanes
431988d5e4 feat: more expressive theories, also plug distinct in 2019-03-09 16:15:24 -06:00
Simon Cruanes
d4758a2fcf cleanup 2019-03-03 16:22:14 -06:00
Simon Cruanes
f58bdb5f30 feat: first working version of th-distinct as a separate theory 2019-03-03 15:17:06 -06:00
Simon Cruanes
342dba4533 wip: new micro-theories in CC 2019-02-26 22:46:40 -06:00
Simon Cruanes
c79a5a4798 wip: micro theories 2019-02-22 20:57:17 -06:00
Simon Cruanes
77a5475862 wip: cleanup cc 2019-02-22 18:54:56 -06:00
Simon Cruanes
de1cc952a5 refactor: use new msat lazy propagation 2019-02-16 19:09:43 -06:00
Simon Cruanes
4d2bddc660 refactor(cc): smaller explanations for congruence-based merges 2019-02-16 17:43:04 -06:00
Simon Cruanes
14255f94a7 refactor(cc): remove dead code 2019-02-16 15:32:35 -06:00
Simon Cruanes
365aedb138 perf(cc): path compression 2019-02-16 15:28:16 -06:00
Simon Cruanes
b5208da56c fix(tseitin): use final check to push axioms 2019-02-09 23:35:49 -06:00
Simon Cruanes
bf0171fec1 fix(cc): merge parents properly 2019-02-09 22:11:50 -06:00
Simon Cruanes
1328d043e3 fix(cc): restore distinct 2019-02-09 21:59:25 -06:00
Simon Cruanes
a463dbb4b5 feat(cc): split sub-library sidekick.cc, make it fully functorized 2019-02-09 21:57:20 -06:00