You are here
Home ›automaton
Primary tabs
automaton
An automaton is a semiautomaton with two types of special states: starting states, and final states. Specifically, an automaton is is a five-tuple , where
1. is a semiautomaton,
2. a non-empty set of starting states, and
3. a set of final states or terminating states.
A triple is called a transition if , and is written . The set may contain more than one element (or none at all), which is why an automaton is also said to be non-deterministic. If on the other hand is a singleton for every , and is a singleton, then is said to be deterministic. In a deterministic automaton, can be viewed as a function from to .
The state diagram of a finite-state automaton is constructed as if is being treated as a semiautomaton. In addition, a vertex corresponding to a starting state has an incoming arrow without a source, and a vertex corresponding to a final state has an outgoing arrow without a destination (alternatively, it may be represented by a double circle). This is illustrated in the following example:
Let be given by , where is the starting state, and the final state, , with the transition function given by the following table
Then the state diagram is given by
An automaton works in exactly the same way as a semiautomaton in terms of reading an input word. Briefly:
when a word is fed into with starting state , reads one symbol at a time from left to right, starting from . It reaches one of the of next states in , say, . reads the next symbol , and reaches one of the next states , and so on…, until the last symbol has been read. is accepted if, it is possible, upon reading the last symbol , a final state is reached.
Basically, this means that a word is accepted by iff contains a final state. The language accepted by is the set of all words accepted by , and is denoted by .
Clearly, if , then .
Remark. The word “automaton” may be used in a context wider than the definition given above. Any computing device capable of accepting strings of symbols is termed an automaton in this wider context. The set of all accepted strings is called the language accepted by the automaton. The automata defined in this entry accept what are known as regular languages. A famous example is the Turing machine, invented by Alan Turing in 1935. Languages accepted by Turing machines are exactly the recursively enumerable languages. Other common examples of automata are: pushdown automata, which accept context-free languages; and linear bounded automata, which accept context-sensitive languages.
Mathematics Subject Classification
03D05 Automata and formal grammars in connection with logical questions68Q45 Formal languages and automata
- Forums
- Planetary Bugs
- HS/Secondary
- University/Tertiary
- Graduate/Advanced
- Industry/Practice
- Research Topics
- LaTeX help
- Math Comptetitions
- Math History
- Math Humor
- PlanetMath Comments
- PlanetMath System Updates and News
- PlanetMath help
- PlanetMath.ORG
- Strategic Communications Development
- The Math Pub
- Testing messages (ignore)
- Other useful stuff
Recent Activity
new question: Sorry to steal a few minutes of your time for this question, but i honestly don't know what else to do. by Whrazithar
new question: equality of the determinants of submatrices of an orthogonal matrix by ismayli
Jun 11
new correction: Typo by suitangi
Jun 2
new question: Creating another set with same cardinality. by hkkass
Jun 1
new image: ProblemOneRevised by unlord
new Education: Chapter II by rspuzio
May 31
new collection: The Calculus by Davis and Brenke by rspuzio
new question: Proofs by weixifan
new question: Summation Integration Question by trevor.nickle
May 27
new correction: typo+finite measure hypothesis by Filipe


