4673N/A{-# LANGUAGE DeriveDataTypeable #-}
4673N/ADescription : A abstract syntax for the TPTP-THF Syntax
4673N/ACopyright : (c) A. Tsogias, DFKI Bremen 2011
4673N/AMaintainer : Alexis.Tsogias@dfki.de
4673N/AA Abstract Syntax for the TPTP-THF Input Syntax v5.1.0.2 taken from
4673N/AIn addition the Syntax for THF0 taken from
4673N/Ahas been added where needed.
5821N/A{- ---------------------------------------------------------------------------
4673N/AAbstract Syntax for THF in general and THF0
4673N/AFor Explanation of the data types refer to the comments in ParseTHF
4673N/A------------------------------------------------------------------------------
4673N/Aat the example of <source>: Sould <general_term> be also
4673N/Atried when all ather variations fail?
4673N/A----------------------------------------------------------------------------- -}
4673N/A TPTP_THF_Annotated_Formula { nameAF :: Name
4673N/A , formulaRoleAF :: FormulaRole
4673N/A , thfFormulaAF :: THFFormula
4673N/A , annotationsAF :: Annotations}
4673N/A | TPTP_Defined_Comment DefinedComment
4673N/A | TPTP_System_Comment SystemComment
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A | Defined_Comment_Block Token
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A | System_Comment_Block Token
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A I_Include Token (Maybe NameList)
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A Annotations Source OptionalInfo
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A Axiom | Hypothesis | Definition | Assumption
4673N/A | Lemma | Theorem | Conjecture | Negated_Conjecture
4673N/A | Plain | Fi_Domain | Fi_Functors | Fi_Predicates
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TF_THF_Logic_Formula THFLogicFormula
4673N/A | TF_THF_Sequent THFSequent
4673N/A | T0F_THF_Typed_Const THFTypedConst
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TLF_THF_Binary_Formula THFBinaryFormula
4673N/A | TLF_THF_Unitary_Formula THFUnitaryFormula
4673N/A | TLF_THF_Type_Formula THFTypeFormula
4673N/A | TLF_THF_Sub_Type THFSubType
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TBF_THF_Binary_Pair THFUnitaryFormula THFPairConnective
4673N/A | TBF_THF_Binary_Tuple THFBinaryTuple
4673N/A | TBF_THF_Binary_Type THFBinaryType
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TBT_THF_Or_Formula [THFUnitaryFormula]
4673N/A | TBT_THF_And_Formula [THFUnitaryFormula]
4673N/A | TBT_THF_Apply_Formula [THFUnitaryFormula]
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TUF_THF_Quantified_Formula THFQuantifiedFormula
4673N/A | TUF_THF_Unary_Formula THFUnaryConnective THFLogicFormula
4673N/A | TUF_THF_Conditional THFLogicFormula THFLogicFormula THFLogicFormula
4673N/A | TUF_THF_Logic_Formula_Par THFLogicFormula
4673N/A | T0UF_THF_Abstraction THFVariableList THFUnitaryFormula
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TQF_THF_Quantified_Formula THFQuantifier THFVariableList THFUnitaryFormula
4673N/A | T0QF_THF_Quantified_Var Quantifier THFVariableList THFUnitaryFormula
4673N/A | T0QF_THF_Quantified_Novar THFQuantifier THFUnitaryFormula
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/Atype THFVariableList = [THFVariable]
4673N/A TV_THF_Typed_Variable Token THFTopLevelType
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A T0TC_Typed_Const Constant THFTopLevelType
4673N/A | T0TC_THF_TypedConst_Par THFTypedConst
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TTF_THF_Type_Formula THFTypeableFormula THFTopLevelType
4673N/A | TTF_THF_Typed_Const Constant THFTopLevelType
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
5821N/A | TTyF_THF_Logic_Formula THFLogicFormula
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TST_THF_Sub_Type Constant Constant
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TTLT_THF_Logic_Formula THFLogicFormula
4673N/A | T0TLT_Defined_Type DefinedType
4673N/A | T0TLT_THF_Binary_Type THFBinaryType
4673N/A deriving (Show, Eq, Ord, Typeable, Data)
4673N/A TUT_THF_Unitary_Formula THFUnitaryFormula
| T0UT_Defined_Type DefinedType
| T0UT_THF_Binary_Type_Par THFBinaryType
deriving (Show, Eq, Ord, Typeable, Data)
TBT_THF_Mapping_Type [THFUnitaryType]
| TBT_THF_Xprod_Type [THFUnitaryType]
| TBT_THF_Union_Type [THFUnitaryType]
| T0BT_THF_Binary_Type_Par THFBinaryType
deriving (Show, Eq, Ord, Typeable, Data)
| TA_THF_Conn_Term THFConnTerm
| TA_Defined_Type DefinedType
| TA_Defined_Plain_Formula DefinedPlainFormula
| TA_System_Atomic_Formula SystemTerm
| T0A_Defined_Constant Token
| T0A_System_Constant Token
deriving (Show, Eq, Ord, Typeable, Data)
type THFTuple = [THFLogicFormula]
TS_THF_Sequent THFTuple THFTuple
| TS_THF_Sequent_Par THFSequent
deriving (Show, Eq, Ord, Typeable, Data)
TCT_THF_Pair_Connective THFPairConnective
| TCT_Assoc_Connective AssocConnective
| TCT_THF_Unary_Connective THFUnaryConnective
| T0CT_THF_Quantifier THFQuantifier
deriving (Show, Eq, Ord, Typeable, Data)
| TQ_Dependent_Product -- !>
| TQ_Indefinite_Description -- @+
| TQ_Definite_Description -- @-
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)
data THFUnaryConnective =
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)
DT_oType | DT_o | DT_iType | DT_i
| DT_tType | DT_real | DT_rat | DT_int
deriving (Show, Eq, Ord, Typeable, Data)
data DefinedPlainFormula =
DPF_Defined_Prop DefinedProp
| DPF_Defined_Formula DefinedPred Arguments
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)
Disrinct | Less | Lesseq | Greater
deriving (Show, Eq, Ord, Typeable, Data)
T_Function_Term FunctionTerm
deriving (Show, Eq, Ord, Typeable, Data)
| FT_Defined_Term DefinedTerm
| FT_System_Term SystemTerm
deriving (Show, Eq, Ord, Typeable, Data)
PT_Plain_Term AtomicWord Arguments
deriving (Show, Eq, Ord, Typeable, Data)
type Constant = AtomicWord
DT_Defined_Atom DefinedAtom
| DT_Defined_Atomic_Term DefinedPlainTerm
deriving (Show, Eq, Ord, Typeable, Data)
| DA_Distinct_Object Token
deriving (Show, Eq, Ord, Typeable, Data)
DPT_Defined_Function DefinedFunctor Arguments
| DPT_Defined_Constant DefinedFunctor
deriving (Show, Eq, Ord, Typeable, Data)
UMinus | Sum | Difference | Product |
Quotient | Quotient_e | Quotient_t | Quotient_f |
Remainder_e | Remainder_t | Remainder_f |
Floor | Ceiling | Truncate | Round |
To_int | To_rat | To_real
deriving (Show, Eq, Ord, Typeable, Data)
ST_System_Term Token Arguments
| ST_System_Constant Token
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)
| S_Internal_Source IntroType OptionalInfo
| S_External_Source ExternalSource
deriving (Show, Eq, Ord, Typeable, Data)
| DS_Inference_Record AtomicWord UsefulInfo [ParentInfo]
deriving (Show, Eq, Ord, Typeable, Data)
PI_Parent_Info Source (Maybe GeneralList)
deriving (Show, Eq, Ord, Typeable, Data)
IT_definition | IT_axiom_of_choice | IT_tautology | IT_assumption
deriving (Show, Eq, Ord, Typeable, Data)
ES_File_Source FileSource
| ES_Theory TheoryName OptionalInfo
| ES_Creator_Source AtomicWord OptionalInfo
deriving (Show, Eq, Ord, Typeable, Data)
FS_File Token (Maybe Name)
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)
type OptionalInfo = (Maybe UsefulInfo)
type UsefulInfo = [InfoItem]
II_Formula_Item FormulaItem
| II_Inference_Item InferenceItem
| II_General_Function GeneralFunction
deriving (Show, Eq, Ord, Typeable, Data)
FI_Description_Item AtomicWord
| FI_Iquote_Item AtomicWord
deriving (Show, Eq, Ord, Typeable, Data)
II_Inference_Status InferenceStatus
| II_Assumptions_Record NameList
| II_New_Symbol_Record AtomicWord [PrincipalSymbol]
| II_Refutation FileSource
deriving (Show, Eq, Ord, Typeable, Data)
| IS_Inference_Info AtomicWord AtomicWord GeneralList
deriving (Show, Eq, Ord, Typeable, Data)
Suc | Unp | Sap | Esa | Sat | Fsa | Thm | Eqv | Tac
| Wec | Eth | Tau | Wtc | Wth | Cax | Sca | Tca | Wca
| Cup | Csp | Ecs | Csa | Cth | Ceq | Unc | Wcc | Ect
| Fun | Uns | Wuc | Wct | Scc | Uca | Noc
deriving (Show, Eq, Ord, Typeable, Data)
GT_General_Data GeneralData
| GT_General_Data_Term GeneralData GeneralTerm
| GT_General_List GeneralList
deriving (Show, Eq, Ord, Typeable, Data)
GD_Atomic_Word AtomicWord
| GD_Distinct_Object Token
| GD_Formula_Data FormulaData
| GD_Bind Token FormulaData
| GD_General_Function GeneralFunction
deriving (Show, Eq, Ord, Typeable, Data)
GF_General_Function AtomicWord GeneralTerms
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)
type GeneralList = GeneralTerms
type GeneralTerms = [GeneralTerm]
| T0N_Unsigned_Integer Token
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)
deriving (Show, Eq, Ord, Typeable, Data)