Simon Cruanes
fd8b598650
feat: reexport type state
2021-03-17 14:43:46 -04:00
Simon Cruanes
0aa13ca808
refactor: provide a state for Ty.bool in core signature
2021-02-24 15:52:54 -05:00
Simon Cruanes
04615e4e3d
Merge branch 'wip-lra-simplex'
2021-02-22 17:13:39 -05:00
Simon Cruanes
a8e2764e92
lra: refactor theory combination (have CC tell us what terms are subterms)
2021-02-22 12:09:44 -05:00
Simon Cruanes
0e5e40f145
feat(core/cc): expose more from the congruence closure
2021-02-22 12:09:44 -05:00
Simon Cruanes
3979380896
feat(profile): add instant probe
2020-12-22 16:45:55 -05:00
Simon Cruanes
fafb001934
feat: add profiling system based on TEF
...
- a `Sidekick_util.Profile` module, deps-free
- an optional sidekick.tef library that needs unix+mtime
2020-12-22 16:27:45 -05:00
Simon Cruanes
9839e5a36b
feat(core): add push_decision, for model-based th combination
2020-11-17 18:23:16 -05:00
Simon Cruanes
9a3e387405
refactor: explicit recursion in preprocessing
...
if a preprocessor fires, it's up to it to preprocess subterms. rewriting
is now from the root, not the leaves on.
Use that in LRA to rewrite under linear expressions.
2020-11-12 18:21:37 -05:00
Simon Cruanes
51be2f52e8
style
2020-10-12 02:06:16 -04:00
Simon Cruanes
c67e44e654
detail
2020-10-09 23:59:38 -04:00
Simon Cruanes
ae6d298790
move to containers 3.0
2020-09-08 22:33:24 -04:00
Simon Cruanes
bb449257d8
fix(solver): in final-check, fixpoint until CC has no merges
2020-02-15 14:40:57 -06:00
Simon Cruanes
11d8f8e879
remove dead code, some printing info
2020-02-15 14:33:44 -06:00
Simon Cruanes
ef60d1466f
feat: better debug message
2020-01-14 21:23:02 -06:00
Simon Cruanes
e58b29da02
fix(term): hashconsing error leading to non termination
2019-12-28 08:49:14 -06:00
Simon Cruanes
721b1874b7
fix: re-check CC after calling on-final-check
2019-11-01 17:04:36 -05:00
Simon Cruanes
d4c3d3e443
cleanup: remove a few functions
2019-11-01 14:17:28 -05:00
Simon Cruanes
9ddce6a186
feat(check-cc): add statistics
2019-10-30 13:31:04 -05:00
Simon Cruanes
7d8589accd
refactor: change the functor stack
2019-10-29 15:06:19 -05:00
Simon Cruanes
1658887ea3
feat: basic production of models
2019-10-02 18:44:02 -05:00
Simon Cruanes
7552808c33
feat: add is_valid_literal filter to add_term_rec
2019-10-02 18:16:51 -05:00
Alexander Bentkamp
7fe6f07c0b
split on_merge into two events: pre and post merge
2019-08-21 11:43:59 -05:00
Simon Cruanes
769b80030a
feat: progress bar in solver
2019-07-31 04:36:32 -05:00
Simon Cruanes
af0635dab7
fix: remove dead code
2019-06-10 16:04:01 -05:00
Simon Cruanes
6c603d5589
refactor: remove code that checks invariants
2019-06-10 14:28:05 -05:00
Simon Cruanes
b2f6a30cc8
feat: function to add a theory and retain its state
2019-06-10 14:16:09 -05:00
Simon Cruanes
128e7dceb8
refactor: move Hash to util/; fix some warnings
2019-06-10 10:46:16 -05:00
Simon Cruanes
d1aec70cbe
fix: restore the module type coercion
2019-06-07 17:55:22 -05:00
Simon Cruanes
c9d8fd2f51
feat: ensure the congruence closure can propagate literals
2019-06-07 17:37:52 -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
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
cad49b3747
wip: preprocess/simplify as part of theories
2019-06-06 17:13:21 -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