Simon Cruanes
4363fc47b6
update smtlib
2025-01-27 21:51:51 -05:00
Simon Cruanes
43c8e60790
use trace instead of our own custom tracing setup
2023-10-06 22:04:15 -04:00
Simon Cruanes
619da6fbcb
fix warnings
2023-06-23 20:44:01 -04:00
Simon Cruanes
f5ccbb476b
add todo
2022-10-23 20:58:25 -04:00
Simon Cruanes
f905b754aa
wip: check models
2022-10-23 20:55:25 -04:00
Simon Cruanes
61f1854b80
feat(smtlib.model): improve printing of deeply nested ite
2022-10-19 22:29:19 -04:00
Simon Cruanes
082bfdd43a
better error
2022-10-19 22:29:13 -04:00
Simon Cruanes
cc090a4574
fix(main): consistent printing of models
...
whether it's --model or (get-model)
2022-10-19 22:28:52 -04:00
Simon Cruanes
297615b61b
feat(model): improve printing of smtlib models
2022-10-18 22:47:33 -04:00
Simon Cruanes
09d569ee68
fix test: restore printing for basic smt solver model
2022-10-15 23:17:49 -04:00
Simon Cruanes
24bbcb3fbb
improve model printing so it's more smtlib2.6 compatible
2022-10-15 23:15:42 -04:00
Simon Cruanes
4546b7cff2
feat(smt): produce better model, with eval function
2022-10-15 23:11:27 -04:00
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
a6d3ed259f
refactor: make it compile again (driver, main)
2022-10-12 22:19:41 -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
e3e71f3d76
refactor: smtlib driver now part of base; make it stateful
2022-10-10 14:28:43 -04:00
Simon Cruanes
e74439cf2a
wip: new attempt at theory combination
2022-09-01 22:34:27 -04:00
Simon Cruanes
52b60c4114
fix(main): method for measuring memory overhead was wrong
2022-08-31 00:47:11 -04:00
Simon Cruanes
28ad97d2b7
fix: typecheck issue
2022-08-27 23:42:19 -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
5f91d0bd76
fix spurious \r
2022-08-27 12:36:45 -04:00
Simon Cruanes
f0041f9dae
feat: reinstate LRA theory and terms
2022-08-26 22:17:02 -04:00
Simon Cruanes
e66a27229b
detail in printing
2022-08-26 22:16:45 -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
e0faf6ba72
feat: some spans in main/process
2022-08-20 00:21:45 -04:00
Simon Cruanes
27ccd367b2
fix output so benchpress can parse it
2022-08-16 23:34:08 -04:00
Simon Cruanes
b23a031519
fix: time measurements were wrong
2022-08-16 21:45:16 -04:00
Simon Cruanes
57941a952a
add th-bool-dyn for dynamic boolean clausification
2022-08-16 21:30:17 -04:00
Simon Cruanes
2ab93aee04
feat(main): fix initial time; better display (smtlib-friendly)
2022-08-14 23:21:02 -04:00
Simon Cruanes
517a5d2e5f
better tracing
2022-08-13 13:55:01 -04:00
Simon Cruanes
d14617ca77
refactor: rush to have sidekick compile again. th-lra is commented out
2022-08-10 22:08:57 -04:00
Simon Cruanes
95dcb0ae74
wip: refactor further
2022-08-09 22:41:13 -04:00
Simon Cruanes
fc5ce9bf87
wip: make it compile
2022-08-08 21:52:47 -04:00
Simon Cruanes
97a5c8efa3
detail
2022-08-07 22:42:35 -04:00
Simon Cruanes
f3f0628261
large refactor with signature splitting, events, etc.
2022-07-18 23:20:07 -04:00
Simon Cruanes
00dec7ced8
remove iarray
2022-07-15 21:06:46 -04:00
Simon Cruanes
a1bc186d2e
use ocamlformat
2022-07-14 22:09:13 -04:00
Simon Cruanes
e2b9b2874c
fix more warnings; remove never completed LIA stuff
2022-07-14 22:01:23 -04:00
Simon Cruanes
fd500a3d7d
fix some warnings
2022-07-14 21:56:37 -04:00
Simon Cruanes
52cae96ee2
improve progress bar and printingof stat after timeout
2022-02-18 14:59:25 -05:00
Simon Cruanes
20791a551f
feat: enforce time/memory limits in main runner
2022-02-17 13:09:48 -05:00
Simon Cruanes
98c30bf0cc
updates and cleanup
2022-02-14 10:46:08 -05:00
Simon Cruanes
1d702029ee
fix(typecheck): use logic to decide default type of numerals
2022-02-08 13:12:29 -05:00
Simon Cruanes
dbb9dabd1d
simpler printing of models
2022-02-02 16:12:11 -05:00
Simon Cruanes
3fdb07b533
feat: handle get-model/get-value from smtlib inputs
2022-02-02 15:51:44 -05:00
Simon Cruanes
cb369ec68d
easier list of known logic
2022-01-31 15:28:02 -05:00
Simon Cruanes
3c41ab2484
refactor: new term representation for LIA/LRA
2022-01-31 15:13:25 -05:00
Simon Cruanes
4b2afd7a05
wip: LIA theory
2022-01-13 12:55:36 -05:00
Simon Cruanes
8410a57f1a
wip: feat(LIA): LIA solver, will rely on LRA solver
...
we want to reuse the simplex, but do branch and bound + cutting planes
2022-01-11 14:00:04 -05:00
Simon Cruanes
2378fc37ac
fix LIA->LRA cast operation
2022-01-11 14:00:04 -05:00