Construct a regular expression, Theory of Computation

Given any NFA A, we will construct a regular expression denoting L(A) by means of an expression graph, a generalization of NFA transition graphs in which the edges are labeled with regular expressions rather than just symbols in Σ∪{ε}. We will explain the algorithm using the example of Figure 1.

We begin by adding a new start state s and ?nal state f to the automaton and by extending it to include an edge between every state in Q∪{s} to every state in Q ∪ {f}, including self edges on states in Q. We then consolidate all the edges from a state i to a state j into a single edge, labeled with a regular expression that denotes the set of strings of length 1 or less leading directly from state i to state j in the original automaton. If there was no path directly from i to j in the original automaton the label is ∅. If there were multiple edges (or edges labeled with multiple symbols) the label is the ‘+' of the symbols on those edges (as in the edge from 2 to 1 in the example). There will be an edge from s labeled ε to the original start state and one labeled ∅ to every other state other than f. Similarly, there will be an edge labeled ε from each state in F in the original automaton to state f and one labeled ∅ from those in Q-F to f. The expression graph for the example automaton is given in the right hand side of the ?gure.

The idea, now, is to systematically eliminate the nodes of the transition graph, one at a time, by adding new edges that are equivalent to the paths through that state and then deleting the state and all its incident edges. In general, suppose we are working on eliminating node k. For each pair of states i and j (where i is neither k nor f and j is neither k nor s) there will be a path from i to j through k that looks like:

230_Construct a regular expression.png

Posted Date: 3/21/2013 1:25:08 AM | Location : United States







Related Discussions:- Construct a regular expression, Assignment Help, Ask Question on Construct a regular expression, Get Answer, Expert's Help, Construct a regular expression Discussions

Write discussion on Construct a regular expression
Your posts are moderated
Related Questions
how many pendulum swings will it take to walk across the classroom?

How useful is production function in production planning?

A common approach in solving problems is to transform them to different problems, solve the new ones, and derive the solutions for the original problems from those for the new ones

A Turing machine is a theoretical computing machine made-up by Alan Turing (1937) to serve as an idealized model for mathematical calculation. A Turing machine having of a line of

how to understand DFA ?

automata of atm machine

To see this, note that if there are any cycles in the Myhill graph of A then L(A) will be infinite, since any such cycle can be repeated arbitrarily many times. Conversely, if the

Computer has a single FIFO queue of ?xed precision unsigned integers with the length of the queue unbounded. You can use access methods similar to those in the third model. In this

examples of decidable problems

The fact that regular languages are closed under Boolean operations simpli?es the process of establishing regularity of languages; in essence we can augment the regular operations