E      !"#$%&'()*+,-./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 help Write output to file Take input from given file Invalid command  Apply up  Apply down ADT for a shell command Unparseable command Quit the shell Clear 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. ?Build 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 command Does 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 options Parse batch commands Handle batch input command Handle batch output command Is batch command apply up? *(  Safe-Inferred%%" Safe-Inferred4Pretty print, for more helpful parse error messages i      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWh      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVO      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWNone Safe-Inferred;Type class for the collection of symbols in an expression. DCombinators. 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 Symbol Epsilon  All symbol  Complement Transform the X* symbol to union over alphabet. ? -> [a|..] with respect to an alphabet [a] DConstruct a ?-free regular expression with respect to an alphabet [a] 8Reverse 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 plus Empty language  YZ[    YZ[ Safe-Inferred\Cartesian product of two lists ](Insert an entry into a transition table ^Merge two transition tables _8Remove transitions from state b from a transition table `-Tag a list of polymorphic type with integers \]^_`\]^_`\]^_` Safe-InferredClass of AutomatonFunctions Get 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 #1Get 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 language AUpper language BA relation between upper/lower languages /0123456789:;<=>?@AB'*+,-./0123456789:;<=>?@AB.*-,'BA@=?><;+/0123456789:/ 0123456789:;<=?>@AB Safe-InferredCType class TConvertable FData type for a transducer GInitial state HSet first state to null I#Get transition as a list of states JConstruct a transducer KMConvert transducer labelled with something other than states to a Transducer LProduct of two transducers MUnion of two transducers NKleene star of two transducers OCompose two transducers a!Does a transducer accept epsilon b:If the transducer accepts epsilon, return second argument PShow a transducer CDEFcdefghiGHIJKjLMNOabPk('*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPFCDEJKGIHLMNOPCDEFcdefghiGHIJKjLMNOabPk Safe-InferredlSubset transitions mList of unprocessed states nList of processed states oA list of subets p/A subset is an ordered set without duplication Q.Construct a deterministic, usefulS transducer lmnopqrsQtuvwQQ lmnopqrsQtuvw Safe-InferredR.Construct an epsilon-free, usefulS transducer RxRRRx Safe-InferredSReverse a transducer y(Helper function for transducer reversal SySSSy Safe-Inferredz+A transition betwee states in a transducer TApply a transducer upwards UApply a transducer downwards {+Generic function for applying a transducer zTU{|}~TUTUzTU{|}~  Safe-Inferred V!Datatype for a regular relations WEmpty language X(a:b) YIdentity relation ZKleene star [Union \Concatenation ]Composition ^Cross product _Cross product operator `Composition operator aIdentity relation b Relation VWXYZ[\]^_`ab) VWXYZ[\]^_`ab V^]\[ZYXW_`abV^]\[ZYXW_`ab  Safe-InferredcNeutral regular expressions rFIf possible, build a regular expression instead of a regular relation s"If possible, converts NReg to Reg tConvert variables to symbols cdefghijklmnopqrstcdefghijklmnopqrstcqponmlkjihgfedrstcqponmlkjihgfedrst Safe-Inferredu)Parse a regular expression from a string vParse a program from a string uv     uv     uv       Safe-InferredwType class for conversion to/from an automaton zData type for an automaton {Construct an automaton |5Convert automaton labelled with something other than  states to an z. }Display the automaton Instance of AutomatonFunctions wx"From an automaton to an structure y!From a structure to an Automaton z{|} !"#$%&'()*+,-.wxyz{|}zwxy{|}wxyz{|}  Safe-Inferred~FMake a automaton complete (transition on every symbol at every state) ~~~~ Safe-InferredSubset 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-Inferred1Data 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 LBFA 7Compile a regular expression to an minimal, useful and C deterministic automaton, using the LBFA algorithm while building. ,'Build a LBFA from a regular expression -4If the LBFA accepts epsilon, return second argument ./0123+4,-567 !"#$%&'()*+,-.wxyz{|} ./0123+4,-567 Safe-InferredReverse an automaton 8'Helper function for automaton reversal 88 Safe-Inferred3Compile a non-deterministic finite-state automaton @Minimize 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 automaton 2Get the initial state of a finite-state automaton 7Count the number of states in a finite-state automaton <Count the number of transitions in a finite-state automaton 8  !"#$%&'()*+,-.z}~ z~} Safe-Inferred5Data type for a LBFT (left-biased finite transducer) 9Does the LBFT accept epsilon? : Get the initial state of a LBFT %Compile a regular relation to a LBFT 5Compile a regular relation to an minimal, useful and D deterministic transducer, using the LBFT algorithm while building. ;%Build a LBFT from a regular relation <4If the LBFT accepts epsilon, return second argument =LBFT functions 9:>;<?@=1'*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP 9:>;<?@=  Safe-Inferred <Construct a deterministic, epsilon-free, minimal transducer NConstruct an epsilon-free, possibly non-deterministic, non-minimal transducer  Make a transducer deterministic Make a transducer minimal ,Return the number of states in a transducer 1Return the number of transitions in a transducer Load a transducer from file Save a transducer from file *Open a file and return contents as string $Save contents (as string) to a file The empty transucer > FILMNOPTUVWXYZ[\]^_`abuvFIPMLNOvuTU  Safe-InferredAState in interactive shell BEmpty information C*Is there a built transducer in the state? D)Is there a read expression in the state? E Is there an input in the state? F!Is there an output in the state? GSet transducer in state HSet expression in state ISet input in state JSet outputs in state KGet transducer from state LGet expression from state MGet input from state NGet outputs from state AOPQRSBCDEFGHIJKLMNAOPQRSBCDEFGHIJKLMNAOPQRSBCDEFGHIJKLMNT !"#$%&'()*+,-./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.0 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$fAutomatonFunctionsAutomaton initialStatescompleteStatesbuild fetchState $fShowLBFA$fConvertableLBFA$fAutomatonFunctionsLBFA initialLBFT$fTransducerFunctionsLBFT $fShowLBFT$fTConvertableLBFTInfo emptyInfotransducerBuiltexpressionRead inputRead outputsReadupdateTransducerupdateExpression updateInput updateOutputs getTransducer getExpressiongetInput getOutputs transducer expressioninputoutputs