Commit graph

1092 commits

Author SHA1 Message Date
Simon Cruanes
e2d3afb4df chore: add zarith lower bound in opam 2021-02-16 19:06:01 -05:00
Simon Cruanes
d7119d50ff chore: indicate dep on mtime for sidekick 2021-02-16 16:03:01 -05:00
Simon Cruanes
341d82fa7f add test for certificates 2021-02-16 15:18:38 -05:00
Simon Cruanes
0bd2770b40 feat(lra): certificate checking for simplex2 2021-02-16 15:18:19 -05:00
Simon Cruanes
284a475197 lra is not optional 2021-02-16 14:01:21 -05:00
Simon Cruanes
cfbd352ca0 feat(lra): restore theory combination; improve preprocessing 2021-02-16 14:01:21 -05:00
Simon Cruanes
e5338b91ba chore: faster CI hopefully 2021-02-15 17:33:32 -05:00
Simon Cruanes
0634e7c356 perf(lra): only call simplex.check if new things were asserted 2021-02-15 17:09:38 -05:00
Simon Cruanes
2a6c224f08 fix(lra): proper negation for basic operators 2021-02-15 16:53:57 -05:00
Simon Cruanes
acf99504c4 test: option to display stats 2021-02-15 16:53:46 -05:00
Simon Cruanes
69b2fde084 fix(simplex2): add basic var's bound in the certificate 2021-02-15 16:35:54 -05:00
Simon Cruanes
0081926a50 fix(lra): refactor 2021-02-15 16:35:41 -05:00
Simon Cruanes
a908f2b3f2 feat(arith): integrate simplex2 into sidekick; remove old simplex 2021-02-15 16:19:39 -05:00
Simon Cruanes
d6f0fa0ffc feat(simplex2): build proper certificates 2021-02-15 16:18:40 -05:00
Simon Cruanes
f0dd1b08e8 details 2021-02-15 13:54:35 -05:00
Simon Cruanes
aea634ca8b test: add a test of the backtracking behavior of simplex2 2021-02-15 13:46:25 -05:00
Simon Cruanes
0aa04480ce test: improve simplex2 tests 2021-02-15 13:29:33 -05:00
Simon Cruanes
4d9f99e65d fix(simplex2): correct pivot; refactor; better printing 2021-02-15 13:29:12 -05:00
Simon Cruanes
f226c6b820 fix(lra): many fixes in simplex; some fixme/todo 2021-02-12 19:42:16 -05:00
Simon Cruanes
5fc8d746c2 test: add tests for simplex2 2021-02-12 19:42:07 -05:00
Simon Cruanes
fb52e79287 test: update test harness 2021-02-12 19:41:34 -05:00
Simon Cruanes
dd4719b1a4 wip(LRA): new simplex implementation 2021-02-12 15:48:02 -05:00
Simon Cruanes
2a0e14a635 refactor: a bit of cleanup 2021-02-11 17:17:55 -05:00
Simon Cruanes
75ce199bb0 wip: new simplex 2021-02-11 17:17:43 -05:00
Simon Cruanes
3d46315b82 try to fix ci 2021-02-05 14:25:38 -05:00
Simon Cruanes
dc80c1de1a perf(simplex): optim: no new variable for constraints like a·x <= b 2021-02-05 14:16:34 -05:00
Simon Cruanes
14a25f95a8 perf: make simplex more imperative 2021-02-05 13:48:57 -05:00
Simon Cruanes
dee47743f7
Merge pull request #6 from c-cube/wip-lra-simplex-unsat-core
Add unsat core explanations to the simplex
2021-02-04 10:47:50 -05:00
Simon Cruanes
8b06566013 fix tests the most stupid way possible 2020-12-29 10:36:18 -05:00
Simon Cruanes
d5b4798e20 try to fix test 2020-12-23 16:12:50 -05:00
Simon Cruanes
b9b1b685d1 chore: update msat 2020-12-23 16:00:16 -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
23dcf79560 more regression tests 2020-12-22 15:02:12 -05:00
Simon Cruanes
7ef673ca30 refactor mini-cc 2020-12-22 14:59:30 -05:00
Simon Cruanes
35e5e30e93 fix(smtlib): handle "xor" 2020-12-22 14:59:21 -05:00
Simon Cruanes
3d46986161 test: add regression test for xor 2020-12-22 14:59:06 -05:00
Simon Cruanes
7cb97a89c5 make type abstract 2020-12-22 12:36:02 -05:00
Simon Cruanes
1890f7af13 try to tighten type constraints 2020-12-22 12:30:01 -05:00
Simon Cruanes
f05de5f741 fix warnings 2020-12-22 12:17:32 -05:00
Simon Cruanes
6c1b7df301 chore: try to fix build again 2020-12-22 11:53:12 -05:00
Simon Cruanes
14bb5898f0 Merge branch 'wip-fix-lra' into wip-lra-simplex-unsat-core 2020-12-22 11:46:09 -05:00
Simon Cruanes
354e432a40 chore: add cache to CI 2020-12-22 11:07:54 -05:00
Simon Cruanes
5ca4730968 try to fix build 2020-12-22 11:06:59 -05:00
Simon Cruanes
3b3a2e1caf use simplex conflicts in LRA 2020-12-22 10:55:55 -05:00
Guillaume Bury
4be726db43 Add unsat core explanations to the simplex 2020-12-22 14:16:23 +01:00
Simon Cruanes
9d579af235 wip: make lazyness of model explicit 2020-12-21 16:15:49 -05:00
Simon Cruanes
b3a7acf95b feat(LRA): handle congruence closure and theory combination in LRA
- merges in the CC are handled by adding corresponding equalities
  locally
- theory combination pushes the decision `a=b` into the SAT solver
  if a,b have the same model values and are not provably equal
  in the CC already.
- also, fix model construction
2020-11-17 18:24:09 -05:00
Simon Cruanes
6417bbdd80 feat(util): add Backtrack_stack.iter 2020-11-17 18:23:58 -05:00
Simon Cruanes
9839e5a36b feat(core): add push_decision, for model-based th combination 2020-11-17 18:23:16 -05:00