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
Simon Cruanes
a57fdcdeda
refactor: use msat 0.8
2019-02-01 20:57:44 -06:00
Simon Cruanes
27d1841f6b
wip: migrate to msat 0.8
2019-01-28 21:09:57 -06:00
Simon Cruanes
4fadbeb04d
chore: migrate to dune
2019-01-18 18:37:26 -06:00
Guillaume Bury
4bb1f5b793
Update for latest version of dolmen
2018-09-11 14:19:37 +02:00
Guillaume Bury
5e57bfc827
Bugfix for user lvl push when already unsat
2018-09-11 14:19:22 +02:00
Simon Cruanes
73c7db2b4e
feat(cc): boolean propagation of literals in CC
2018-08-18 19:56:22 -05:00
Simon Cruanes
0e467e058c
fix: disable checking of invariants
2018-08-18 19:56:12 -05:00
Simon Cruanes
c1a662e2c8
refactor(sat): improve style of theory propagation handler
2018-08-18 19:55:30 -05:00
Simon Cruanes
324c9d2e36
fix(sat): allow proofs with unary resolution history
...
can happen if the conflict clause is a theory lemma
2018-08-18 19:54:46 -05:00
Simon Cruanes
400f2e02f1
refactor(th-combine): simplify handling of theory conflicts
2018-08-18 18:55:17 -05:00
Simon Cruanes
dd58fa21ef
fix(sat): fix bug in restarts, we need to solve again after one
2018-08-18 18:08:42 -05:00
Simon Cruanes
ca531d73a6
refactor(cc): fix bugs, use list of nodes in equiv class
2018-08-18 18:06:16 -05:00
Simon Cruanes
c2d79b2e6a
fix(main): properly handle option no-restarts
2018-08-18 18:05:22 -05:00
Simon Cruanes
e6a96df0d9
chore: remove dead code in sat
2018-08-18 17:47:20 -05:00