A solver-agnostic library for SMT Formulae manipulation and solving
Project description
pySMT makes working with Satisfiability Modulo Theory simple.
Among others, you can:
Define formulae in a solver independent way in a simple and inutitive way,
Write ad-hoc simplifiers and operators,
Dump your problems in the SMT-Lib format,
Solve them using one of the native solvers, or by wrapping any SMT-Lib complaint solver.
Supported Theories and Solvers
pySMT provides methods to define a formula in Linear Real Arithmetic (LRA), Real Difference Logic (RDL), their combination (LIRA), Equalities and Uninterpreted Functions (EUF), Bit-Vectors (BV), and Arrays (A). The following solvers are supported through native APIs:
MathSAT (http://mathsat.fbk.eu/)
CVC4 (http://cvc4.cs.nyu.edu/web/)
Yices 2 (http://yices.csl.sri.com/)
PicoSAT (http://fmv.jku.at/picosat/)
Boolector (http://fmv.jku.at/boolector/)
Additionally, you can use any SMT-LIB 2 compliant solver.
PySMT assumes that the python bindings for the SMT Solver are installed and accessible from your PYTHONPATH.
pySMT works on both Python 2 and Python 3. Some solvers support both versions (e.g., MathSAT) but in general, many solvers still support only Python 2.
Wanna know more?
Visit http://www.pysmt.org
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file PySMT-0.5.1.tar.gz.
File metadata
- Download URL: PySMT-0.5.1.tar.gz
- Upload date:
- Size: 177.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31c9887478fdc4c26f8770935080b8d0175d1272ea38a27c609eead4b2f7901b
|
|
| MD5 |
c200668d8bee8af3c2832ac6a09413d1
|
|
| BLAKE2b-256 |
b48049b4264803befb379cbb764c1720c69e6065b490b381ba2ef7eef68fba23
|