Simon Cruanes
db1c50f7ed
feat(LRA): expose model after fourier-motzkin returns "SAT"
2020-11-17 16:52:49 -05:00
Simon Cruanes
77b33346f5
fix(tycheck): handle proper unary minus
2020-11-14 13:17:23 -05:00
Simon Cruanes
5ff0fff85b
wip: refactor(lra): import Simplex from funarith, replace FM with it
2020-11-13 22:35:59 -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
534fc45783
wip: better progress bar
2020-10-11 23:30:22 -04:00
Simon Cruanes
3449404964
refactor: move base-term to sidekick-arith
2020-10-10 17:43:42 -04:00
Simon Cruanes
349d884664
chore: add sidekick-arith library, depends on zarith
2020-10-10 17:18:20 -04:00
Simon Cruanes
e9931b377c
remove bloody warn-error
2020-10-10 16:00:21 -04:00
Simon Cruanes
dc320bf0c9
fix(tycheck): handle n-ary +/-
2020-10-10 14:34:05 -04:00
Simon Cruanes
fabdb27dfe
wip: feat(lra): preprocess by renaming lits/terms and storing defs
2020-10-04 21:37:03 -04:00
Simon Cruanes
ac6ca7d584
wip: properly typecheck and build LRA terms
2020-10-04 00:32:52 -04:00
Simon Cruanes
943efad206
feat: add AST for LRA
2020-10-03 23:46:45 -04:00
Simon Cruanes
216cbe762f
missing lra file
2020-09-23 21:59:33 -04:00
Simon Cruanes
f59a5d9fce
wip
2020-09-23 21:59:33 -04:00
Simon Cruanes
aff2e29a6b
wip: representing real types and values
2020-09-23 21:59:29 -04:00
Simon Cruanes
4f12bfdb93
wip: LRA
2020-09-23 21:58:54 -04:00
Simon Cruanes
40d47a8d6c
wip: lra
2020-09-23 21:58:54 -04:00
Simon Cruanes
95edfd9aa9
wip: LRA theory
2020-09-23 21:58:54 -04:00
Simon Cruanes
7d399ba201
handle :named attribute in smtlib
2020-08-18 10:01:36 -04:00
Simon Cruanes
e21dea4780
feat(cc): flag some explanations as being theory-induced
2020-01-17 18:49:14 -06:00
Simon Cruanes
a31b2b36ef
fixes: add missing expl in monoids; handle is-c t
2020-01-14 22:41:33 -06:00
Simon Cruanes
b332e8ceb0
fix: preprocess away "ite"
2020-01-14 20:23:23 -06:00
Simon Cruanes
e58b29da02
fix(term): hashconsing error leading to non termination
2019-12-28 08:49:14 -06:00
Simon Cruanes
7c951c08ff
wip: use t=c instead of (is _ c) t for nullary constructors
2019-12-28 05:17:47 -06:00
Simon Cruanes
444a0b9f85
wip: theory of datatypes
2019-12-28 05:17:47 -06:00
Simon Cruanes
8c5e28da28
wip: theory of datatypes
2019-12-28 05:17:47 -06:00
Simon Cruanes
949e079867
wip: add datatypes
2019-12-28 05:17:47 -06:00
Simon Cruanes
10cfa137b6
feat: handle parsing of .cnf files
2019-11-23 13:41:03 -06:00
Simon Cruanes
9b99560130
feat: handle typechecking and term building for datatypes
2019-11-23 13:23:30 -06:00
Simon Cruanes
3327c86841
refactor(smtlib): remove intermediate typed AST, type directly into terms
2019-11-23 13:23:30 -06:00
Simon Cruanes
409fe49ff0
feat(bin): use stmlib-utils 0.1, with versionned API and new statements
2019-11-07 10:35:59 -06:00
Simon Cruanes
8162a841fe
refactor: depend on smtlib-utils instead of having custom parser
2019-11-05 17:11:32 -06: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
0031c64ea9
feat(th-bool-static): check for new terms in the CC in final check
2019-10-08 09:08:05 -05:00
Simon Cruanes
49a7446631
feat(th-bool-static): add non-traversable opaque boolean term
2019-10-05 18:37:49 -05:00
Simon Cruanes
238226500a
feat: add is_valid_literal filter to add_term_rec
2019-10-02 18:15:06 -05:00
Simon Cruanes
769b80030a
feat: progress bar in solver
2019-07-31 04:36:32 -05:00
Simon Cruanes
d527b2b945
fix: remove some module aliases for 4.08
2019-07-31 03:25:04 -05:00
Simon Cruanes
70e4c655a2
refactor: split smtlib+bin into their own opam package
2019-06-07 17:59:07 -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
12ea0c3be4
feat: check propagations if --check is passed
2019-06-07 14:58:46 -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
cad49b3747
wip: preprocess/simplify as part of theories
2019-06-06 17:13:21 -05:00
Simon Cruanes
19d65b4069
remove dimacs stuff
2019-06-06 10:45:47 -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
fadf76d944
chore: migrate from sequence to iter
2019-03-22 19:43:05 -05:00
Simon Cruanes
431988d5e4
feat: more expressive theories, also plug distinct in
2019-03-09 16:15:24 -06:00