Commit graph

672 commits

Author SHA1 Message Date
Simon Cruanes
8f29aa8005 refactor: small cleanup 2019-02-11 16:55:43 +01:00
Simon Cruanes
ca62db00e1 perf: garbage collect clauses (only for clauses with ≥3 lits) 2019-02-11 16:55:43 +01:00
Simon Cruanes
3c940ed4f6 refactor(core): use bitfield in clauses, use Vec.iter more 2019-02-11 16:55:43 +01:00
Simon Cruanes
0d7ae34880 fix(analyze-final): mistake in production of unsat cores 2019-02-11 16:55:43 +01:00
Simon Cruanes
f8281bfcc2 test: check unsat cores in icnf-solve 2019-02-11 16:55:43 +01:00
Simon Cruanes
52ae127a5d refactor: implement analyze_final to compute unsat cores 2019-02-11 16:55:43 +01:00
Simon Cruanes
4ca441fa38 fix(core): cancel-until 0 before solving 2019-02-11 16:55:43 +01:00
Simon Cruanes
a88752759f feat: expose simple script for icnf-solve 2019-02-11 16:55:43 +01:00
Simon Cruanes
aa47a44242 feat: expose msat.sat as a proper library, with module Int_lit 2019-02-11 16:55:43 +01:00
Simon Cruanes
1136416a7c wip: remove push/pop 2019-02-11 16:55:43 +01:00
Simon Cruanes
f3488d68db test: add regression tests and icnf parser for assumptions 2019-02-11 16:55:43 +01:00
Simon Cruanes
df9538a91e perf: exit early from propagation loop in case of conflict 2019-02-11 16:55:43 +01:00
Simon Cruanes
1655d09035 refactor: simpler, cleaner functors 2019-02-11 16:55:43 +01:00
Simon Cruanes
c4da650e45 perf: use release profile in msat.sh 2019-02-11 16:55:43 +01:00
Simon Cruanes
1b6ff0e849 chore: update travis 2019-02-11 16:55:43 +01:00
Simon Cruanes
c815ccf648 refactor: use pp instead of print 2019-02-11 16:55:43 +01:00
Simon Cruanes
7e9fd1a363 perf: remove bitfield, implement it manually 2019-02-11 16:55:43 +01:00
Simon Cruanes
8b4458b066 refactor(api): make theory state also explicit 2019-02-11 16:55:43 +01:00
Simon Cruanes
e60aff60b6 refactor: simplify vec, remove the need to provide dummy elt 2019-02-11 16:55:43 +01:00
Simon Cruanes
b3fc070d09 style: remove old headers 2019-02-11 16:55:43 +01:00
Simon Cruanes
05e2506362 refactor: remove minismt things, make simple msat.sh 2019-02-11 16:55:43 +01:00
Simon Cruanes
5846ae7e17 chore: finish moving to dune 2019-02-11 16:55:43 +01:00
Simon Cruanes
9d729b2136 chore: move to opam 2 2019-02-11 16:55:43 +01:00
Simon Cruanes
2fb51d8082 chore: move to dune 2019-02-11 16:55:43 +01:00
Simon Cruanes
cba9f9592d fix: update .travis.yml 2019-02-11 16:55:43 +01:00
Simon Cruanes
6eeb649cdc doc 2019-02-11 16:55:43 +01:00
Simon Cruanes
27cbb981e7 more controled API for Res 2019-02-11 16:55:43 +01:00
Simon Cruanes
83d3048648 a bit of doc 2019-02-11 16:55:43 +01:00
Simon Cruanes
f5066a2ff3 typo 2019-02-11 16:55:43 +01:00
Simon Cruanes
6762985d18 expose {push,pop} in main solver 2019-02-11 16:55:43 +01:00
Simon Cruanes
241e2fa4d7 remove useless functions 2019-02-11 16:55:43 +01:00
Simon Cruanes
87fc9aef26 reinstate better way of picking watch literals 2019-02-11 16:55:43 +01:00
Simon Cruanes
5279456419 reset some record accesses, for perf 2019-02-11 16:55:43 +01:00
Simon Cruanes
585bf6bd50 detail 2019-02-11 16:55:43 +01:00
Simon Cruanes
b2e646343a do not expose St in solver, but only expose a restricted API. 2019-02-11 16:55:43 +01:00
Simon Cruanes
a612a1cda2 make Solver.t more lightweight by removing some useless fields 2019-02-11 16:55:43 +01:00
Simon Cruanes
a34c191ddc add optional size argument to create functions 2019-02-11 16:55:43 +01:00
Simon Cruanes
ef7333af6d make state explicit and add type t state-wrapper in most modules 2019-02-11 16:55:43 +01:00
Simon Cruanes
eff3f8024f wip: use submodules of Solver_types to clean up code 2019-02-11 16:55:43 +01:00
Simon Cruanes
8eef2deebd faster addition of clauses' watch literals
instead of sorting the whole clause, just select two highest level lits
2019-02-11 16:55:43 +01:00
Simon Cruanes
8550102ea6 dependencies in opam files; put binary in minismt package 2019-02-11 16:55:43 +01:00
Simon Cruanes
eff8ed1c4f split some features into minismt lib 2019-02-11 16:55:43 +01:00
Simon Cruanes
9bc85160b8 restrict what Msat core lib exposes, provide shortcuts 2019-02-11 16:55:43 +01:00
Simon Cruanes
cbe3750b0d use generative functors, remove a layer of nesting for SMT libs 2019-02-11 16:55:43 +01:00
Simon Cruanes
797e1b86fe makefile 2019-02-11 16:55:43 +01:00
Simon Cruanes
2b1bef9e3c ocpindent config 2019-02-11 16:55:43 +01:00
Simon Cruanes
b92d8b39e7 remove useless dir 2019-02-11 16:55:43 +01:00
Simon Cruanes
f5b4f5d0cb update opam files 2019-02-11 16:55:43 +01:00
Simon Cruanes
d9ceba72d4 cleanup in fields 2019-02-11 16:55:43 +01:00
Simon Cruanes
cb45782eed travis 2019-02-11 16:55:43 +01:00