You are here
Home ›Moore machine
Primary tabs
Moore machine
A Moore machine is a five-tuple , where
1. 2. is an alphabet whose elements are called input symbols,
3. is an alphabet whose elements are called output symbols,
4. is a function called the state transition function,
5. is a function called the output function.
Given an a pair of state and input symbol , the value is the next state of and is the output of .
A Moore machine can be thought of as a Mealy machine, where that the output function does not depend on the input. Suppose is a Moore machine, then where , given by , is a Mealy machine.
Like a Mealy machine, a Moore machine also has two visual presentations: via a flow table, which describes the transitions to the next states and the outputs, or via a state diagram.
For example, consider a Moore machine where , , and . The state transition function and the output function are defined by the following table:
The first column represents all the states of ; the second and third columns are the next states corresponding to the input symbols specified on the top row; and the last column shows the corresponding output symbols.
In addition, one can visualize a Moore machine by way its state diagram , which is just a (labeled) directed graph. is constructed as follows: the vertices of represent the states of , and each is labeled , where is some state of , and . An edge from vertices to is constructed iff there is an input such that , in which case the edge is labeled . In the example above, the state diagram of is the following
Let be a Moore machine. Since is a special type of a Mealy machine, modification of the transition and output functions of to handle input words could be defined much the same way as if we were treating as a Mealy machine. But the downside is is that no output can correspond to the empty input word . Because the output function of is input-independent, a slightly different approach to modification gets rid of the problem:
First, define the extension of the transition function of as if it were a Mealy machine:
Next, define a function as follows:
Call the output function on input words for . Notice that is not an extension of , since is input-dependent, whereas is not. Furthermore, .
The approach above shows that the mechanism of a Moore machine for handling inputs/outputs is different from that of a Mealy machine, even though a Moore machine is really just a Mealy machine.
References
- 1 S. Ginsburg, An Introduction to Mathematical Machine Theory, Addision-Wesley, (1962).
- 2 M. Arbib, Algebraic Theory of Machines, Languages, and Semigroups, Academic Press, (1968).
- 3 J. Hartmanis, R.E. Stearns, Algebraic Structure Theory of Sequential Machines, Prentice-Hall, (1966).
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 correction: typo? by Filipe
May 22
new question: Linear Algebra Combination Problem! by Aleph Zero
new question: Computation of $\varphi(2000)$ by unlord
May 21
new question: pure subgroups by lvoyster
new correction: Typo in M\"obius function? by Aleph Zero
new collection: analytic number theory by Aleph Zero
May 20
new question: Taylor's Series Query! by unlord
new question: Laplace transform by J
new question: Residue Calculus by J
May 19
new Education: Project: PlanetMath Outlines Series by unlord


