Module
Z3
- Package
- purescript-z3
- Repository
- gbagan/purescript-z3
#Z3 Source
newtype Z3 r mode a
A monad which represents a Z3
computation under a specific context.
The `Z3`` monad uses a phantom type to prevent that the computation leaks any Z3 object
references to the surrounding computation.
Instances
#Arith Source
class Arith :: forall k1 k2 k3 k4. k1 -> k2 -> k3 -> k4 -> Constraint
class Arith a b c r | a b -> c r
Instances
#Equality Source
class Equality :: forall k1 k2 k3. k1 -> k2 -> k3 -> Constraint
class Equality a b r | a b -> r
Instances
Equality (Z3Bool r) (Z3Bool r) r
Equality (Z3Int r) Int r
Equality (Z3Int r) BigInt r
Equality Int (Z3Int r) r
Equality BigInt (Z3Int r) r
Equality (Z3Int r) (Z3Int r) r
Equality (Z3Real r) (Z3Real r) r
Equality (Z3Real r) Number r
Equality Number (Z3Real r) r
Equality (Z3Array r idx val) (Z3Array r idx val) r
#EvalRL Source
#boolVector Source
boolVector :: forall r mode. Int -> Z3 r mode (Array (Z3Bool r))
Create an array of n boolean Z3 variables
#realVector Source
realVector :: forall r mode. Int -> Z3 r mode (Array (Z3Real r))
Create an array of n real Z3 variables
#function Source
function :: forall r mode dom img. Expr r dom => Expr r img => Z3 r mode (Z3Function r dom img)
declare a function of arity 1
#apply Source
apply :: forall r dom img. Expr r dom => Expr r img => Z3Function r dom img -> dom -> img
#apply2 Source
apply2 :: forall r dom1 dom2 img. Expr r dom1 => Expr r dom2 => Expr r img => Z3Function2 r dom1 dom2 img -> dom1 -> dom2 -> img
Re-exports from Z3.Types
#Z3Function2 Source
data Z3Function2 t0 t1 t2 t3
#Z3Function Source
data Z3Function t0 t1 t2
- Modules
- Z3
- Z3.
Internal - Z3.
Types
sort represents the type of a Z3 expression