Commit graph

21 commits

Author SHA1 Message Date
Simon Cruanes
08541613af
refactor: model building in smtlib, for smtlib
- sidekick.model removed, now just smtlib.Model (specific to it)
- use function entries for models, not just term->term
- re-building models in smtlib driver
- asolver.solve, in Check_res.t, does not return a concrete model, but a
  bundle of functions to query the solver
- store constants in smtlib typechecker AST (so we can directly map them
  to values in model construction)
2022-10-15 22:42:10 -04:00
Simon Cruanes
f275129967
refactor(smt): use sidekick.proof for proof tracing 2022-10-12 16:30:39 -04:00
Simon Cruanes
85ba423e8c
wip: refactor(smt): use sidekick.proof for proof tracing 2022-10-12 12:22:19 -04:00
Simon Cruanes
a47bbf45e8
refactor: use abstract-solver in smtlib driver; CDCL(T) implements asolver
this way we can add new SMT techniques without changing (much) the
driver.
2022-10-10 15:44:13 -04:00
Simon Cruanes
656d93d5fb
smt tracer is now a clause tracer 2022-10-02 23:23:34 -04:00
Simon Cruanes
3aadc640c4
improve tracing, add show_trace 2022-09-30 22:11:41 -04:00
Simon Cruanes
e74439cf2a
wip: new attempt at theory combination 2022-09-01 22:34:27 -04:00
Simon Cruanes
d741b4160d
remove is_valid_literal concept 2022-09-01 22:33:40 -04:00
Simon Cruanes
5feb5d8e73
refactor: new API for combination, with theories claiming terms
interface variables are terms claimed by >= 2 theories. Theories now
have a unique ID attributed at their creation.
2022-08-27 22:51:16 -04:00
Simon Cruanes
e3aa43f817
cleanup 2022-08-27 20:39:06 -04:00
Simon Cruanes
90f100d9b1
helpers to build terms and solvers 2022-08-27 20:24:28 -04:00
Simon Cruanes
dff65c5d26
refactor: Term.abs takes store again, so abs false can be false,true 2022-08-22 22:12:26 -04:00
Simon Cruanes
e34f5a5c3c
cleanup 2022-08-21 13:53:48 -04:00
Simon Cruanes
007fbad243
fix some stats 2022-08-21 13:53:36 -04:00
Simon Cruanes
ba2e191882
detail 2022-08-14 14:15:45 -04:00
Simon Cruanes
63802fe3d6
feat(stat): improve printing api 2022-08-13 13:45:31 -04:00
Simon Cruanes
fc5ce9bf87
wip: make it compile 2022-08-08 21:52:47 -04:00
Simon Cruanes
4dcc3ea4ad
small changes in smt 2022-08-07 22:41:13 -04:00
Simon Cruanes
1edf054104
refactor(proof): use a suspension but keep uniform Proof_term.data type
this makes proof terms uniformly printable or (de)serializable.
2022-07-31 15:01:11 -04:00
Simon Cruanes
05faac97e7
refactor(smt): remove functor, split into modules 2022-07-30 21:18:46 -04:00
Simon Cruanes
b97582daa2
wip: refactor(smt): remove layers of functors, split into modules 2022-07-30 00:19:29 -04:00