#smt-solver #smt #solver #language #z3

bin+lib smt-lang

Sat Modulo Theory Language

19 releases (5 breaking)

0.7.5 Feb 17, 2023
0.6.3 Dec 12, 2022
0.6.2 Nov 28, 2022

#539 in Math

Download history 3/week @ 2024-02-18 2/week @ 2024-02-25 264/week @ 2024-03-10 1/week @ 2024-03-17 162/week @ 2024-03-31

427 downloads per month

LGPL-3.0-only

255KB
6.5K SLoC

Install

  1. Install Rust: Rust
  2. Install clang:
     xxx@XXX:~$ sudo apt install clang
    
  3. Install SMT-Language:
     xxx@XXX:~$ cargo install smt-lang
    

Run SMT-language

xxx@XXX:~$ smt-lang --file problem_file.sl

Example

Problem

let b: Bool
let i: 1..100
let r: Real

constraint C1 = (
    i >= 10
)
constraint C2 = (
    r <= 20.0 and b
)

Solve

xxx@XXX:~$ smt-lang --file example.sl

Solution

let b: Bool = true
let i: 1..100 = 10
let r: Real = 20

Options

Verbose

  • --verbose 0 : display nothing except the result
  • --verbose 1 : display analysis result
  • --verbose 2 : display loaded problem
  • --verbose 3 : display SMT problem and SMT model if a solution is found

Syntax

Dependencies

~27–40MB
~711K SLoC