liblisa

Module smt

Expand description

A generic interface for SMT solvers.

We do not want libLISA to depend on a specific SMT solver. This pulls in unwanted C dependencies that make the library less portable.

The generic SmtSolver trait abstracts over the SMT solver implementation. This allows us to specify operations that use an SMT solver, but leave the actual implementation up to a separate crate (liblisa-z3) that can be imported when necessary.

Modules§

  • This module contains glue code that implements liblisa::smt::SmtSolver. To use this module, the feature z3 needs to be enabled.

Structs§

Enums§

  • A cached SAT solver result
  • An expression that is dynamically typed.
  • The result of running a SAT solver on a set of assertions.
  • The sort of an expression.
  • The sort kind of an expression.

Traits§