#ffi #smt #satisfiability #solver

sys z3-sys

Low-level bindings for the Z3 SMT solver from Microsoft Research

11 releases (6 breaking)

0.7.1 Aug 24, 2021
0.7.0 Jul 21, 2021
0.6.3 Oct 29, 2020
0.6.2 Jun 29, 2020
0.1.0 Dec 28, 2015

#1142 in Math

Download history 929/week @ 2023-01-27 786/week @ 2023-02-03 848/week @ 2023-02-10 1111/week @ 2023-02-17 1096/week @ 2023-02-24 1124/week @ 2023-03-03 729/week @ 2023-03-10 1018/week @ 2023-03-17 659/week @ 2023-03-24 1464/week @ 2023-03-31 3851/week @ 2023-04-07 2340/week @ 2023-04-14 2831/week @ 2023-04-21 974/week @ 2023-04-28 986/week @ 2023-05-05 1074/week @ 2023-05-12

6,390 downloads per month
Used in 23 crates (8 directly)

MIT license

18MB
400K SLoC

C++ 355K SLoC // 0.1% comments Python 13K SLoC // 0.4% comments C# 10K SLoC // 0.4% comments Java 9K SLoC // 0.4% comments C 5.5K SLoC // 0.2% comments OCaml 3K SLoC // 0.4% comments Rust 2K SLoC // 0.0% comments Shell 705 SLoC // 0.2% comments D 365 SLoC // 0.1% comments Visual Studio Project 137 SLoC Visual Studio Solution 125 SLoC Batch 86 SLoC

z3-sys

Low-level rust bindings to the Z3 SMT solver

Licensed under the MIT license.

See https://github.com/Z3Prover/z3 for details on Z3.

Documentation

The API is fully documented with examples: https://docs.rs/z3-sys/

Installation

This crate works with Cargo and is on crates.io. Add it to your Cargo.toml like so:

[dependencies]
z3-sys = "0.7.1"

Support and Maintenance

I am developing this library largely on my own so far. I am able to offer support and maintenance, but would very much appreciate donations via Patreon. I can also provide commercial support, so feel free to contact me.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, shall be dual licensed as above, without any additional terms or conditions.

Dependencies