Finite Automata with Output

Finite Automata with Output

The Finite State machine is similar to Finite Automata, except that it has the additional capacity of producing output.

Finite State machine = Finite Automata + Output Capabilities

Types of Finite Automata that generates output are:

  • Moore Machine
  • Mealy Machine

The Mealy and Moore machine are commonly used to describe the behavior of sequential circuits, which include flip-flops, in which, the output of the circuits is related to both functions of the specific inputs and function of the previous state.

Moore Machine

The output of the Moore machine depends only on the present state. The general architecture of the Moore machine is:

Moore Machine

In this, if the machine has N no of states, then it will require N-flip-flops, where M is the smallest number such that N<=2M. If the input string is of length n, then the output string will be of length n+1.

Formal Notations of Moore Machine

The Moore machine contains 6 tuples or elements (Q, q0, ?, O, ?, ?).

Q: It is a collection of a finite set of states.

?: It is a collection of a finite set of input symbols.

?: By using the transition function, the states of the Moore machine move from one state to another state.

q0: It is used for representing the initial state from which input is processed.

O: It is used for representing the output alphabet.

?:  It is an output function, where Q ? O  

Transition table of Moore Machine

Transition table of Moore Machine

In this transition table, we have input alphabet ? = {0, 1}and output alphabet O = {0, 1}. It takes input as {0, 1} and produces output in the form of {a, b}. Moore machine transition table also has the same input and output alphabet.

Transition diagram of Moore Machine

To create a transition diagram for a given problem, apply the following steps:

  • First of all, determine the number of states needed from the given problem description.
  • Represent each state with the help of a circle.
  • From each state, draw an arrow causing event from the current state to the next state. If some particular input, the machine remains on the same state, then add this transition with the help of self-loop on the same state in the transition diagram.
  • At last, write the value of the output in each state.
Transition diagram of Moore Machine

In Moore machine, initial state is indicated by an arrow. Each state contains two things, first is the name of the state, and the second is the output of the state.

Mealy Machine

In the Mealy machine, value of the output function depends on the current state q (t) and current input i (t). The architecture of mealy machine is given below:

Mealy Machine

In this, if the machine has N no of states, then it will require N-flip-flops, where M is the smallest number such that N<=2M. In a mealy machine, if the input string of length n, then the output string will also be of length n.

Formal Notations of Mealy Machine

The mealy machine also contains 6 tuples or elements (Q, q0, ?, O, ?, ?)

Q: It is a collection of a finite set of states.

?: It is a collection of a finite set of input symbols.

?: By using the transition function, the states of the Mealy machine move from one state to another state.

q0: It is used for representing the initial state from which input is processed.

O: It is used for representing the output alphabet.

?:  It is an output function where Q ? O  

Transition table of Mealy Machine

The output of the mealy machine depends on the current state and diagram. The transition table of the mealy machine is given below:

Transition table of Mealy Machine

Transition diagram of a mealy machine

To create a transition diagram for a given problem, apply the following steps:

  • First of all, determine the number of states needed for the given problem description.
  • Represent each state with the help of a circle.
  • From each state, draw an arrow causing event from the current state to the next state. If some particular input, the machine remains on the same state, then add this transition with the help of self-loop on the same state in the transition diagram.
  • At last, write the output values along with the input values on the paths between the states.

In the mealy machine, each arc is labeled with two things:

  • First is the input symbol
  • The second is the output on the state.
Transition diagram of a mealy machine

Related Topics

Recursive Language and Recursive Enumerable Language

Recursive Language and Recursive Enumerable Language Before discussing Recursive language and Recursive Enumerable language, let us see what Turing machine responds for some input string. If we have the Turing machine T...

4 minutes read.

Finite Automata with Output

Finite Automata with Output The Finite State machine is similar to Finite Automata, except that it has the additional capacity of producing output. Finite State machine = Finite Automata + Output Capabilities Types...

3 minutes read.

Automata Greibach Normal Form

