w      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                                               None+EM_  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^Y  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^NoneM`SMTLIB2 query filed*Previous output (for incremental checking)e*Previous source (for incremental checking)f-JSON file containing result (annots + errors)g8Markdown file (temporarily generated from .Lhs + annots)hHTML file with templates?iFinal result: SAFE/UNSAFEj-Qualifiers file (e.g. include/Prelude.hquals)k%Spec file (e.g. include/Prelude.spec)lTypescript sourcemJavaScript sourcenLiterate Haskell source oHaskell source pVim annotation file qText file with inferred types r)HTML file with inferred type annotations s)Output from constraint solving (fixpoint)t&Input to constraint solving (fixpoint)u!Constraint Generation Informationv7Hardwired Paths and Files -----------------------------$_`abcdefghijklmnopqrstuvwxyz{|}~!_`abcdefghijklmnopqrstuvwxyz{|}~!_utsrqponmlkjihgfedcba`y{z}x|vw~_utsrqponmlkjihgfedcba`vwxyz{|}~None+024  !"#$%&' !"#$%&'None  *+024BM$Values that can be viewed as SymbolsF()*+,-./0123456789:;<=>?@A,,D()*+,-./0123456789:;<=>?@ANone *+./024BHLocated Values ---------------------------------------------------------DA Class Predicates for Valid Refinements Types ---------------------Name Parameters PredicateSource Location'Values that can be viewed as PredicatesCGeneralizing Symbol, Expression, Predicate into Classes -----------(Values that can be viewed as Expressions0EUninterpreted constants that are embedded as "constant symbol : Str"3constructed type4 type-var arity, in-ts ++ [out-t]5fixpoint type variable6uninterpreted type7numeric kind for Num tyvars>CEntities in Query File --------------------------------------------v&Functions for Indexed Bind Environmenty'Functions for Global Binder Environment:String Constants -----------------------------------------BReplace all symbol-representations-of-string-literals with string-literal Used to transform parsed output from fixpoint back into fq.C:Edit Distance --------------------------------------------D,The symbol may be an encoding of a SymConst.EFG parameters for Reft, vv + othersHIJKLMNOPQRSTUVWXY      !"#$%&'()*+,-./01Z[23456789:\;<=>?@ABCDEFGHIJK]^LMN_`OPQRSTabcUVWdeXfYghiZ[j\k]^_`lmnoabpcdefghiqjklmnopqrstuvwxyz{|r}s~tuvwxyz{|}~BCD      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~GHIJK~29876543:=OPQRSTUVWX01-/.#"! $,+*)('&%     ab^_`Zqjklmonrpstu}vxw{yz|cdefgih[]\YL;<MN>FEDCBA@?EFGHIJKLMNOPQRSTUVWXY       #"! $,+*)('&%-/.01Z[29876543:\;<=>FEDCBA@?GHIJK]^LMN_`OPQRSTabcUVWdeXfYghiZ[j\k]^_`lmnoabpcdefghiqjklmnopqrstuvwxyz{|r}s~tuvwxyz{|}~BCDNone234None+024BA BareBones Error Type -------------------------------------------BA Reusable SrcSpan Type ------------------------------------------ NoneEContext ctx< is built up in a "top-down" fashion but not across siblingsTransforms can access current ctx!Accumulations can access current ctx; acc value is monoidal       None Sort Substitutions Types used throughout checkerDChecking Refinements -----------------------------------------------DChecking Expressions -----------------------------------------------&Helper for checking symbol occurrences,Helper for checking if-then-else expressions%Helper for checking cast expressions 7Helper for checking uninterpreted function applications/Helper for checking binary (numeric) operationsDChecking Predicates ------------------------------------------------Checking RelationsLSpecial case for polymorphic singleton variable equality e.g. (x = Set_emp) &Special case for Unsorted Dis/EqualityDError messages -----------------------------------------------------DUtilities for working with sorts -----------------------------------Unification of Sorts"API for manipulating substitutionsDApplying a Type Substitution ---------------------------------------CDeconstruct a function-sort --------------------------------------->  ! "#$%&'()*+,-./0123456789:;<=>?@ABCD;  ! "#$%&'()*+,-./0123456789:;<=>?@ABCD None +024F BAST Conversion ---------------------------------------------------Types that can be serialized*Information about the external SMT process"Responses received from SMT engineCommands issued to SMT engineEETypes ---------------------------------------------------------------ESMT IO --------------------------------------------------------------ESMT Context ---------------------------------------------------------FHSMT Commands -----------------------------------------------------------GESet Theory ----------------------------------------------------------HESet Theory ----------------------------------------------------------]EIJKLMNOPQRSTUVWXYFZ[\]^_`GHabcdefghijklmnopqrstuvwxyz{|}~HEIJKLMNOPQRSTUVWXYFZ[\]^_`GHabcdefghijklmnopqrstuvwxyz{|}~ None24E@Parsing Qualifiers ---------------------------------------------@Parsing Constraints (.fq files) --------------------------------@Interacting with Fixpoint --------------------------------------f     '     '     d      NoneFOne Shot validity query ----------------------------------------------FSolve a system of horn-clause constraints ----------------------------      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      p !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMuNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                               f                !"#$%&'()*+,-./01234567LK89:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~k                          ! " # $ % & ' ( ) * + , - . / 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 { | } ~                                                                      liquid-fixpoint-0.2.1.0Language.Fixpoint.MiscLanguage.Fixpoint.FilesLanguage.Fixpoint.ConfigLanguage.Fixpoint.NamesLanguage.Fixpoint.TypesLanguage.Fixpoint.PrettyPrintLanguage.Fixpoint.ErrorsLanguage.Fixpoint.VisitorLanguage.Fixpoint.SortLanguage.Fixpoint.SmtLib2Language.Fixpoint.ParseLanguage.Fixpoint.InterfaceEmptyEmpMoodsAngryHappySadLoudOk moodColor wrapStarswrapStarsWithOptStars withColor colorStrLn colorPhaseLn startPhasedoneLinecolorPhaseLnWithOptStarsstartPhaseWithOptStarsdoneLineWithOptStars donePhasedonePhaseWithOptStars unIntersperse=>>wraprepeats errorstar errortextputDocLn assertstarfindWithDefaultLfst3snd3thd3singlemapFstmapSndmapFst3mapSnd3mapThd3 expandSndmapPairmlookup mfromJust boxStrCat tryIgnore traceShowwarnShowinserts concatMapsgroup groupListgroupMapsortNubsortDiffdistinct tr_reverse tr_foldr'safeZip safeZipWith safeFromList safeUnionsafeHeadsafeLastsafeInit memoIndex checkFail chopAfter chopPrefix firstElemchopAlt firstElems splitters bchopAltschopAlts findFirsttestM stripParensifMexecuteShellCommandexecuteShellCommandWithOptStars checkExitCodehashMapToAscListhashMapMapWithKeyhashMapMapKeys applyNonNull concatMapM angleBracketsdotarrowdcolon interspersetshowfoldlMap mapEither<$$>ExtSmt2DatPAssPredCacheSavedJsonMkdnCstResultHqualsSpecTsJsLHsHsVimAnnotHtmlOutFqCgigetFixpointPath getZ3LibPathwithExt extFileName tempDirectory extFileNameR isExtFile extModuleName copyFiles getFileInDirs SMTSolverZ3memMathsatCvc4Z3 UeqAllSortsUASGenQualifierSortGQSConfiginFileoutFilesolvergenSorts ueqAllSortsnativerealCommandcommand withTargetwithUEqAllSortsSymbolicsymbolSymbolsymChars symbolStringencode symbolText isPrefixOfSym isSuffixOfSym takeWhileSymheadSymconsSym singletonSym lengthSym unconsSymdropSymstripParensSym suffixSymbol qualifySymbolvvvvConisNontrivialVV dummySymbol intSymbol tempSymbol tempPrefix anfPrefix nonSymbol isNonSymbolintKvar preludeName dummyName boolConName funConName listConName tupConName propConName hpropConName strConNamevvName symSepNameprimsdropModuleNamestakeModuleNamesLocText LocSymbolLocatedLoclocvalisFalseReftableisTautoppTytopbotmeettoReftofReftparamsFInfoFIcmwsbsgslitskutsquals QualifierQq_nameq_paramsq_bodyq_posSubstSubablesymssubstasubstfsubstsubst1 FixSolution FixResult UnknownErrorUnsafeSafeCrashWfCSubCsidsinfoBindEnvSEnvIBindEnvFEnvBindIdTagSESearchAltsFound SortedReftRRsr_sortsr_reftReftRefaRKvarRConc Predicateprop ExpressionexprPTopPAllPAtomPBexpPIffPImpPNotPOrPAndPFalsePTrueExprEBotECstEIteEBinEAppELitEVarEConESymBopModDivTimesMinusPlusBrelUneUeqLeLtGeGtNeEqConstantRISymConstSLSortFAppFFuncFVarFObjFNumFRealFIntFTyconKutsKSTCEmbDefIBindKutQulConWfcAxmSrtFixpointtoFixsimplifyshowFixtraceFix reftKVarsksEmptyksUnion intFTyCon boolFTyCon realFTyCon strFTyCon propFTyCon appFTyCon fTyconSymbol symbolFTyconfAppfObj sortSubst isTautoPred isTautoReftisEVarisSingletonReftpAndpOrpIteeVarePropexprReft notExprReft uexprReftpropReftpredReftisNonTrivialSortedReftisFunctionSortedReft toListSEnv fromListSEnvmapSEnvmapSEnvWithKey deleteSEnv insertSEnv lookupSEnv emptySEnv memberSEnvintersectWithSEnv filterSEnvlookupSEnvWithDistance emptyIBindEnvdeleteIBindEnvinsertsIBindEnv insertBindEnv emptyBindEnv rawBindEnv mapBindEnv insertFEnv resultDoc colorResult subst1Except substfExcept substExceptmkSubst symbolRefttrueSortedRefttrueRefttrueRefa flattenRefas squishRefaswfCsubClhsCsrhsCsremoveLhsKvars trueSubCKvarshiftVVaddIds toFixpoint symConstLitsdummyLocdummyPosisDummyPPrintpprintshowpptrueDfalseDandDorD pprintBin$fPPrintLocated$fPPrintSortedReft $fPPrintReft $fPPrintRefa $fPPrintPred $fPPrintExpr$fPPrintSymConst$fPPrintSymbol $fPPrintSort $fPPrintBop $fPPrintBrel$fPPrintConstant$fPPrintInteger $fPPrintInt $fPPrint[] $fPPrint()$fPPrintSourcePos $fPPrint(,) $fPPrint(,,) $fPPrint[]0 $fPPrintMaybeErrorerrLocerrMsgSrcSpanSSsp_startsp_stop sourcePosElts dummySpan catMessagecatErrorerrdieVisitorctxExprctxPredtxExprtxPredaccExpraccPreddefaultVisitorfoldtranscheckSortedReftcheckSortedReftFull checkSortFull checkSortedpruneUnsortedReftSMTLIB2smt2ContextCtxpIdcIncOutcLogverboseResponseValuesUnknownUnsatSatGetValueDistinctAssertDefineDeclareCheckSatPopPushsmtWrite makeContextmakeContextNoLogcleanupContext smt_set_funs Inputablerrrr'Parserlexerreserved reservedOpparensbracketsanglessemicoloncomma whiteSpacebracesblanksinteger locParserPcondIdPupperIdPlowerIdP locLowerIdP locUpperIdPsymbolP constantPexprPfunAppPpredPfTyConPrefBindPbindPrefPrefDefP qualifierP remainderPdoParse' parseFromFile freshIntP checkValidsolve solveFile resultExitcheckMextMap tmpDirName smtSolver$fShowSMTSolver$fDefaultSMTSolver$fCommandSMTSolver$fCommandUeqAllSorts$fDefaultUeqAllSorts$fCommandGenQualifierSort$fDefaultGenQualifierSort$fCommandConfig$fDefaultConfigS encodeSymindices okSymChars fixSymPrefix isFixSym'isFixKeykeywords encodeChar decodeStr isQualified wrapParens isParenedmungeModuleNames$fSymbolicSymbol$fSymbolicInternedText$fSymbolicText $fSymbolic[]$fHashableSymbol$fNFDataSymbol $fShowSymbol$fNFDataInternedText$fHashableInternedText$fMonoidSymbolencodeSymConst editDistance$fExpressionSymbol SymConsts symConsts FalseableSuwenvwrftwidwinfosenvsgrdslhssrhsstagBEbe_sizebe_bindsSEse_bindsFBSubTC exprSymbols predSymbolstoFix_gstoFix_constantisListTCisTupTC isFAppTyTC fAppSorts fTyconSort toFix_sortzeroone isContraPred isTautoRaisEqmkPropppr_reft ppr_reft_predppRasrelReftsortedReftValueVariable toFix_bind ppr_sinfospprIdpprTag subSymbolappSubst emptySubstcatSubst unsafeMkSubstunsafeCatSubstunsafeCatSubstIgnoringDead safeCatSubst safeMkSubstvv_ falseReft conjunctspprQualgetLitsmeetReft sortSymConstdecodeSymConst litPrefixstrSort$fNFDataLocated$fHashableLocated$fSubableLocated $fOrdLocated $fEqLocated $fShowLocated$fTraversableLocated$fFoldableLocated$fFunctorLocated$fExpressionLocated$fSymbolicLocated$fFixpointLocated$fFixpointSourcePos$fIsStringLocated$fSymConstsPred$fSymConstsExpr$fSymConstsRefa$fSymConstsReft$fSymConstsSortedReft$fSymConstsSubC$fSymConstsFInfo$fFalseableReft$fFalseableRefa$fFalseablePred$fReftableSortedReft$fMonoidSortedReft $fMonoidSort$fReftableReft $fReftable() $fSubable() $fMonoidReft $fMonoidPred$fNFDataQualifier$fFixpointQualifier$fHashableFTycon $fNFDataWfC $fNFDataSubC$fNFDataSortedReft $fNFDataReft $fNFDataRefa $fNFDataPred $fNFDataExpr $fNFDataBop $fNFDataBrel$fNFDataSymConst$fNFDataConstant$fNFDataBindEnv$fNFDataIBindEnv $fNFDataSEnv $fNFDataSubst $fNFDataSub $fNFDataSort$fNFDataFTycon $fMonoidSubst$fSubableSortedReft $fSubableReft$fSubableHashMap $fSubable[] $fSubable(,) $fSubableRefa $fSubablePred $fSubableExpr$fSubableSymbol $fFixpointInt $fFixpointWfC$fFixpointSubC$fFixpointIBindEnv $fShowSubC$fFixpointFixResult$fFunctorFixResult$fMonoidFixResult $fEqFixResult $fShowSEnv$fFixpointSEnv$fFixpointBindEnv$fFixpointSEnv0$fFixpointSortedReft$fFixpointReft$fFixpointRefa $fFunctorSEnv $fShowReft$fPredicateBool$fPredicatePred$fPredicateSymbol$fExpressionInt$fExpressionInteger$fExpressionText$fExpressionExpr$fFixpointPred$fFixpointExpr $fFixpointBop$fFixpointBrel$fFixpointText$fFixpointSymbol$fFixpointSymConst$fFixpointConstant$fFixpointDouble$fFixpointInteger$fFixpointSubst $fShowSubst$fFixpointFTycon$fFixpointSort$fHashableSort $fFixpoint(,) $fFixpoint[]$fFixpointMaybe$fFixpointHashSet$fFixpointKuts $fNFDataKuts ppSrcSpan $fErrorError$fExceptionError$fFixpointError $fPPrintError$fHashableSrcSpan$fHashableSourcePos$fPPrintSrcSpan VisitablevisitVisitM execVisitMaccum visitMany visitExpr visitPred$fVisitableReft$fVisitableRefa$fVisitablePred$fVisitableExprTVSubstCheckM checkExprcheckSymcheckItecheckCst checkApp'checkOp checkPredcheckRel checkRelEqVarisAppTyerrUnifyunify lookupVarapply sortFunctionTh Checkablecheck checkSortEnvfProp checkRefa checkEqSort checkLocSymcheckApp checkOpTycheckFractional checkNumeric checkPredBExp checkRelTyisPolyfVars errUnifyManyerrRelerrBExperrOp errArgArityerrIteerrCast errUnbounderrUnboundAltserrNonFunction errNonNumericerrNonNumericserrNonFractionalerrUnexpectedPred unifyManyunify1unifyVar updateVarsortMap$fCheckableSortedReft$fCheckablePred$fCheckableExpr$fCheckableRefaRawsmtDecleltsetsmtRead responsePsexpPerrorPvaluesPpairPvalueP negativePpairs smtWriteRaw smtReadRaw hPutStrLnNow makeProcesssmtCmd smtPreamblesmtFilesmtPushsmtPop smtAssert smtDistinct smtCheckUnsatrespSat interact'empaddcupcapmemdifsubcomz3_432_options z3_options z3PreamblesmtlibPreamble mkSetSort mkEmptySetmkSetAddmkSetMemmkSetCupmkSetCapmkSetDifmkSetSubmkRelmkNesmt2s$fSMTLIB2Command $fSMTLIB2Pred $fSMTLIB2Expr $fSMTLIB2Brel $fSMTLIB2Bop$fSMTLIB2Located$fSMTLIB2Constant$fSMTLIB2SymConst$fSMTLIB2Symbol $fSMTLIB2SortfInfoP fixResultP languageDef stringLiteraldouble posInteger symconstPexpr0P charsExprfastIfPexpr1P parenBracketsbopseMinus exprCastPsortP symCharsP keyWordSymstruePfalsePpred0PpredsPqmPlopspredrPbrelPcondPcondIcondItePcondQmPrefasPoptBindP sortBindPmkQualmkParamdefP sortedReftPwfCPsubCPtagPenvPintP defsFInfocrashPpredSolPiQualP solution1P solutionP solutionFileP errorSpan commandsPcommandPcmdVarP $fInputable[]$fInputableCommand$fInputableFInfo$fInputable(,)$fInputableFixResult$fInputable[]0$fInputableExpr$fInputablePred$fInputableConstant$fInputableSymbol validFInfo validSubcresultexecFq fixCommandexitFqparseFixpointOutputplugCsanitizeFixpointOutput