7      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUV 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 { | } ~   Safe-Inferred*Batch command ADT Display helpWrite output to fileTake input from given fileInvalid commandApply up Apply downADT for a shell commandUnparseable commandQuit the shellClear loaded transducersinputoutput.List commands.View loaded/built transducer.View prodeced output.View loaded input.#View loaded/typed regular relation.&Apply tranducer up with given symbols.(Apply tranducer down with given symbols.&Apply transducer up with loaded input.(Apply transducer down with loaded input. Save to file.!Load and compose two transducers.-Load and apply Kleene's star on a transducer.%Load and concatenate two transducers.Load and union two transducers.Load from FILE.,Read a regular relation from standard input.Determinize a built transducer.Minimize a built transducer.nBuild an epsilon-free, possibly non-deterministic, non-minimal transducer from a load/typed regular relation._Build an epsilon-free, deterministic, minimal transducer from a loaded/typed regular relation.!Parse input string into a commandDoes the file end with .fst?Does the file end with .dat?Does the file end with .net?+Is the internal transducer being specified? Is apply up?%Information for parsing batch optionsParse batch commandsHandle batch input commandHandle batch output commandIs batch command apply up?*(  Safe-Inferred%%" Safe-Inferred3Pretty print, for more helpful parse error messagesi      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWh      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVO      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWNone$3B Safe-Inferred:Type class for the collection of symbols in an expression.CCombinators. The regular expressions are simplified while combined.#Data type for a regular expression.  r2 * ~[ r1 ]  r1 & r2  r1 r2  r1 | r2 a?0   Intersection !Minus. Definition A - B = A & ~B SymbolEpsilon All symbol ComplementTransform the XK symbol to union over alphabet. ? -> [a|..] with respect to an alphabet [a]EConstruct a ?-free regular expression with respect to an alphabet [a]7Reverse the language denoted by the regular expression.:Examines if a regular expression accepts the empty string.,Collect the symbols in a regular expression.Union Concatenation Kleene's star Kleene's plusEmpty language YZ[    YZ[ Safe-Inferred\Cartesian product of two lists]'Insert an entry into a transition table^Merge two transition tables_7Remove transitions from state b from a transition table`,Tag a list of polymorphic type with integers\]^_`\]^_`\]^_` Safe-InferredClass of AutomatonFunctionsGet the states of an automaton!Is the given state a final state?$Get the final states of an automaton &Get the initial states of an automaton!"Get the transitions w.r.t. a state"Get the transitionTable#0Get the transitions w.r.t. a state and a symbol$"Get the first state of a automaton%!Get the last state of a automaton& Get the alphabet of an automaton'The alphabet of an automaton(Table of transitions) Transitions* Final states+Initial states, Last state- First state.A state !"#$%&'()*+,-. !"#$%&'()*+,-..-,+*)(' !"#$%&   !"#$%&'()*+,-. Safe-Inferred/Class of TransducerFunctions;Transducer transition table<Transducer transitions=A symbol@Lower languageAUpper languageB(A relation between upper/lower languages/0123456789:;<=>?@AB'*+,-./0123456789:;<=>?@AB.*-,'BA@=?><;+/0123456789:/ 0123456789:;<=?>@AB Safe-InferredCType class TConvertableFData type for a transducerG Initial stateHSet first state to nullI"Get transition as a list of statesJConstruct a transducerKLConvert transducer labelled with something other than states to a TransducerLProduct of two transducersMUnion of two transducersNKleene star of two transducersOCompose two transducersa Does a transducer accept epsilonb9If the transducer accepts epsilon, return second argumentPShow a transducerCDEFcdefghiGHIJKjLMNOabPk('*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPFCDEJKGIHLMNOPCDEFcdefghiGHIJKjLMNOabPk Safe-InferredlSubset transitionsmList of unprocessed statesnList of processed statesoA list of subetsp.A subset is an ordered set without duplicationQ-Construct a deterministic, usefulS transducer lmnopqrsQtuvwQQ lmnopqrsQtuvw Safe-InferredR-Construct an epsilon-free, usefulS transducerRxRRRx Safe-InferredSReverse a transducery'Helper function for transducer reversalSySSSy Safe-Inferredz*A transition betwee states in a transducerTApply a transducer upwardsUApply a transducer downwards{*Generic function for applying a transducerzTU{|}~TUTUzTU{|}~  Safe-Inferred V Datatype for a regular relationsWEmpty language X(a:b) YIdentity relation ZKleene star [Union \Concatenation ]Composition ^Cross product _Cross product operator`Composition operatoraIdentity relationbRelationVWXYZ[\]^_`ab) VWXYZ[\]^_`ab V^]\[ZYXW_`abV^]\[ZYXW_`ab_`  Safe-InferredcNeutral regular expressionsrEIf possible, build a regular expression instead of a regular relations!If possible, converts NReg to RegtConvert variables to symbolscdefghijklmnopqrstcdefghijklmnopqrstcqponmlkjihgfedrstcqponmlkjihgfedrst Safe-Inferredu(Parse a regular expression from a stringvParse a program from a stringuv     uv     uv         Safe-Inferredw.Type class for conversion to/from an automatonzData type for an automaton{Construct an automaton|EConvert automaton labelled with something other than states to an z.}Display the automatonInstance of AutomatonFunctionswx!From an automaton to an structurey From a structure to an Automatonz{|} !"#$%&'()*+,-.wxyz{|}zwxy{|}wxyz{|}  Safe-InferredE~EMake a automaton complete (transition on every symbol at every state)~ ~~~  Safe-Inferred!Subset transitions"List of unprocessed states#List of processed states$A list of subets%.A subset is an ordered set without duplication+Make an automaton deterministic and usefulS !"#$%&'()*+, !"#$%&'()*+, Safe-Inferred0Data type for LBFA (left-biased finite automata)Get the initial state of a LBFA-Does the LBFA accept epsilon?&Compile a regular expression to a LBFAyCompile a regular expression to an minimal, useful and deterministic automaton, using the LBFA algorithm while building..&Build a LBFA from a regular expression/3If the LBFA accepts epsilon, return second argument012345-6./789 !"#$%&'()*+,-.wxyz{|} 012345-6./789 Safe-InferredReverse an automaton:&Helper function for automaton reversal:: Safe-Inferred2Compile a non-deterministic finite-state automatonMinimize an automaton using the Brzozowski algorithm. Note that the determinize function must construct an automaton with the usefulS property.=Make a non-deterministic finite-state automaton deterministic<Compile a minimized non-deterministic finite-state automaton1Get the initial state of a finite-state automaton6Count the number of states in a finite-state automaton;Count the number of transitions in a finite-state automaton8  !"#$%&'()*+,-.z}~ z~} Safe-Inferred4Data type for a LBFT (left-biased finite transducer);Does the LBFT accept epsilon?<Get the initial state of a LBFT$Compile a regular relation to a LBFTxCompile a regular relation to an minimal, useful and deterministic transducer, using the LBFT algorithm while building.=$Build a LBFT from a regular relation>3If the LBFT accepts epsilon, return second argument?LBFT functions;<@=>AB?1'*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP ;<@=>AB?  Safe-InferredM ;Construct a deterministic, epsilon-free, minimal transducerMConstruct an epsilon-free, possibly non-deterministic, non-minimal transducerMake a transducer deterministicMake a transducer minimal+Return the number of states in a transducer0Return the number of transitions in a transducerLoad a transducer from fileSave a transducer from file)Open a file and return contents as string#Save contents (as string) to a fileThe empty transucer > FILMNOPTUVWXYZ[\]^_`abuvFIPMLNOvuTU  Safe-InferredCState in interactive shellDEmpty informationE)Is there a built transducer in the state?F(Is there a read expression in the state?GIs there an input in the state?H Is there an output in the state?ISet transducer in stateJSet expression in stateKSet input in stateLSet outputs in stateMGet transducer from stateNGet expression from stateOGet input from statePGet outputs from stateCQRSTUDEFGHIJKLMNOPCQRSTUDEFGHIJKLMNOPCQRSTUDEFGHIJKLMNOPV !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHI78:9<;JK>?@LM(NOPQRSTUVWX=YZ[\]^_`a4bc d e R f g h i j k l m n o p q r s t u v w x y z { | } ~    T U  Y Z `W4`W `       1 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^ V_`abcdefghhijklmnopqrstu v w xyyzz{|}~r     _  ` a defghhijklmn^ p^  !"#$%&'()* fst-0.10.0.1 FST.RegTypesFST.AutomatonTypesFST.TransducerTypesFST.TransducerFST.DeterministicTFST.EpsilonFreeT FST.ReversalTFST.RunTransducer FST.RRegTypesFST.NRegFST.TransducerInterface FST.Automaton FST.CompleteFST.DeterministicFST.LBFA FST.ReversalFST.AutomatonInterfaceFST.LBFT FST.ArgumentsFST.Alex FST.Lexer FST.FSTStudio FST.Utils FST.ParseFST.InfoSymbolssymbols Combinators<|>|>starplusemptyRegStar Complement:&::.::|:SymbolAllEpsilonEmpty<&><->sepsallS complement allToSymbolsallFreereversal acceptEpsAutomatonFunctionsstatesisFinalfinalsinitialstransitionListtransitionTable transitions firstState lastStatealphabetSigmaTransitionTable Transitions FinalStates InitialStates LastState FirstStateStateTyTransducerFunctions transitionsU transitionsDTTransitionTable TTransitionsEpsSLowerUpperRelation TConvertableencodedecode TransducerinitialnullFirstState constructrenameproductTunionTstarT compositionTshowTransducer determinize epsilonfreeapplyUp applyDownRRegEmptyRIdentityStarRUnionRProductRCompCross<*><.>idRrNRegNAllFunNVar NEmptySetNEpsilon NRelationNSymbol NComplementNStar NIntersectNProductNUnionNCompNCrosstoRRegtoReg nVarToSymbolparseExp parseProgram Convertable Automaton showAutomatoncompleteLBFA compileToLBFAcompileToAutomaton compileNFAminimizecompilenumberOfStatesnumberOfTransitionsLBFTtransinitSfinalSalphalastS compileToLBFTcompileToTransducercompileNloadsaveopen saveToFileemptyTransducer BatchCommandHelpBOutputInputInvalidCommandUpBDownBInteractiveCommand NoCommandQuit ClearMemoryHelpViewTransducer ViewOutput ViewInputViewRegApplyUApplyDApplyUp ApplyDownSave LCompositionLStarLProductLUnionLoadStdInReg DeterminizeMinimizeBuildNTransducerBuildTransducerparseInteractiveisFSTisDATisNETisTHIS isApplyUp batchOptions parseBatchinputBoutputBisUpBArrDump AcceptDumpDFADump StartCodeAcceptAccStateStSNumDFASv GStopAction GTokenActionGActionsGScanScan StopAction TokenActionActionsPosnPn start_poseof_posmove_pos load_scanscanscan' load_gscangscangscan' scan_token check_ctxscan_tkndump_dfaload_dfa recover_dfa dfa_alphabet prettyPrintTokenErrTokenVarTokenDef TokenMainTokenFunTokenNum TokenRepeatTokenCompositionTokenCrossproduct TokenRelationTokenSTokenAllTokenEps TokenPlus TokenUnionTokenIntersect TokenMinusTokenContainmentTokenComplement TokenStar TokenConcatSTokenSCBTokenSOBTokenHCBTokenHOB TokenSemiName semicolonlistEpshardOpenBrackethardClosedBracketsoftOpenBracketsoftClosedBracketunionequalrelation repeatSymbol containmentminus intersectzeroEps allSymbol crossproduct compositionsymbolesymbol concatsymbolsmainId definitionsvariablelitintparamslexer tokens_scan token_actstoken_lxlx__0_0lx__1_0lx__2_0lx__3_0lx__4_0lx__5_0lx__6_0lx__7_0lx__8_0lx__9_0lx__10_0lx__11_0lx__12_0lx__13_0lx__14_0lx__15_0lx__16_0lx__17_0lx__18_0lx__19_0lx__20_0lx__21_0lx__22_0lx__23_0lx__24_0lx__25_0lx__26_0lx__27_0lx__28_0lx__29_0lx__30_0lx__31_0lx__32_0lx__33_0lx__34_0lx__35_0lx__36_0lx__37_0lx__38_0lx__39_0lx__40_0lx__41_0lx__42_0 $fShowTokenbaseGHC.Listall $fShowReg $fSymbolsReg$fCombinatorsRegcrossinsertmergeremovetagging acceptEpsilon stateTrans finalStatesfirstSrenameT$fTransducerFunctionsTransducerSubTransitionsUnDoneDoneSubSetsSubSetsub containsFinaldetgetTransitionsgroupBySymbols $fEqSubSetepsFree reverseTransTransitionFunctionapply runEpsilon runSymbol transform $fShowRReg $fSymbolsRReg$fCombinatorsRReg HappyStateHappyStkDefFunctionMainEFailEOk HappyAbsSyn HappyAbsSyn7 HappyAbsSyn6 HappyAbsSyn5HappyErrorToken HappyTerminalaction_0action_1action_2action_3action_4action_5action_6action_7action_8action_9 action_10 action_11 action_12 action_13 action_14 action_15 action_16 action_17 action_18 action_19 action_20 action_21 action_22 action_23 action_24 action_25 action_26 action_27 action_28 action_29 action_30 action_31 action_32 action_33 action_34 action_35 action_36 action_37 action_38 action_39 action_40 action_41 action_42 action_43 action_44 action_45 action_46 action_47 action_48 action_49 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_26 happyNewToken happyThen happyReturn happyThen1 happyReturn1parse parseNReg happyErrorthenEreturnEfailE functionalgetMainapplyFunreplace parseList happyParse happyAccept happyShifthappySpecReduce_0happySpecReduce_1happySpecReduce_2happySpecReduce_3 happyReducehappyMonadReduce happyDrop happyDropStk happyGoto happyFail notHappyAtAll$fMonadE$fApplicativeE $fFunctorE$fAutomatonFunctionsAutomaton initialStatescompleteStatesbuild fetchState $fShowLBFA$fConvertableLBFA$fAutomatonFunctionsLBFA initialLBFT$fTransducerFunctionsLBFT $fShowLBFT$fTConvertableLBFTInfo emptyInfotransducerBuiltexpressionRead inputRead outputsReadupdateTransducerupdateExpression updateInput updateOutputs getTransducer getExpressiongetInput getOutputs transducer expressioninputoutputs