Greibach Normal Form In Greibach Normal Form, there is restriction on the position, in which, terminals and variables can appear on right-hand side of production rules. In Greibach Normal Form, every...

4 minutes read.

Equivalence of Regular Grammar and Finite Automata

Equivalence of Regular Grammar and Finite Automata Regular Grammar / type -3 grammar A regular grammar or type-3 defines the language called regular language that is accepted by finite Automata.A Regular Grammar...

3 minutes read.

Simplification of Context Free Grammar - Automata

Simplification of Context Free Grammar Context Free Grammar has recursive structure. The languages that are accepted with Context Free Grammar are called Context Free Languages. Context Free Grammar has one condition...

3 minutes read.

Minimization of Finite Automata with Output

Minimization of Finite Automata with Output The method to minimize the Moore and Mealy machine is very much similar to the method that we have used to minimize the DFA. Methods to...

3 minutes read.

Automata Tutorial

What is Automata? Automata is a mathematical model and abstract model, which is used to detect string in various languages. In Automata, Regular language is recognized by Finite state AutomataContext Free language...

4 minutes read.

Non-deterministic Turing Machine - Automata

A non-deterministic Turing machine (NTM) is a theoretical machine used in computability theory to study the extent to which a machine can "guess" at a solution and yet still be...

4 minutes read.

Pumping Lemma for Regular Languages - Automata

Pumping Lemma for Regular Languages The language accepted by the finite automata is called Regular Language. If we are given a language L and asked whether it is regular or not?...

4 minutes read.

Automata Regular Expressions

Regular Expressions Regular expressions are also referred as rational expressions, which are used to describe the algebraic description of regular languages. It is generally a sequence of characters that is used...

3 minutes read.

Ambiguity in Context Free Grammar - Automata

Ambiguity in Context Free Grammar? Context Free Grammar Context Free Grammar has one condition for production rules, which is, on the left-hand side of each rule, there must be only single variable,...

4 minutes read.

Push down Automata Acceptance

Acceptance of Language by Push down Automata Push down Automata accepts the language, which is called context free language. Push down Automata = Finite Automata + Auxiliary Memory (Stack) Auxiliary Memory helps Push...

3 minutes read.

Finite Automata

Finite Automata Finite state Automata or Finite State Machine is the simplest model used in Automata. Finite state automata accepts regular language. In this, the term finite means it has a...

4 minutes read.

Automata Chomsky Hierarchy

Chomsky Hierarchy Formal languages: A language with precise syntax and semantics are called formal languages. Noam Chomsky has defined the Chomsky hierarchy in 1956. He is an American scientist and philosopher, and...

3 minutes read.

Pumping Lemma for Context Free Languages

Pumping Lemma for Context Free Languages The Pumping Lemma is made up of two words, in which, the word pumping is used to generate many input strings by pushing the symbol...

3 minutes read.

Minimization of Finite Automata

Minimization of Finite Automata The term minimization refers to the construction of finite automata with a minimum number of states, which is equivalent to the given finite automata. The number of...

4 minutes read.

Closure Properties of Regular Languages -Automata

Closure Properties of Regular Languages We use the term “Closure” when we talk about sets of things. If we have two regular languages L1 and L2, and L is obtained by...

3 minutes read.

Context Free Grammar - Automata

Context Free Grammar Grammar defines a set of rules, and with the help of these rules valid sentences in a language are constructed. A grammar consists of collection of substitution rules,...

3 minutes read.

Undecidable Problem of Turing Machine

Automata Undecidable Problem of Turing Machine Undecidable problems areproblems which cannot be solved by any Turing machine. Example: Post Correspondence Problem is the type of undecidable Problem. Post Correspondence Problem Post Correspondence problem is...

7 minutes read.

Converting Finite Automata to Regular Expression using Arden’s Theorem

Converting Finite Automata to Regular Expression using Arden’s Theorem The Arden’s Theorem can be applied to find the regular expression recognized by the given transition diagram. This theorem can be applied...

4 minutes read.