liquid-fixpoint-0.5.0.1: Predicate Abstraction-based Horn-Clause/Implication Constraint Solver

Safe HaskellNone
LanguageHaskell98

Language.Fixpoint.Types.Sorts

Contents

Description

This module contains the data types, operations and serialization functions for representing Fixpoint's implication (i.e. subtyping) and well-formedness constraints in Haskell. The actual constraint solving is done by the `fixpoint.native` which is written in Ocaml.

Synopsis

Embedding to Fixpoint Types

data Sort Source

Constructors

FInt 
FReal 
FNum

numeric kind for Num tyvars

FFrac

numeric kind for Fractional tyvars

FObj Symbol

uninterpreted type

FVar !Int

fixpoint type variable

FFunc !Sort !Sort

function

FAbs !Int !Sort

type-abstraction

FTC FTycon 
FApp Sort Sort

constructed type

newtype Sub Source

Constructors

Sub [(Int, Sort)] 

intSort :: Sort Source

Exported Basic Sorts -----------------------------------------------

realSort :: Sort Source

Exported Basic Sorts -----------------------------------------------

boolSort :: Sort Source

Exported Basic Sorts -----------------------------------------------

strSort :: Sort Source

Exported Basic Sorts -----------------------------------------------

funcSort :: Sort Source

Exported Basic Sorts -----------------------------------------------

fApp :: Sort -> [Sort] -> Sort Source