Quotient Automaton
   HOME

TheInfoList



OR:

In
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
, in particular in
formal language theory In logic, mathematics, computer science, and linguistics, a formal language is a set of string (computer science), strings whose symbols are taken from a set called "#Definition, alphabet". The alphabet of a formal language consists of symbol ...
, a quotient automaton can be obtained from a given
nondeterministic finite automaton In automata theory, a finite-state machine is called a deterministic finite automaton (DFA), if * each of its transitions is ''uniquely'' determined by its source state and input symbol, and * reading an input symbol is required for each state tr ...
by joining some of its states. The quotient recognizes a superset of the given automaton; in some cases, handled by the
Myhill–Nerode theorem In the theory of formal languages, the Myhill–Nerode theorem provides a necessary and sufficient condition for a language to be regular. The theorem is named for John Myhill and Anil Nerode, who proved it at the University of Chicago in 1957 . ...
, both languages are equal.


Formal definition

A (nondeterministic)
finite automaton A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
is a
quintuple In mathematics, a tuple is a finite sequence or ''ordered list'' of numbers or, more generally, mathematical objects, which are called the ''elements'' of the tuple. An -tuple is a tuple of elements, where is a non-negative integer. There is on ...
''A'' = ⟨''Σ'', ''S'', ''s''0, ''δ'', ''S''f⟩, where: * ''Σ'' is the input
alphabet An alphabet is a standard set of letter (alphabet), letters written to represent particular sounds in a spoken language. Specifically, letters largely correspond to phonemes as the smallest sound segments that can distinguish one word from a ...
(a finite, non-empty
set Set, The Set, SET or SETS may refer to: Science, technology, and mathematics Mathematics *Set (mathematics), a collection of elements *Category of sets, the category whose objects and morphisms are sets and total functions, respectively Electro ...
of symbols), * ''S'' is a finite, non-empty set of states, * ''s''0 is the initial state, an element of ''S'', * ''δ'' is the state-transition
relation Relation or relations may refer to: General uses * International relations, the study of interconnection of politics, economics, and law on a global level * Interpersonal relationship, association or acquaintance between two or more people * ...
: ''δ'' ⊆ ''S'' × ''Σ'' × ''S'', and * ''S''f is the set of final states, a (possibly empty) subset of ''S''.Hopcroft and Ullman (sect.2.3, p.20) use a slightly deviating definition of ''δ'', viz. as a
function Function or functionality may refer to: Computing * Function key, a type of key on computer keyboards * Function model, a structured representation of processes in a system * Function object or functor or functionoid, a concept of object-orie ...
from ''S'' × ''Σ'' to the
power set In mathematics, the power set (or powerset) of a set is the set of all subsets of , including the empty set and itself. In axiomatic set theory (as developed, for example, in the ZFC axioms), the existence of the power set of any set is po ...
of ''S''.
A
string String or strings may refer to: *String (structure), a long flexible structure made from threads twisted together, which is used to tie, bind, or hang other objects Arts, entertainment, and media Films * ''Strings'' (1991 film), a Canadian anim ...
''a''1...''a''''n'' ∈ ''Σ'' * is recognized by ''A'' if there exist states ''s''1, ..., ''s''''n'' ∈ ''S'' such that ⟨''s''''i''-1,''a''''i'',''s''''i''⟩ ∈ ''δ'' for ''i''=1,...,''n'', and ''s''''n'' ∈ ''S''f. The set of all strings recognized by ''A'' is called the
language Language is a structured system of communication that consists of grammar and vocabulary. It is the primary means by which humans convey meaning, both in spoken and signed language, signed forms, and may also be conveyed through writing syste ...
recognized by ''A''; it is denoted as ''L''(''A''). For an
equivalence relation In mathematics, an equivalence relation is a binary relation that is reflexive, symmetric, and transitive. The equipollence relation between line segments in geometry is a common example of an equivalence relation. A simpler example is equ ...
≈ on the set ''S'' of ''A''’s states, the quotient automaton ''A''/ = ⟨''Σ'', ''S''/, 's''0 ''δ''/, ''S''f/⟩ is defined by * the input alphabet ''Σ'' being the same as that of ''A'', * the state set ''S''/ being the set of all
equivalence class In mathematics, when the elements of some set S have a notion of equivalence (formalized as an equivalence relation), then one may naturally split the set S into equivalence classes. These equivalence classes are constructed so that elements ...
es of states from ''S'', * the start state 's''0being the equivalence class of ''A''’s start state, * the state-transition relation ''δ''/ being defined by ''δ''/( 's''''a'', 't'' if ''δ''(''s'',''a'',''t'') for some ''s'' ∈ 's''and ''t'' ∈ 't'' and * the set of final states ''S''f/ being the set of all equivalence classes of final states from ''S''f. The process of computing ''A''/ is also called factoring ''A'' by ≈.


Example

For example, the automaton A shown in the first row of the tableIn the automaton diagrams in the table, and are colored in and , respectively; final states are drawn as double circles. is formally defined by * ''Σ''A = , * ''S''A = , * ''s'' = a, * ''δ''A = , and * ''S'' = . It recognizes the finite set of strings ; this set can also be denoted by the
regular expression A regular expression (shortened as regex or regexp), sometimes referred to as rational expression, is a sequence of characters that specifies a match pattern in text. Usually such patterns are used by string-searching algorithms for "find" ...
"1+10+100". The relation (≈) = , more briefly denoted as a≈b,c≈d, is an equivalence relation on the set of automaton A’s states. Building the quotient of A by that relation results in automaton C in the third table row; it is formally defined by * ''Σ''C = , * ''S''C = ,Strictly formal, the set is ''S''C = = . The class brackets are omitted for readability. * ''s'' = a, * ''δ''C = , and * ''S'' = . It recognizes the finite set of all strings composed of arbitrarily many 1s, followed by arbitrarily many 0s, i.e. ; this set can also be denoted by the regular expression "1*0*". Informally, C can be thought of resulting from A by glueing state onto state b, and glueing state c onto state d. The table shows some more quotient relations, such as B = A/a≈b, and D = C/a≈c.


Properties

* For every automaton ''A'' and every equivalence relation ≈ on its states set, ''L''(''A''/) is a superset of (or equal to) ''L''(''A''). * Given a finite automaton ''A'' over some alphabet ''Σ'', an equivalence relation ≈ can be defined on ''Σ''* by ''x'' ≈ ''y'' if ∀ ''z'' ∈ ''Σ''*: ''xz'' ∈ ''L''(''A'') ↔ ''yz'' ∈ ''L''(''A''). By the
Myhill–Nerode theorem In the theory of formal languages, the Myhill–Nerode theorem provides a necessary and sufficient condition for a language to be regular. The theorem is named for John Myhill and Anil Nerode, who proved it at the University of Chicago in 1957 . ...
, ''A''/ is a deterministic automaton that recognizes the same language as ''A''. As a consequence, the quotient of ''A'' by every
refinement Refinement may refer to: Mathematics * Equilibrium refinement, the identification of actualized equilibria in game theory * Refinement of an equivalence relation, in mathematics ** Refinement (topology), the refinement of an open cover in mathema ...
of ≈ also recognizes the same language as ''A''.


See also

*
Quotient group A quotient group or factor group is a mathematical group obtained by aggregating similar elements of a larger group using an equivalence relation that preserves some of the group structure (the rest of the structure is "factored out"). For ex ...
*
Quotient category In mathematics, a quotient category is a category (mathematics), category obtained from another category by identifying sets of morphisms. Formally, it is a quotient object in the category of small categories, category of (locally small) categories ...


Notes


References

{{reflist Finite-state machines