Simon Cruanes
e3e964a4c6
fix: first version that seems to work on QF_UF
2019-06-07 11:23:53 -05:00
Simon Cruanes
cad49b3747
wip: preprocess/simplify as part of theories
2019-06-06 17:13:21 -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
c36092d217
refactor: updated interface for sidekick_core
2019-05-27 17:03:51 -05:00
Simon Cruanes
6e9e95c233
wip: functorize everything
2019-05-26 23:20:47 -05:00
Simon Cruanes
bb0c0d44b2
wip: add core library with signatures for the whole system
2019-05-18 18:27:39 -05:00
Simon Cruanes
d73684902f
wip: have a proper smtlib parser
2018-02-05 23:09:29 -06:00
Simon Cruanes
221ed7dcdb
continue large refactoring, progress in theory combination
...
- first draft of theory combination
- theory interface
- have the project compile
2018-02-01 22:53:06 -06:00
Simon Cruanes
50fe488dcb
refactor types for terms and congruence closure
...
- terms are extensible
- explanations have a custom case, shaped as a term
- remove distinction repr/node in Equiv_class, for simplicity
- make propositional connectives n-ary
2018-01-30 21:55:37 -06:00
Simon Cruanes
3e50a3fc5d
some updates to core lib
2018-01-26 21:32:21 -06:00
Simon Cruanes
ac396e8cf5
rename to cdcl
2018-01-22 22:09:47 -06:00
Simon Cruanes
8c8209c08c
large refactoring to keep only a simpler, easier CDCL(T) interface
...
- only one functor to instantiate
- explicit state that is carried around
- remove minismt stuff
2018-01-22 21:52:06 -06:00
Simon Cruanes
7324647fb1
doc
2018-01-03 22:08:55 +01:00
Simon Cruanes
53cc8b35a0
more controled API for Res
2018-01-03 22:07:40 +01:00
Simon Cruanes
3f4f7ec7e4
a bit of doc
2018-01-03 22:01:12 +01:00
Simon Cruanes
c7015450a1
typo
2017-12-29 22:10:01 +01:00
Simon Cruanes
2caf53c24f
expose {push,pop} in main solver
2017-12-29 21:29:43 +01:00
Simon Cruanes
be929d056a
remove useless functions
2017-12-29 19:12:17 +01:00
Simon Cruanes
d47071c4f0
reinstate better way of picking watch literals
2017-12-29 19:00:54 +01:00
Simon Cruanes
70fcded713
reset some record accesses, for perf
2017-12-29 18:53:26 +01:00
Simon Cruanes
d415f8ed20
do not expose St in solver, but only expose a restricted API.
2017-12-29 18:29:56 +01:00
Simon Cruanes
c14f0ba020
make Solver.t more lightweight by removing some useless fields
2017-12-29 17:29:24 +01:00
Simon Cruanes
a65309d5e6
add optional size argument to create functions
2017-12-29 17:24:09 +01:00
Simon Cruanes
99078b2335
make state explicit and add type t state-wrapper in most modules
2017-12-29 16:48:26 +01:00
Simon Cruanes
148c1da3cc
wip: use submodules of Solver_types to clean up code
2017-12-29 15:29:04 +01:00
Simon Cruanes
06af58e6f3
faster addition of clauses' watch literals
...
instead of sorting the whole clause, just select two highest level lits
2017-12-29 12:32:27 +01:00
Simon Cruanes
d6c84b93bf
restrict what Msat core lib exposes, provide shortcuts
2017-12-28 19:31:55 +01:00
Simon Cruanes
1037c06636
use generative functors, remove a layer of nesting for SMT libs
2017-12-28 19:12:41 +01:00
Simon Cruanes
db54c8e9b2
cleanup in fields
2017-12-28 18:03:00 +01:00
Simon Cruanes
7722319b0a
move tseitin transformation into its own lib
2017-12-28 16:01:36 +01:00
Simon Cruanes
ac50e10788
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
2017-12-28 15:51:04 +01:00
Simon Cruanes
fc5a2d4e9d
capitalization of files; add new Log
2017-12-28 14:13:10 +01:00
Guillaume Bury
bed469c0cf
Clear unused hyps in coq proofs
2017-08-29 15:18:10 +02:00
Guillaume Bury
7749f7aaac
Manual re-indent
2017-08-25 19:15:12 +02:00
Guillaume Bury
679d928b88
Auto re-indent
2017-08-25 19:11:58 +02:00
Guillaume Bury
4989026f06
Fix mcsat conflict analysis
...
When analyzing an mcst conflict clause and looking at a semantic
propagation in the trail, the last resolved clause was looked at again,
which caused an invalid history to be generated (the computation of the
backtrack clause was not affected because the second resolution of the clause
was basically a no-op thanks to the 'seen' field), thus it did not
introduce any soundness bug, just a faulty clause history which was
caught during proof expansion.
2017-08-25 18:33:42 +02:00
Guillaume Bury
607ec3f043
Added Coq backend (not tested yet)
2017-08-09 09:45:18 +02:00
Guillaume Bury
0c99e6b2e7
[breaking] Better interface for the DOT backend
2017-07-20 13:55:55 +02:00
Guillaume Bury
92835bcdda
Add useful function on proof steps
...
These new functions are designed to help people if (or when) the proof
API will break next time (i.e. adding a new variant case in step).
2017-04-12 20:48:08 +02:00
Guillaume Bury
88c122c4a4
Remove incorrect tag duplication
2017-04-12 19:40:21 +02:00
Guillaume Bury
0fe8ded071
[bugfix] Fix typo following doublon elimination
...
Following a bugfix for doublon elimination, doublons are now eliminated
in add_clause, and as such, in case no simplification is made, the
clause without doublons should be used (and not init). This was a typo
missed during the refactoring of doublon elimination.
2017-04-12 19:23:46 +02:00
Guillaume Bury
7e95911dd8
[bugfix] Allow late mcsat conflicts (wrt assigns)
2017-04-07 15:13:27 +02:00
Guillaume Bury
5725cf5173
Move calls to eliminate_doublons in a single place
2017-03-31 15:39:43 +02:00
Guillaume Bury
f5f9a4ab69
Extend the 'seen' field to store more information
2017-03-31 15:17:51 +02:00
Guillaume Bury
88eaa03968
Internal check also checks for undecided lits
2017-03-30 19:29:53 +02:00
Guillaume Bury
2874dd9cea
[bugfix] Fix undecided lit bug
2017-03-30 18:47:54 +02:00
Guillaume Bury
154cb373fc
Add generativity of Dimacs functor
...
Since the dimacs functor has an internal state (relating to the output
in iCNF format), it is desirable to have a generative functor, inc as
esomeone wants to output select parts of a problem to two distinct iCNF
files).
2017-03-27 16:32:25 +02:00
Guillaume Bury
d0d47fe73f
Moved Dimacs problem export in its own module
2017-03-27 15:37:41 +02:00
Guillaume Bury
7776b6e2f0
Fix use of asprintf (missing in 4.00.1)
2017-02-15 14:03:10 +01:00