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
2fb51d8082
chore: move to dune
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
b92d8b39e7
remove useless dir
2019-02-11 16:55:43 +01:00
Simon Cruanes
d9ceba72d4
cleanup in fields
2019-02-11 16:55:43 +01:00
Simon Cruanes
ec7fa9e01a
fix warnings
2019-02-11 16:55:43 +01:00
Simon Cruanes
2707215aa2
move tseitin transformation into its own lib
2019-02-11 16:55:43 +01:00
Simon Cruanes
768f59f88b
big refactoring
...
- move to jbuilder
- use a functorial heap (with indices embedded in lit/var)
- update Vec with optims from mc2
- change semantics of Vec.shrink
- use new Log module
2019-02-11 16:55:43 +01:00
Simon Cruanes
48ec2d732c
capitalization of files; add new Log
2019-02-11 16:55:43 +01:00
Simon Cruanes
9e5c9056d0
test: add a logitest target
2019-02-10 18:07:06 -06:00
Simon Cruanes
8614d9bb0c
feat: use gc alarm to check resources
2019-02-10 17:11:29 -06:00
Simon Cruanes
5865151247
refactor: return optional proof, do not store if if -no-check was given
2019-02-10 16:59:27 -06:00
Simon Cruanes
62ea8fd0cb
fix(thbool): fix non-termination issue by creating clauses at most once
2019-02-10 16:24:04 -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
Simon Cruanes
431d8fe4ac
small style change
2019-02-09 16:17:15 -06:00
Simon Cruanes
9d90b7ef66
refactor(cc): add some todos, fix a bug
2019-02-09 16:17:01 -06:00
Simon Cruanes
7b00a9d9e5
feat: expose mini-cc compatible API in Term
2019-02-09 16:16:44 -06:00
Simon Cruanes
40186a6c76
refactor: renaming `Eq{uiv,}_class
2019-02-08 19:45:20 -06:00
Simon Cruanes
0326c07c16
refactor: add Sidekick_util with some re-exports
2019-02-08 19:44:59 -06:00
Simon Cruanes
a7a5e1d7e1
wip: mini congruence closure to check the main one
2019-02-08 19:44:39 -06:00
Simon Cruanes
f2eecaa758
feat(th-bool): flattening of and/or also removes neutral elts
2019-02-01 21:42:44 -06:00
Simon Cruanes
f76f6bb0d9
feat(solver): assert true and ¬false
2019-02-01 21:42:28 -06:00
Simon Cruanes
e08bb7b5ac
fix(cc): polarity error in distinct-conflict
2019-02-01 21:42:11 -06:00
Simon Cruanes
3eabeb4e2e
fix(bstack): another stupid error
2019-02-01 21:41:54 -06:00
Simon Cruanes
d95047b65a
refactor: a debug msg
2019-02-01 21:26:32 -06:00
Simon Cruanes
91389d2b5e
fix(bstack): fix bug in n-levels
2019-02-01 21:25:50 -06:00
Simon Cruanes
a2e177abe8
fix(cc): polarity error in conflicts
2019-02-01 21:12:26 -06:00
Simon Cruanes
e6de1de949
main: print backtraces properly
2019-02-01 21:12:26 -06:00