Skip to content

UnitTestBot/ksmt

Repository files navigation

KSMT

Kotlin API for various SMT solvers

KSMT: build

Getting started

Install via JitPack and Gradle

// core 
implementation("com.github.UnitTestBot.ksmt:ksmt-core:0.1.0")
// z3 solver
implementation("com.github.UnitTestBot.ksmt:ksmt-z3:0.1.0")

Usage

See examples

Features

Currently KSMT supports the following SMT solvers:

SMT Solver Linux-x64 Windows-x64 MacOS-x64
Z3 ✔️ ✔️ ✔️
Bitwuzla ✔️ ✔️

KSMT can express formulas in the following theories:

Theory Z3 Bitwuzla
Bitvectors ✔️ ✔️
Arrays ✔️ ✔️
IEEE Floats ✔️
Uninterpreted Functions ✔️ ✔️
Arithmetic ✔️