liquidhaskell-0.6.0.0: Liquid Types for Haskell

Safe HaskellNone
LanguageHaskell98

Language.Haskell.Liquid.Prover.Types

Synopsis

Documentation

type LVar = Var () Source

type LAxiom = Axiom () Source

type LQuery = Query () Source

data Axiom a Source

Constructors

Axiom 

Instances

data Var a Source

Constructors

Var 

Fields

var_name :: Symbol
 
var_sort :: Sort
 
var_info :: a
 

Instances

data Ctor a Source

Constructors

Ctor 

Instances

data VarCtor a Source

Constructors

VarCtor 

data Expr a Source

Constructors

EVar (Var a) 
EApp (Ctor a) [Expr a] 

Instances

newtype Predicate Source

Constructors

Pred 

Fields

p_pred :: Expr
 

data Proof a Source

Constructors

Invalid 
Proof 

Fields

p_evidence :: [Instance a]
 

Instances

data Instance a Source

Constructors

Inst 

data Query a Source

Constructors

Query 

Fields

q_axioms :: ![Axiom a]
 
q_ctors :: ![VarCtor a]
 
q_vars :: ![Var a]
 
q_env :: ![LVar]
 
q_goal :: !Predicate
 
q_fname :: !FilePath
 
q_depth :: !Int
 
q_decls :: [Predicate]
 
q_isHO :: Bool
 

Instances

data ArgExpr a Source

ArgExpr provides for each sort s | a list of expressions of sort s | and the list of constroctors that can create an expression of sort s.

Constructors

ArgExpr 

Fields

arg_sort :: Sort
 
arg_exprs :: [Expr a]
 
arg_ctors :: [Ctor a]