runtimeverification / runtimeverification/haskell-backend
Enable using `cvc5` SMT solver in Kore
Nobody has claimed this yet.
- Dominant language
- Haskell
- Stars
- 224
- Forks
- 43
- PR merge metrics
- No merged PRs in 30d
Description
We have evidence (see Slack thread) that CVC5 is more successful than Z3 in dealing with some non-linear arithmetic problems arising in rules' side condition in kasmer and kontrol.
We have for a long time considered adding CVC5 as an alternative/companion solver to Z3.
We should start with the simplest possible implementation: use CVC5 instead of Z3, controlled by the --smt-solver command line option.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files or tests. Start by tracing the existing Z3 path behind the --smt-solver option and its handling of side conditions in kasmer and kontrol. Done means selecting cvc5 through that option uses it instead of Z3 for the relevant solver calls.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100