h&G      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~              !!!!!!!!""""""""######$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''''''''''''''''''''''''''()4(c) 2016-2023 Dakotah LambertMIT Trustworthy'language-toolkit+Allow for overloading of the term alphabet.language-toolkitWrap a   type to sort in order of decreasing size. For elements of the same size, treat them normally.language-toolkitWrap a   type to sort in order of increasing size. For elements of the same size, treat them normally.language-toolkitA  is a ? that may contain more than one instance of any given element. language-toolkitThe   class is used for types that can be collapsed to a single value, like a fold over a list. Any structure c that is   must necessarily be  , since: collapse (:) [] cperforms a linearization. language-toolkitThe   class is used for types that can be traversed linearly in one direction. language-toolkitReturn the next element and the collection of remaining elements.language-toolkitThe  class is used for types that can contain objects and can be combined with , , and ' (relative complement). Instances of $ should satisfy the following laws: isIn == flip contains isNotIn == flip doesNotContain doesNotContain a == not . contains a contains a empty == False contains a (singleton b) == (a == b) contains a (insert b c) == (a == b) || contains a c contains a (union c1 c2) == contains a c1 || contains a c2 contains a (intersection c1 c2) == contains a c1 && contains a c2 intersection c c == c difference c c == emptylanguage-toolkit (union a b)6 returns a collection of elements that are in one of a or b , or both.language-toolkit(intersection a b)4 returns a collection of elements that are in both a and b.language-toolkit(difference a b)/ returns a collection of elements that are in a but not in b.language-toolkit(symmetricDifference a b)6 returns a collection of elements that are in one of a or b, but not both.language-toolkit(isSubsetOf y x) tells if x is a subset of y.language-toolkit(isSupersetOf y x) tells if x is a superset of y.language-toolkit(isProperSubsetOf y x) tells whether x is a proper subset of y.language-toolkit(isProperSupersetOf y x) tells whether x is a proper superset of y.language-toolkitLike  &, but discards the remaining elements. language-toolkitLike   , but discards the next element.!language-toolkitCombine two linearizable containers such that the elements of the first and second are inserted in an interleaving manner. For lists, this guarantees that a finite initial segment will contain elements from each, in contrast to the (++) operator."language-toolkit Analogue to isEmpty for Collapsible structures#language-toolkit#The size of the input as an integer$language-toolkitCombine s with .%language-toolkitCombine s with *. An empty source yields an empty result.&language-toolkit,True iff some element satisfies a predicate.'language-toolkit*True iff all elements satisfy a predicate.(language-toolkit:True iff the given object satisfies both given predicates.)language-toolkit%Appy a function to each element of a  .*language-toolkit4Retain only those elements that satisfy a predicate.+language-toolkit$Partition a Container. For example, 7groupBy (`mod` 3) [0..9] == [[0,3,6,9],[1,4,7],[2,5,8]],language-toolkitA fast + for  objects.-language-toolkit>A convenience function for the partition refinement operation..language-toolkitBuild a  from the elements of a  2. This can be used to cast between most types of . Time complexity is O(nci), where n+ is the number of elements in the source, c= is the cost of accessing a next element of the source, and i; is the cost of inserting an element into the destination./language-toolkit Analogous to :, returning the number of occurrences of an element in a . Time complexity is  O(\log{n}) , where n+ is the number of distinct elements in the .0language-toolkit/Every multiplicity that occurs in the multiset.1language-toolkitA specialization of . with time complexity O(n) , where n2 is the number of distinct elements in the source.2language-toolkitA specialization of ..3language-toolkitTranslate elements. All instances of elements of the search set are replaced by the corresponding elements of the replacement set in the given string. If the replacement set is smaller than the search set, it is made longer by repeating the last element.&tr "aeiou" "x" "colorless green ideas""cxlxrlxss grxxn xdxxs"tr "abcdefghijklmnopqrstuvwxyz" "nopqrstuvwxyzabcdefghijklm" "cat""png"4language-toolkitAll possible sequences over a given alphabet, generated in a breadth-first manner.5language-toolkitA fast method to extract elements from a set whose image under a monotonic function is a certain value. The precondition that the function is monotonic is not checked.6  !"#$%&'()*+,-./0123456  #".$%!&'()*+,-/021543(c) 2014-2023 Dakotah LambertMIT TrustworthyE>Olanguage-toolkitThe edges of an Z.Tlanguage-toolkit+A vertex of the graph representation of an Z is a T, which can be labelled with any arbitrary value, so long as every vertex of a single automaton is labelled with a distinct value of the same type.Wlanguage-toolkitThe label of a O.Xlanguage-toolkit.The edge may be taken without consuming input.Ylanguage-toolkit(The edge requires consuming this symbol.Zlanguage-toolkitA finite-state automaton (FSA) is represented by a directed graph, the edges of which are labelled by formal symbols.\language-toolkitalanguage-toolkit'The collection of all states in an FSA.blanguage-toolkit:An automaton accepting every string over a given alphabet.clanguage-toolkit8An automaton accepting no strings over a given alphabet.dlanguage-toolkitA specialization of c% where the alphabet is itself empty.elanguage-toolkitAn automaton that accepts only the given string, over a given alphabet.flanguage-toolkitAn automaton that accepts only the given string, over the minimal alphabet required to represent this string.glanguage-toolkitRemove X from a   of W- and present the unwrapped results as a new .hlanguage-toolkit&True iff the input accepts no strings.ilanguage-toolkitIntersect all given automata, in parallel if possible. An empty intersection is undefined. In theory it should be the total language over the total alphabet, but the latter cannot be defined. Intermediate results are evaluated to normal form.jlanguage-toolkitUnion all given automata, in parallel if possible. An empty union is defined as the empty language over an empty alphabet. Intermediate results are evaluated to normal form.klanguage-toolkitShuffle all given automata, in parallel if possible. An empty shuffle is defined as the singleton language over an empty alphabet containing only the empty string. Intermediate results are evaluated to normal form.llanguage-toolkitInfiltrate all given automata, in parallel if possible. An empty infiltration is defined as the singleton language over an empty alphabet containing only the empty string. Intermediate results are evaluated to normal form.mlanguage-toolkitReturns whether the given Z= lands in a final state after processing the given sequence.nlanguage-toolkitReturn an FSA representing possible continuations from a given sequence of symbols. If the input automaton is not complete then the output may have no states when given incompatible input.olanguage-toolkitReturn an FSA representing possible continuations in the second language from strings in the first language. In other words,  quotLeft a b returns \{w : x\in a, xw\in b\}.planguage-toolkitReturn an FSA representing possible strings in the first language which end with a string in the second language. In other words,  quotRight a b is \{w : wx\in a, x\in b\}.qlanguage-toolkit quotMid a b c is "\{wz : wx\in a, yx\in b, yz\in c\}. This lifts strings to a group, placing b-inverse between a and c. The time complexity of this function is abysmal, performing a left and a right quotient for each state in b.rlanguage-toolkit Returns an Z accepting all and only those strings accepted by the first input but rejected by the second.slanguage-toolkit Returns an Z accepting all and only those strings not accepted by the input.tlanguage-toolkit Returns the s of a deterministic Z. The precondition that the input is deterministic is not checked.ulanguage-toolkit (residue a b) is equivalent to (difference a b). In the context of an approximation and its source, represents the strings accepted by the approximation that should not be.vlanguage-toolkit(coresidue a b) is equivalent to (complement (residue a b)). In the context of an approximation and its source, represents unmet constraints of the source.wlanguage-toolkit6Returns the shuffle product of its two input autamata.xlanguage-toolkit;Returns the infiltration product of its two input autamata.ylanguage-toolkitThe Kleene Closure of an automaton is the free monoid under concatenation generated by all strings in the automaton's represented stringset. The resulting automaton is nondeterministic.zlanguage-toolkitReturns a deterministic Z recognizing the same stringset as the input, with a minimal number of states.{language-toolkitReturns a deterministic Z recognizing the same stringset as the input, with a minimal number of states. The precondition that the input is deterministic is not checked.|language-toolkit(Returns a non-necessarily deterministic Z minimized over a given relation. Some, but not all, relations do guarantee deterministic output. The precondition that the input is deterministic is not checked.}language-toolkit Two strings u and v% are equivalent iff for all strings w, uw and vw/ lead to states in the same equivalence class.~language-toolkit4The input automaton with unreachable states removed.language-toolkitThe reversal of an automaton accepts the reversals of all strings accepted by the original.language-toolkitReturns a normal form of the input. An FSA is in normal form if it is minimal and deterministic, and contains neither unreachable states nor nonaccepting sinks. Node labels are irrelevant, so $ is used as a small representation.language-toolkit-Given an automaton whose syntactic monoid is M, two strings u and v are equivalent iff MuM=MvMlanguage-toolkitThe primitive left ideal.language-toolkitThe generalized \delta4 function, follow each symbol in a string in order.language-toolkitThe primitive right ideal.language-toolkitThe primitive two-sided ideal.language-toolkitAn automaton is considered trivial under some equivalence relation if each of its equivalence classes is singleton.language-toolkit-Given an automaton whose syntactic monoid is M, two strings u and v are equivalent if Mu=Mv and uM=vM.language-toolkitReturns a deterministic automaton representing the same stringset as the potentially nondeterministic input.language-toolkitGiven an automaton M with stateset Q, the powerset graph of M3 is an automaton with stateset in the powerset of Q. From a node \{q_1,q_2,\ldots,q_n\}, there is an edge labelled \sigma that leads to \{\delta(q_1,\sigma), \delta(q_2,\sigma), \ldots, \delta(q_n, \sigma)\} , where \delta is the transition function of the input. The initial state is Q, and the result is complete.language-toolkitGiven an automaton M with stateset Q, the syntactic monoid of M# is an automaton with stateset in (Q\rightarrow Q)9. Here these functions are represented by lists, where q_i maps to the  i^\text{th}# element of the list. From a node !\langle q_1,q_2,\ldots,q_n\rangle, there is an edge labelled \sigma that leads to \langle\delta(q_1,\sigma), \delta(q_2,\sigma), \ldots, \delta(q_n, \sigma)\rangle , where \delta is the transition function of the input. The initial state is the identity function, and the result is complete.language-toolkitAdd missing symbols to the alphabet of an automaton. The result is an automaton with at least the provided alphabet that licenses exactly the same set of strings as the input.language-toolkitAdd missing symbols to the alphabet of an automaton. As the symbol  is taken to represent any symbol not currently in the alphabet, new edges are added in parallel to existing edges labelled by .language-toolkitRemove the semantic > edges from an automaton and reflect this change in the type.language-toolkitAdd self-loops on all symbols to all edges to compute an upward closure.language-toolkitConvert a semantic automaton that represents a Local constraint into a new one that represents the same constraint in the associated Tier-Local class.language-toolkitAllow a given set of symbols to be freely inserted or deleted. In other words, make those symbols neutral.language-toolkit1Remove symbols from the alphabet of an automaton.language-toolkitIgnore the alphabet of an automaton and use a given alphabet instead.language-toolkitEquivalent to  f , where f$ is an arbitrary injective function.language-toolkitTransform the node labels of an automaton using a given function. If this function is not injective, the resulting FSA may not be deterministic even if the original was.language-toolkitTransform the node labels of an automaton using a given function. The precondition (that for all states x < y, f x < f y) is not checked.language-toolkitTransform the edge labels of an automaton using a given function. If this function is not injective, the resulting FSA may not be deterministic even if the original was.language-toolkitTransform the edge labels of an automaton using a given function. The precondition (that for all symbols x < y, f x < f y) is not checked.  !"#$%&'()*+,-./012345OPRSQTUVWYXZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Z[\]^_`ahmbcdefnoqpyuvijlkrxwstz{~|}TUVWYXgOPRSQ(c) 2022 Dakotah LambertMIT Safe-InferredFlanguage-toolkit*True iff the automaton has a single state.(c) 2021-2023 Dakotah LambertMIT Safe-InferredK language-toolkit=A simpler way to denote syntactic monoids in type signatures.language-toolkitFor a given idempotent e, return the set generated by \{m : (\exists u,v)[umv=e]\}.language-toolkitFor a given idempotent e, return the set  me monoid e& multiplied on the left and right by e.language-toolkitThe semigroup multiplied on the left and right by the given idempotent.language-toolkitTrue iff the supplied elements commute with one another in the provided monoid.language-toolkit All elements e of the given monoid such that e*e=e;. Except the null word. Add that manually if you need it.language-toolkitomega monoid s is the unique element t where t*t = t and t is in \{s, s^2, s^3, \ldots\}. In other words, t/ is the unique idempotent element in this set.language-toolkitConstruct a monoid based on the idempotent paths as described by Straubing (1985). Elements are of the form  (e,esf,f) for idempotents e and f and arbitrary s.language-toolkitReturns a machine whose states represent monoid elements and where a transition exists from p to q if and only if p\leq q.  (c) 2023 Dakotah LambertMIT Safe-InferredN8language-toolkitDetermine whether a given semigroup is in the pseudovariety described by the given equation set. Returns Nothing if and only if the equation set cannot be parsed. The Boolean operand determines whether to check for a *-variety (True) or a +-variety (False). In other words, it determines whether the class containing the empty string is included.language-toolkitThe isVariety star desc function is equivalent to &isVarietyM star desc . syntacticMonoid."(c) 2019,2021-2022 Dakotah LambertMIT Safe-InferredOlanguage-toolkit8True iff the automaton recognizes a Star-Free stringset.language-toolkit!True iff the monoid is aperiodic."(c) 2019,2021-2022 Dakotah LambertMIT Safe-InferredPlanguage-toolkit1True iff the automaton recognizes a PT stringset.language-toolkitTrue iff the monoid is  \mathcal{J}-trivial(c) 2022-2023 Dakotah LambertMIT Safe-InferredSlanguage-toolkitTrue iff the given language is multiple-tier-based (co)finite.language-toolkitTrue iff the given language is multiple-tier-based generalized-definite.language-toolkitTrue iff the monoid satisfies xyx^{\omega}=yx^{\omega}.language-toolkitTrue iff the monoid satisfies x^{\omega}yx=x^{\omega}y.language-toolkit0True iff the monoid is aperiodic and satisfies x^{\omega}y=yx^{\omega}.language-toolkitTrue iff the monoid satisfies .x^{\omega}uxvx^{\omega}=x^{\omega}uvx^{\omega} and 1x^{\omega}uxzvz^{\omega}=x^{\omega}uzxvz^{\omega}3. Thanks to Almeida (1995) for the simplification. "(c) 2019,2021-2022 Dakotah LambertMIT Safe-InferredTlanguage-toolkit3True iff the automaton recognizes an LTT stringset.language-toolkit0True iff the monoid recognizes an LTT stringset. "(c) 2019,2021-2022 Dakotah LambertMIT Safe-InferredUlanguage-toolkit2True iff the automaton recognizes an LT stringset.language-toolkit3True iff the given monoid is locally a semilattice. (c) 2021-2023 Dakotah LambertMIT Safe-InferredVlanguage-toolkit3True iff the automaton recognizes an LPT stringset.language-toolkitTrue iff the monoid is locally  \mathcal{J} -trivial. (c) 2021-2023 Dakotah LambertMIT Safe-InferredWlanguage-toolkitTrue iff the automaton recognizes a generalized locally-testable stringset.language-toolkitTrue iff the monoid satisfies the generalized local testabiltiy condition. (c) 2021-2023 Dakotah LambertMIT Safe-InferredXlanguage-toolkit6True iff the syntactic monoid of the automaton is in \mathbf{M_e J}. This is a generalization of LPT in the same way that GLT is a generalization of LT.language-toolkit True iff the given monoid is in \mathbf{M_e J}.(c) 2021-2023 Dakotah LambertMIT Safe-Inferred^ language-toolkitTrue iff the automaton recognizes a stringset representable in \mathrm{FO}^{2}[<].language-toolkit-True iff the monoid represents a language in \mathrm{FO}^{2}[<].language-toolkitTrue iff the automaton recognizes a stringset representable in \mathrm{FO}^{2}[<,+1].language-toolkit(True iff the local subsemigroups are in \mathrm{FO}^{2}[<]. This means the whole is in \mathrm{FO}^{2}[<,+1].language-toolkitTrue iff the submonoid of monoid given by xs' is in DA. Results are unspecified if xs is not actually a submonoid.language-toolkitTrue iff the automaton recognizes a stringset representable in \mathrm{FO}^{2}[<,\mathrm{bet}]:. Labelling relations come in the typical unary variety  \sigma(x) meaning a \sigma appears at position x!, and also in a binary variety  \sigma(x,y) meaning a \sigma) appears strictly between the positions x and y.language-toolkit:True iff the monoid represents a stringset that satisfies isFO2B.language-toolkitTrue iff the automaton recognizes a stringset representable in "\mathrm{FO}^{2}[<,\mathrm{betfac}]. This is like \mathrm{FO}^{2}[<,\mathrm{bet}]* except betweenness is of entire factors.language-toolkit"True iff the monoid lies in MeDA*D(c) 2021-2022 Dakotah LambertMIT Safe-Inferred_language-toolkit:True iff the automaton recognizes a semilattice stringset.language-toolkit%True iff the monoid is a semilattice.(c) 2022-2023 Dakotah LambertMIT Safe-Inferred`language-toolkit$True iff the automaton recognizes a \langle 1,t\rangle-LTT stringset.language-toolkit0True iff the monoid is aperiodic and commutativelanguage-toolkit(True iff the specified elements commute.(c) 2019-2022 Dakotah LambertMIT Safe-Inferredalanguage-toolkit4True iff the automaton recognizes a LAcom stringset.language-toolkit1True iff the monoid recognizes a LAcom stringset."(c) 2017-2019,2023 Dakotah LambertMIT Safe-Inferredf^ language-toolkit!Multiple disjunctions, joined by AND.language-toolkit Multiple constraints, joined by OR.language-toolkit A constraint.language-toolkit in a given word, as well as the adjacency factors of length k and k+10. If a word is short enough to not contain any k-factors, the entire word, appropriately anchored, is included in the set.(c) 2020,2023 Dakotah LambertMIT Safe-Inferredplanguage-toolkit"A representation of a TSL grammar.language-toolkit Extract information from a word.*(c) 2019-2020 Dakotah LambertMIT Safe-Inferredp(c) 2019-2023 Dakotah Lambert Safe-InferreduMlanguage-toolkit5Take three strings and merge them in such a way that  (from ATT) can understand the result. The three strings should represent the transitions, input symbols, and output symbols, respectively.language-toolkitConvert the output of (to ATT) into strings suitable for inclusion. The result represents the transitions, input symbols, and output symbols in that order.language-toolkitConvert an AT&T format string into one where input and output symbols have been reversed.language-toolkitImport an FSA from its representation in AT&T format. Note that this import is not perfect; it discards weights and returns only the input projection.language-toolkit Convert an Z into its AT&T format, with one caveat: The LTK internal format allows for symbols that the AT&T format does not understand, and no attempt is made to work around this. Nonnumeric symbols are exported as-is, while numeric symbols are necessarily mapped to their tags in the symbols file(s)."(c) 2019-2020,2023 Dakotah Lambert Safe-Inferredulanguage-toolkit-Construct a prefix-tree of a (finite) corpus.+"(c) 2017-2019,2023 Dakotah LambertMIT Safe-Inferredx9language-toolkitReturn value is in the range [0 .. n] , where n' is the size of the input. A value of n2 indicates that the element was not in the input.language-toolkit Convert an Z' to its representation in the GraphViz dot format.language-toolkit Convert an Z' to its representation in the GraphViz dot format, with a provided name.language-toolkitTurn a  into a :formatSet (fromList [1, 2, 3]) "{1, 2, 3}",(c) 2022-2023 Dakotah LambertMIT Safe-Inferredxlanguage-toolkitDraw the egg-box representation of the given monoid in GraphViz dot format.-'(c) 2016-2019,2021,2023 Dakotah Lambert Safe-Inferred{language-toolkit Import an Z: from its representation in Jeff's format. The resulting Int node labels may have nothing to do with the node labels in the source.language-toolkitSee . This function operates directly on the representation of the edge label.language-toolkitAutomata in Jeff's format use edge labels of the form @w0.s1@. This function converts the edge labels of an automaton from this form to the @L`@ form that we tend to use.language-toolkit Convert an Z( to its representation in Jeff's format.language-toolkitThe inverse of .language-toolkitThe inverse of ..(c) 2022,2023 Dakotah LambertMIT Safe-Inferred|language-toolkitDraw the Hasse diagram of the syntactic order of the given monoid in GraphViz dot format.(c) 2019 Dakotah LambertMIT Safe-Inferred~language-toolkitDetermine the tier alphabet for which the given FSA is a preprojection. This could simply be the entire alphabet of the FSA. Precondition: the given FSA must be in normal form.language-toolkitRemove symbols not relevant to the given FSA's associated projection (as determined by tier7). Precondition: the given FSA must be in normal form."(c) 2019,2021-2022 Dakotah LambertMIT Safe-Inferrednlanguage-toolkit3True iff the automaton recognizes a TLTT stringset.language-toolkit0True iff the monoid recognizes a TLTT stringset."(c) 2019,2021-2022 Dakotah LambertMIT Safe-InferredXlanguage-toolkit2True iff the automaton recognizes a TLT stringset.language-toolkit/True iff the monoid recognizes a TLT stringset.(c) 2021-2022 Dakotah LambertMIT Safe-Inferred<language-toolkit3True iff the automaton recognizes a TLPT stringset.language-toolkit0True iff the monoid recognizes a TLPT stringset.(c) 2022 Dakotah LambertMIT Safe-Inferredlanguage-toolkit5True iff the automaton recognizes a TLAcom stringset.language-toolkit2True iff the monoid recognizes a TLAcom stringset. (c) 2021-2022 Dakotah LambertMIT Safe-Inferredlanguage-toolkitTrue iff the automaton recognizes a generalized definite stringset.language-toolkitTrue iff the monoid satisfies eSe=e for all idempotents e.language-toolkit?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~          +----    !!!!!!!!""""""""######$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''''''''''''''''''''''''''()+++,--.&&&&&&&&&&&&''/language-toolkit-1.1.0.0-G600Imrt0d4K1MVxWUL6rVLTK.ContainersLTK.FSALTK.Decide.Trivial LTK.AlgebraLTK.Decide.Variety LTK.Decide.SF LTK.Decide.PTLTK.Decide.MultitierLTK.Decide.LTT LTK.Decide.LTLTK.Decide.LPTLTK.Decide.GLTLTK.Decide.GLPTLTK.Decide.FO2 LTK.Decide.CBLTK.Decide.AcomLTK.Decide.LAcom LTK.FactorsLTK.Learn.StringExt LTK.Learn.SP LTK.Learn.SL#LTK.Learn.TSL.AugmentedSubsequencesLTK.Learn.TSL.ViaSLLTK.Porters.ATTLTK.Porters.Corpus LTK.Porters LTK.TiersLTK.Decide.TLTTLTK.Decide.TLTLTK.Decide.TLPTLTK.Decide.TLAcom LTK.Decide.GDLTK.Decide.FiniteLTK.Decide.Definite LTK.Decide.BLTK.TraversalsLTK.Extract.SPLTK.Porters.PlebLTK.Extract.SLLTK.Extract.TSLLTK.Decide.TSL LTK.Learn.TSLLTK.Porters.DotLTK.Porters.EggBoxLTK.Porters.JeffLTK.Porters.SyntacticOrder LTK.DecideM LTK.Decide.SP LTK.Extract LTK.Decide.SL LTK.DecideLTK HasAlphabetalphabetDecreasingSize getDecreasingIncreasingSize getIncreasingMultiset Collapsiblecollapsesize Linearizablechoose ContainerisInisNotIncontainsdoesNotContainisEmptyunion intersection differencesymmetricDifferenceemptyinsert singleton isSubsetOf isSupersetOfisProperSubsetOfisProperSupersetOf chooseOne discardOne interleavezsizeisizeunionAll intersectAllanySallSbothtmapkeepgroupBy partitionByrefinePartitionByfromCollapsible multiplicitymultiplicitiessetFromMultisetmultisetFromListtr sequencesOverextractMonotonic$fContainerSeta$fContainer[]a$fLinearizableSet$fLinearizable[]$fCollapsibleSet$fCollapsible[]$fReadMultiset$fShowMultiset$fMonoidMultiset$fSemigroupMultiset$fContainerMultiseta$fCollapsibleMultiset$fLinearizableMultiset$fFunctorIncreasingSize$fOrdIncreasingSize$fFunctorDecreasingSize$fOrdDecreasingSize$fEqDecreasingSize$fReadDecreasingSize$fShowDecreasingSize$fEqIncreasingSize$fReadIncreasingSize$fShowIncreasingSize $fEqMultiset $fOrdMultiset Transition edgeLabelsource destinationState nodeLabelSymbolEpsilonFSAsigma transitionsinitialsfinalsisDeterministicstatestotalWithAlphabetemptyWithAlphabet emptyLanguagesingletonWithAlphabetsingletonLanguage unsymbolsisNullflatIntersection flatUnion flatShuffleflatInfiltrationacceptsbrzozowskiDerivativequotLeft quotRightquotMid autDifference complementcomplementDeterministicresidue coresidue autShuffleautInfiltration kleeneClosureminimizeminimizeDeterministic minimizeOvernerodetrimUnreachablesreverse normalize jEquivalenceprimitiveIdealLfollowprimitiveIdealRprimitiveIdeal2 trivialUnder hEquivalence determinize powersetGraphsyntacticMonoidextendAlphabetTosemanticallyExtendAlphabetTo desemantifyloopifytierify neutralizecontractAlphabetToforceAlphabetTo renameStatesrenameStatesByrenameSymbolsBy$fNFDataSymbol$fFunctorSymbol $fNFDataState $fMonoidState$fSemigroupState $fMonadState$fApplicativeState$fFunctorState$fFunctorTransition$fNFDataTransition$fHasAlphabetFSA $fNFDataFSA $fMonoidFSA$fSemigroupFSA$fContainerFSA[]$fOrdFSA$fEqFSA$fFunctorNoitisnart $fNFDataTree$fEqTree $fOrdTree $fReadTree $fShowTree$fEqID$fOrdID$fReadID$fShowID $fShowFSA $fReadFSA$fEqTransition$fOrdTransition$fShowTransition$fReadTransition $fEqState $fOrdState $fReadState $fShowState $fEqSymbol $fOrdSymbol $fReadSymbol $fShowSymbol isTrivialSynMonmeemeeese isCommutative idempotentsomegaemblocksyntacticOrder isVarietyM isVariety $fEqETree $fOrdETree $fReadETree $fShowETree$fEqETag $fOrdETag $fReadETag $fShowETag $fEqVEquality$fOrdVEquality$fReadVEquality$fShowVEquality$fEqVEx$fOrdVEx $fReadVEx $fShowVExisSFisSFMisPTisPTMisMTDefisMTRDefisMTFisMTGDisMTDefM isMTRDefMisMTFMisMTGDMisLTTisLTTMisLTisLTMisLPTisLPTMisGLTisGLTMisGLPTisGLPTMisFO2isFO2MisFO2SisFO2SMisFO2BisFO2BMisFO2BFisFO2BFMisCBisCBMisAcomisAcomMcomTestisLAcomisLAcomM Conjunction DisjunctionLiteralFactor Substring Subsequence substring headAnchored tailAnchoredrequired forbidden buildLiteralbuildmakeConstraint$fEqConjunction$fOrdConjunction$fReadConjunction$fShowConjunction$fEqDisjunction$fOrdDisjunction$fReadDisjunction$fShowDisjunction $fEqLiteral $fOrdLiteral $fReadLiteral $fShowLiteral $fEqFactor $fOrdFactor $fReadFactor $fShowFactorGrammargenFSAaugmentGisSubGOfemptyGlearn augmentSEisRecognizedBySPGfSP $fGrammarSPG$fHasAlphabetSPG$fEqSPG$fOrdSPG $fReadSPG $fShowSPGSLGslgAlphaslgKslgfSL $fGrammarSLG$fHasAlphabetSLG$fEqSLG$fOrdSLG $fReadSLG $fShowSLGTSLGfTSL $fGrammarTSLG$fHasAlphabetTSLG$fEqTSLG $fOrdTSLG $fReadTSLG $fShowTSLGembedSymbolsATTextractSymbolsATT invertATTreadATT exportATT readCorpus formatSettransliterateString transliterateuntransliterateuntransliterateStringtierprojectisTLTTisTLTTMisTLTisTLTMisTLPTisTLPTMisTLAcom isTLAcomMisGDisGDMisTGDisTGDMisFinite isCofinite isFiniteM isCofiniteM isTFinite isTFiniteM isTCofinite isTCofiniteMisDefisDefMisRDefisRDefMisTDefisTDefMisTRDefisTRDefMisBisBMisLBisLBMisTLBisTLBMPathlabelsendstate stateMultisetdepthword extensions!nondeterministicAcyclicExtensionsboundedCycleExtensions initialsPathsinitialsNDPath acyclicPathsrejectingPaths isAcyclic $fMonoidPath$fSemigroupPath $fOrdPath$fEqPath $fShowPathForbiddenSubsequencesattestedAlphabetgetSubsequencesisSSQsubsequenceClosureforbiddenSubsequencesisSPfsaFromForbiddenSubsequences"$fContainerForbiddenSubsequences[]$fEqForbiddenSubsequences$fOrdForbiddenSubsequences$fReadForbiddenSubsequences$fShowForbiddenSubsequencesParsedoParse DictionarySymSetExprEnvTokentokenizereadPleb doStatements insertExpr compileEnv groundEnvrestrictUniverse makeAutomaton parseExprfromSemanticAutomaton fromAutomaton $fMonadParse$fAlternativeParse$fApplicativeParse$fFunctorParse $fEqUnaryExpr$fOrdUnaryExpr$fReadUnaryExpr$fShowUnaryExpr$fEqExpr $fOrdExpr $fReadExpr $fShowExpr $fEqNAryExpr $fOrdNAryExpr$fReadNAryExpr$fShowNAryExpr $fEqPLFactor $fOrdPLFactor$fReadPLFactor$fShowPLFactor $fEqToken $fOrdToken $fReadToken $fShowTokenCorpusATTOATTPlebSyntacticOrderEggBoxDotJeffType ImportabletoFSA ExportablefromFSAfromfromEto$fImportableJeff$fExportableJeff$fExportableDot$fExportableEggBox$fExportableSyntacticOrder$fImportablePleb$fExportableATT$fImportableATT$fExportableATTO$fImportableATTO$fImportableCorpusForbiddenPaths initialPaths freePaths finalPathsTaggedSubstringFreeInitialFinalWordForbiddenSubstrings attestedUnitsforbiddenWordsforbiddenInitialsforbiddenFreesforbiddenFinalsisSLslQfactorsFromPathsforbiddenSubstringsbuildFSA-$fContainerForbiddenSubstringsTaggedSubstring$fEqForbiddenPaths$fOrdForbiddenPaths$fEqTaggedSubstring$fOrdTaggedSubstring$fReadTaggedSubstring$fShowTaggedSubstring$fEqForbiddenSubstrings$fOrdForbiddenSubstrings$fShowForbiddenSubstrings$fReadForbiddenSubstringsforbiddenTierSubstringsisTSLcontainers-0.6.5.1Data.Set.InternalSetghc-prim GHC.TypesIntbase GHC.MaybeNothingrenameStatesByMonotonicrenameSymbolsByMonotonic fo2testFullfSP'allFs shortLabelIn exportDotexportDotWithNameGHC.BaseString exportEggBoxreadJeff exportJeffexportSyntacticOrderPLFactor UnaryExpr DownClose NeutralizeReversalUpCloseNAryExpr InfiltrationShuffle QuotientL QuotientRautomatonFromExprslPSGQforbiddenSubstringsWithAlphabet