hasmtlib-1.0.2: A monad for interfacing with external SMT solvers
Safe HaskellSafe-Inferred
LanguageGHC2021

Language.Hasmtlib.Type.Solution

Synopsis

Documentation

type Solver s m = s -> m (Result, Solution) Source #

Function that turns a state into a result and a solution.

data Result Source #

Results of check-sat commands.

Constructors

Unsat 
Unknown 
Sat 

Instances

Instances details
Show Result Source # 
Instance details

Defined in Language.Hasmtlib.Type.Solution

Eq Result Source # 
Instance details

Defined in Language.Hasmtlib.Type.Solution

Methods

(==) :: Result -> Result -> Bool #

(/=) :: Result -> Result -> Bool #

Ord Result Source # 
Instance details

Defined in Language.Hasmtlib.Type.Solution

type Solution = IntMap (SomeKnownSMTSort SMTVarSol) Source #

A Solution is a Map from the variable-identifier to some solution for it.

data SMTVarSol (t :: SMTSort) Source #

A solution for a single variable.

Constructors

SMTVarSol 

Fields

Instances

Instances details
Show (SMTVarSol t) Source # 
Instance details

Defined in Language.Hasmtlib.Type.Solution

Eq (SMTVarSol t) Source # 
Instance details

Defined in Language.Hasmtlib.Type.Solution

Methods

(==) :: SMTVarSol t -> SMTVarSol t -> Bool #

(/=) :: SMTVarSol t -> SMTVarSol t -> Bool #

Ord (SMTVarSol t) Source # 
Instance details

Defined in Language.Hasmtlib.Type.Solution

solVar :: forall t. Lens' (SMTVarSol t) (SMTVar t) Source #

solVal :: forall t. Lens' (SMTVarSol t) (Value t) Source #