mirror of
https://github.com/c-cube/sidekick.git
synced 2025-12-06 03:05:31 -05:00
1.3 KiB
1.3 KiB
Goals
TODO
-
typing and translation Ast -> Term (from mc2?)
-
main executable for SMT solver
-
theory of boolean constructs (on the fly Tseitin using local clauses)
-
make CC work on QF_UF
- internalize terms on the fly (backtrackable)
- basic notion of activity for
ite?
-
have
CDCL.push_localwork properly -
remove tseitin lib
-
write Shostak theory of datatypes (without acyclicity) with local case splits
-
design evaluation system (guards +
eval_bool:(term -> bool) optionin custom TC) -
compilation of rec functions to defined constants
-
Shostak theory of eq-ℚ
-
datatype acyclicity check
-
abstract domain propagation in CC
-
domain propagation (intervals) for ℚ arith
-
full ℚ theory: shostak + domains + if-sat simplex
Main goals
- Add a backend to send proofs to dedukti
- First, pure resolution proofs
- Then, require theories to output lemma proofs for dedukti (in some format yet to be decided)
- Allow to plug one's code into boolean propagation
- react upon propagation (possibly by propagating more, or side-effect)
- more advanced/specific propagation (2-clauses)?
- implement 'constraints' (see https://www.lri.fr/~conchon/TER/2013/3/minisat.pdf )
Long term goals
- max-sat/max-smt
- coq proofs ?
Done
- base types (Term, Lit, …)
- theory combination
- basic design of theories