logic-classes-1.5.3: Framework for propositional and first order logic, theorem proving

Safe HaskellNone
LanguageHaskell98

Data.Logic.Types.Harrison.FOL

Synopsis

Documentation

data TermType Source

Constructors

Var String 
Fn Function [TermType] 

Instances

Eq TermType Source 
Ord TermType Source 
Show TermType Source 
Pretty TermType Source 
Atom FOLEQ TermType String Source 
Term TermType String Function Source 
Apply FOL String TermType Source 
Apply FOLEQ PredName TermType Source

Using PredName for the predicate type is not quite appropriate here, but we need to implement this instance so we can use it as a superclass of AtomEq below.

AtomEq FOLEQ PredName TermType Source 

data Function Source

The Harrison book uses String for atomic function, but we need something a little more type safe because of our Skolem class.

Constructors

FName String 
Skolem String