Closed LaifsV1 closed 3 years ago
Not currently, no.
I have worked on an interface for calling Z3 via the calls to #system
. https://github.com/kframework/k/pull/350
I have not had the time to fix errors in the CI yet, though. @LaifsV1
@nishantjr what is the state of this? are there any working examples I could try?
There are examples in k-distribution/tests/regression-new/smtlib2/
run make
after building K
Tests were passing locally on my machine, but not on the CI server. You need Z3/CVC4 in your system PATH
@nishantjr what's the status here?
We've got a working implementation being used for the matching logic prover. I have not had time to upstream it.
I'm not sure when I will be able to.
Is this done as a K module with system calls? Or does it use internal bindings (like the OCaml bindings for Z3)?
System calls still
This can be achieved using the system calls in K, and I think @nishantjr can post his example of the wrapper library he used for making this work here. Closing for now.
Is there a way to call solvers for
SMTLib
formulas withinK
? Something with the intuition of the following rule:The idea is that a transition is taken only if the path condition
PC
is satisfiable.