ѫ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  Safe-InferredMNone *+234BFHMPReturn random partition of n items into the given number of buckets if buckets>0Return [] if buckets=0None *+234BMB?Terms whose subterms are wrapped in the given type constructor cHFormulae whose subexpressions are wrapped in the given type constructor c. For example:c = : Plain formulaec = #: Formulae that may contain "holes"c = IORef0: (Mutable) formulae with mutable subexpressionsVariable namestTPTP constant symbol/predicate symbol/function symbol identifiers (they are output in single quotes unless they are  lower_words). Tip: Use the -XOverloadedStrings1 compiler flag if you don't want to have to type  AtomicWord to construct an  0Obtain the free variables from a formula or term Metadata (the  general_term rule in TPTP's grammar)Metadata (the  general_data rule in TPTP's grammar) Formula rolesMisc annotations%Annotations about the formulas origin Generalized TPTP_Input#Annotated formulae(}A line of a TPTP file: Annotated formula (with the comment string embbeded in the State monad ), comment or include statement)GA line of a TPTP file: Annotated formula, comment or include statement.*Quantifier specification-Term -> Term -> Formula infix connectives0Binary formula connectives1XOR2NOR3NAND4OR5AND6Reverse Implication7 Implication8 Equivalence9See  1http://haskell.org/haskellwiki/Indirect_composite{ for the point of the type parameters (they allow for future decorations). If you don't need decorations, you can just use H$ and the wrapped constructors above.:HFunction symbol application (constants are encoded as nullary functions);Double-quoted item<Number literal=Variable>See  1http://haskell.org/haskellwiki/Indirect_composite for the point of the type parameters (they allow for future decorations, e.g. monadic subformulae). If you don't need decorations, you can just use I$ and the wrapped constructors above.?Negation@Quantified formulaAPredicate applicationB6Infix predicate application (equalities, inequalities)CBinary connective applicationDTerms decorated with commentsE,First-order formulae decorated with commentsFTerms decorated with stateG)First-order formulae decorated with stateHBasic (undecorated) termsI(Basic (undecorated) first-order formulaeJ3Forget comments in formulae decorated with commentsK0Forget comments in terms decorated with commentsL EquivalenceImportant special case:  (.<=>.) :: I -> I -> IM ImplicationNReverse implicationODisjunction/ORPConjunction/ANDQXORRNORSNANDTNegationUEqualityV InequalityWUniversal quantificationXExistential quantificationYPredicate symbol applicationZVariable[HFunction symbol application (constants are encoded as nullary functions)\Number literal]%Double-quoted string literal, called Distinct Object in TPTP's grammar^@Forget comments in a line of a TPTP file decorated with comments_6Universally quantify all free variables in the formuladEliminate formulaeeEliminate termsw  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdHandle negationHandle quantificationHandle binary opHandle equality/inequality#Handle predicate symbol applicationHandle formulaeHandle string literalHandle number literalHandle variable"Handle function symbol application Handle termfghijklmnopqrstuvf  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdewIHGFEDJKLMNOPQRSTUVWXYZ[\]>CBA@?9=<;:087654321-/.*,+)(^ #"!$%&'  _vutsrqponmlkjih gf`abcdeE    #"!$%&'()*,+-/.0876543219=<;:>CBA@?DEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuv LMNOPQRSUVNone *+234BHMxConvert to TPTPyConvenient wrapper for xwxyzwxyzywxzwxyzNone*+234BFHMvCarries information about the enclosing operation (for the purpose of printing stuff without parentheses if possible).!{|}~ {|}~ {~}|{~}|None*+23468BHM@The arguments differ and are not of similar form (don't recurse)The arguments are recursive expressions of the same form, but their subterms differ. Return a "decorated" term that shows where the differences areBoth arguments are the same.Abstraction for diff'ing [predicate symbol|function symbol|gdata] applications Suggestive variable names for the case of function symbol applicationsGLess random generator for generating formulae suitable for testing diff"the diff functionnewtype wrappernewtype unwrapper"Application expression constructor First funsym First args Second funsum Second args NT wrapper NT unwrapepr constructor NT wrapper NT unwrapepr constructor None;BEncode a Haskell String to a list of Word8 values, in UTF8 format.X      !"#$%&'()*+,-./0123456789W      !"#$%&'()*+,-./0123456787      !"#$%&'()*+,-./0123456789 None! *+-./02345689:;<=?BCDFGHJKMe:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~`:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~\:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~< =  None! *+-./02345689:;<=?BCDFGHJKM]      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Z      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~X      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  None None  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdewxyz{|}~     !""#$%&'()*+,-./0123456789:;<=>?@ABC.D14EFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./01234567 8 9 : : ; < = > ? ? @ A B B C D D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                           8 9 : : ; < B B C D D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z {  } ~                        logic-TPTP-0.4.3.0Codec.TPTP.BaseCodec.TPTP.ExportCodec.TPTP.PrettyCodec.TPTP.DiffCodec.TPTP.ImportUtilCodec.TPTP.QuickCheckLexerParserCParser Codec.TPTPTrunTFrunFV AtomicWordFreeVarsfreeVarsGTermGListColonSepGData GFormulaDataGDistinctObjectGNumberGVarGAppGWordRoleunrole UsefulInfo NoUsefulInfo Annotations NoAnnotations TPTP_Input_IncludeCommentAFormulanameroleformula annotations TPTP_Input_C TPTP_InputQuantExistsAll InfixPred:!=::=:BinOp:<~>::~|::~&::|::&::<=::=>::<=>:Term0FunAppDistinctObjectTerm NumberLitTermVarFormula0:~:PredAppTermCFormulaCTermST FormulaSTTermFormulaforgetFCforgetTC.<=>..=>..<=..|..&..<~>..~|..~&..~..=..!=.for_allexistspAppvarfApp numberLitTermdistinctObjectTerm forgetTICunivquant_free_varsunwrapFunwrapT foldFormula0 foldTerm0foldFfoldT $fArbitraryV$fArbitraryAtomicWord$fArbitraryGTerm$fArbitraryGData$fArbitraryTerm0$fArbitraryQuant$fArbitraryInfixPred$fArbitraryBinOp$fArbitraryFormula0$fArbitraryRole$fArbitraryUsefulInfo$fArbitraryAnnotations $fArbitraryT $fArbitraryF$fArbitraryTPTP_Input_ $fFreeVarsT $fFreeVarsFToTPTPtoTPTPtoTPTP' isLowerWord Enclosing EnclNothing EnclInfixPredEnclNeg EnclQuant EnclBinOp WithEnclosing prettySimpleDiffablediffF0DiffT0Diff DiffResultDontCareDifferSameHeadSameisSamediffGenFdiffGenTprintSampleDiffsTokenSlash CommentTokenReal UnsignedInt SignedIntRanglePlusStar LowerWord UpperWordDollarDollarWord DollarWord DoubleQuoted SingleQuotedOperRbrackLbrackDotCommaRPLPparse parseFileparseWithCommentparseWithCommentFile arbPartitionargsFreqarbVar arbPrintable printable arbLowerWord arbUpperWordarbNumtransformers-0.4.3.0Data.Functor.IdentityIdentitybase Data.MaybeMaybescomma commaSepMap tptpQuote tptpSQuote isBetween isReallyAlnum showsRational $fToTPTPV $fToTPTPGData$fToTPTPAtomicWord $fToTPTPGTerm$fToTPTPUsefulInfo$fToTPTPAnnotations $fToTPTPTerm0$fToTPTPFormula0 $fToTPTPBinOp$fToTPTPInfixPred $fToTPTPQuant $fToTPTPRole$fToTPTPTPTP_Input_ $fToTPTP[]operpsymfsym prettyargs prational unaryEncl needsParens maybeParens $fPrettyV $fPrettyGTerm$fPrettyAtomicWord $fPrettyGData$fPrettyUsefulInfo$fPrettyAnnotations$fPrettyWithEnclosing$fPrettyWithEnclosing0 $fPrettyTerm0$fPrettyFormula0$fPrettyWithEnclosing1$fPrettyInfixPred $fPrettyBinOp$fPrettyWithEnclosing2 $fPrettyQuant$fPrettyTPTP_Input_ handleAppExpr handleBinExpr handleUnary handleLeafdiffTerm plugSubtermsplugSubformulae diffFormulawildcard prettyHelper $fDiffableTT $fDiffableFF$fFunctorDiffResult$fPrettyDiffResult$fPrettyDiffResult0$fShowF$fShowT utf8EncodeAlexAcc AlexAccSkip AlexAccNone AlexLastAcc AlexLastSkipAlexNone AlexReturn AlexTokenAlexSkip AlexErrorAlexEOFAlexAddrAlexA#AlexPosnAlexPn AlexInputByteignorePendingBytesalexInputPrevChar alexGetByte alexStartPosalexMovealexScanTokens alex_base alex_table alex_check alex_deflt alex_acceptwithPos stripPlusreadDecimalFraction readIntegerreadUnsignedDecimalFraction alex_action_1 alex_action_2 alex_action_3 alex_action_4 alex_action_5 alex_action_6 alex_action_7 alex_action_8 alex_action_9alex_action_10alex_action_11alex_action_12alex_action_13alex_action_14alex_action_15alex_action_16alex_action_17alex_action_18alex_action_19alex_action_20alex_action_21alex_action_22alexIndexInt16OffAddralexIndexInt32OffAddr quickIndexalexScan alexScanUser alex_scan_tkniUnbox$fFunctorAlexLastAcc HappyAddrHappyA#HappyStk Happy_IntList HappyCons Commented withCommentsATokentokcomm HappyIdentityHappyAny HappyAbsSynhappyIn4 happyOut4happyIn5 happyOut5happyIn6 happyOut6happyIn7 happyOut7happyIn8 happyOut8happyIn9 happyOut9 happyIn10 happyOut10 happyIn11 happyOut11 happyIn12 happyOut12 happyIn13 happyOut13 happyIn14 happyOut14 happyIn15 happyOut15 happyIn16 happyOut16 happyIn17 happyOut17 happyIn18 happyOut18 happyIn19 happyOut19 happyIn20 happyOut20 happyIn21 happyOut21 happyIn22 happyOut22 happyIn23 happyOut23 happyIn24 happyOut24 happyIn25 happyOut25 happyIn26 happyOut26 happyIn27 happyOut27 happyIn28 happyOut28 happyIn29 happyOut29 happyIn30 happyOut30 happyIn31 happyOut31 happyIn32 happyOut32 happyIn33 happyOut33 happyIn34 happyOut34 happyIn35 happyOut35 happyIn36 happyOut36 happyIn37 happyOut37 happyIn38 happyOut38 happyIn39 happyOut39 happyIn40 happyOut40 happyIn41 happyOut41 happyIn42 happyOut42 happyIn43 happyOut43 happyIn44 happyOut44 happyIn45 happyOut45 happyIn46 happyOut46 happyIn47 happyOut47 happyIn48 happyOut48 happyIn49 happyOut49 happyIn50 happyOut50 happyIn51 happyOut51 happyIn52 happyOut52 happyIn53 happyOut53 happyIn54 happyOut54 happyIn55 happyOut55 happyIn56 happyOut56 happyIn57 happyOut57 happyIn58 happyOut58 happyIn59 happyOut59 happyIn60 happyOut60 happyIn61 happyOut61 happyIn62 happyOut62 happyIn63 happyOut63 happyIn64 happyOut64 happyIn65 happyOut65 happyIn66 happyOut66 happyIn67 happyOut67 happyIn68 happyOut68 happyIn69 happyOut69 happyIn70 happyOut70 happyIn71 happyOut71 happyIn72 happyOut72 happyIn73 happyOut73 happyIn74 happyOut74 happyIn75 happyOut75 happyIn76 happyOut76 happyIn77 happyOut77 happyIn78 happyOut78 happyIn79 happyOut79 happyIn80 happyOut80 happyIn81 happyOut81 happyIn82 happyOut82 happyIn83 happyOut83 happyIn84 happyOut84 happyIn85 happyOut85 happyIn86 happyOut86 happyIn87 happyOut87 happyIn88 happyOut88 happyIn89 happyOut89 happyIn90 happyOut90 happyIn91 happyOut91 happyIn92 happyOut92 happyIn93 happyOut93 happyIn94 happyOut94 happyIn95 happyOut95 happyIn96 happyOut96 happyIn97 happyOut97 happyIn98 happyOut98 happyIn99 happyOut99 happyIn100 happyOut100 happyIn101 happyOut101 happyIn102 happyOut102 happyIn103 happyOut103 happyIn104 happyOut104 happyIn105 happyOut105 happyIn106 happyOut106 happyIn107 happyOut107 happyIn108 happyOut108 happyIn109 happyOut109 happyIn110 happyOut110 happyIn111 happyOut111 happyInTok happyOutTokhappyActOffsetshappyGotoOffsetshappyDefActions happyCheck happyTablehappyReduceArr happy_n_termshappy_n_nonterms happyReduce_1happyReduction_1 happyReduce_2happyReduction_2 happyReduce_3happyReduction_3 happyReduce_4happyReduction_4 happyReduce_5happyReduction_5 happyReduce_6happyReduction_6 happyReduce_7happyReduction_7 happyReduce_8happyReduction_8 happyReduce_9happyReduction_9happyReduce_10happyReduction_10happyReduce_11happyReduction_11happyReduce_12happyReduction_12happyReduce_13happyReduction_13happyReduce_14happyReduction_14happyReduce_15happyReduction_15happyReduce_16happyReduction_16happyReduce_17happyReduction_17happyReduce_18happyReduction_18happyReduce_19happyReduction_19happyReduce_20happyReduction_20happyReduce_21happyReduction_21happyReduce_22happyReduction_22happyReduce_23happyReduction_23happyReduce_24happyReduction_24happyReduce_25happyReduction_25happyReduce_26happyReduction_26happyReduce_27happyReduction_27happyReduce_28happyReduction_28happyReduce_29happyReduction_29happyReduce_30happyReduction_30happyReduce_31happyReduction_31happyReduce_32happyReduction_32happyReduce_33happyReduction_33happyReduce_34happyReduction_34happyReduce_35happyReduction_35happyReduce_36happyReduction_36happyReduce_37happyReduction_37happyReduce_38happyReduction_38happyReduce_39happyReduction_39happyReduce_40happyReduction_40happyReduce_41happyReduction_41happyReduce_42happyReduction_42happyReduce_43happyReduction_43happyReduce_44happyReduction_44happyReduce_45happyReduction_45happyReduce_46happyReduction_46happyReduce_47happyReduction_47happyReduce_48happyReduction_48happyReduce_49happyReduction_49happyReduce_50happyReduction_50happyReduce_51happyReduction_51happyReduce_52happyReduction_52happyReduce_53happyReduction_53happyReduce_54happyReduction_54happyReduce_55happyReduction_55happyReduce_56happyReduction_56happyReduce_57happyReduction_57happyReduce_58happyReduction_58happyReduce_59happyReduction_59happyReduce_60happyReduction_60happyReduce_61happyReduction_61happyReduce_62happyReduction_62happyReduce_63happyReduction_63happyReduce_64happyReduction_64happyReduce_65happyReduction_65happyReduce_66happyReduction_66happyReduce_67happyReduction_67happyReduce_68happyReduction_68happyReduce_69happyReduction_69happyReduce_70happyReduction_70happyReduce_71happyReduction_71happyReduce_72happyReduction_72happyReduce_73happyReduction_73happyReduce_74happyReduction_74happyReduce_75happyReduction_75happyReduce_76happyReduction_76happyReduce_77happyReduction_77happyReduce_78happyReduction_78happyReduce_79happyReduction_79happyReduce_80happyReduction_80happyReduce_81happyReduction_81happyReduce_82happyReduction_82happyReduce_83happyReduction_83happyReduce_84happyReduction_84happyReduce_85happyReduction_85happyReduce_86happyReduction_86happyReduce_87happyReduction_87happyReduce_88happyReduction_88happyReduce_89happyReduction_89happyReduce_90happyReduction_90happyReduce_91happyReduction_91happyReduce_92happyReduction_92happyReduce_93happyReduction_93happyReduce_94happyReduction_94happyReduce_95happyReduction_95happyReduce_96happyReduction_96happyReduce_97happyReduction_97happyReduce_98happyReduction_98happyReduce_99happyReduction_99happyReduce_100happyReduction_100happyReduce_101happyReduction_101happyReduce_102happyReduction_102happyReduce_103happyReduction_103happyReduce_104happyReduction_104happyReduce_105happyReduction_105happyReduce_106happyReduction_106happyReduce_107happyReduction_107happyReduce_108happyReduction_108happyReduce_109happyReduction_109happyReduce_110happyReduction_110happyReduce_111happyReduction_111happyReduce_112happyReduction_112happyReduce_113happyReduction_113happyReduce_114happyReduction_114happyReduce_115happyReduction_115happyReduce_116happyReduction_116happyReduce_117happyReduction_117happyReduce_118happyReduction_118happyReduce_119happyReduction_119happyReduce_120happyReduction_120happyReduce_121happyReduction_121happyReduce_122happyReduction_122happyReduce_123happyReduction_123happyReduce_124happyReduction_124happyReduce_125happyReduction_125happyReduce_126happyReduction_126happyReduce_127happyReduction_127happyReduce_128happyReduction_128happyReduce_129happyReduction_129happyReduce_130happyReduction_130happyReduce_131happyReduction_131happyReduce_132happyReduction_132happyReduce_133happyReduction_133happyReduce_134happyReduction_134happyReduce_135happyReduction_135happyReduce_136happyReduction_136happyReduce_137happyReduction_137happyReduce_138happyReduction_138happyReduce_139happyReduction_139happyReduce_140happyReduction_140happyReduce_141happyReduction_141happyReduce_142happyReduction_142happyReduce_143happyReduction_143happyReduce_144happyReduction_144happyReduce_145happyReduction_145happyReduce_146happyReduction_146happyReduce_147happyReduction_147happyReduce_148happyReduction_148happyReduce_149happyReduction_149happyReduce_150happyReduction_150happyReduce_151happyReduction_151happyReduce_152happyReduction_152happyReduce_153happyReduction_153happyReduce_154happyReduction_154happyReduce_155happyReduction_155happyReduce_156happyReduction_156happyReduce_157happyReduction_157happyReduce_158happyReduction_158happyReduce_159happyReduction_159happyReduce_160happyReduction_160happyReduce_161happyReduction_161happyReduce_162happyReduction_162happyReduce_163happyReduction_163happyReduce_164happyReduction_164happyReduce_165happyReduction_165happyReduce_166happyReduction_166 happyNewToken happyError_ happyIdentityhappyRunIdentity happyThen happyReturn happyThen1 happyReturn1 happyError'parseTPTPwithCommenthappySeq stripQuotes fApp2pApp happyParse happyAccept happyDoActionindexShortOffAddr happyShifthappySpecReduce_0happySpecReduce_1happySpecReduce_2happySpecReduce_3 happyReducehappyMonadReducehappyMonad2Reduce happyDrop happyDropStk happyGoto happyFail notHappyAtAll happyTcHack happyDoSeq happyDontSeq$fCommentedStateT$fCommentedIdentity$fMonadHappyIdentity$fApplicativeHappyIdentity$fFunctorHappyIdentity parseTPTP