Construct a regular expression, Theory of Computation

Assignment Help:

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


Related Discussions:- Construct a regular expression

Myhill-nerode, Theorem (Myhill-Nerode) A language L ⊆ Σ is recognizable iff...

Theorem (Myhill-Nerode) A language L ⊆ Σ is recognizable iff ≡L partitions Σ* into ?nitely many Nerode equivalence classes. Proof: For the "only if" direction (that every recogn

Transition graph for the automaton, Lemma 1 A string w ∈ Σ* is accepted by ...

Lemma 1 A string w ∈ Σ* is accepted by an LTk automaton iff w is the concatenation of the symbols labeling the edges of a path through the LTk transition graph of A from h?, ∅i to

Generalization of the interpretation of local automata, The generalization ...

The generalization of the interpretation of strictly local automata as generators is similar, in some respects, to the generalization of Myhill graphs. Again, the set of possible s

Java programming, 1. An integer is said to be a “continuous factored” if it...

1. An integer is said to be a “continuous factored” if it can be expresses as a product of two or more continuous integers greater than 1. Example of continuous factored integers

Sketch an algorithm for recognizing language, Suppose A = (Σ, T) is an SL 2...

Suppose A = (Σ, T) is an SL 2 automaton. Sketch an algorithm for recognizing L(A) by, in essence, implementing the automaton. Your algorithm should work with the particular automa

Myhill-nerode theorem, The Myhill-Nerode Theorem provided us with an algori...

The Myhill-Nerode Theorem provided us with an algorithm for minimizing DFAs. Moreover, the DFA the algorithm produces is unique up to isomorphism: every minimal DFA that recognizes

Computation of a dfa or nfa, Computation of a DFA or NFA without ε-transiti...

Computation of a DFA or NFA without ε-transitions An ID (q 1 ,w 1 ) computes (qn,wn) in A = (Q,Σ, T, q 0 , F) (in zero or more steps) if there is a sequence of IDs (q 1

Algorithm for the universal recognition problem, Sketch an algorithm for th...

Sketch an algorithm for the universal recognition problem for SL 2 . This takes an automaton and a string and returns TRUE if the string is accepted by the automaton, FALSE otherwi

Abstract model of computation, When we say "solved algorithmically" we are ...

When we say "solved algorithmically" we are not asking about a speci?c programming language, in fact one of the theorems in computability is that essentially all reasonable program

Deterministic finite automata, conversion from nfa to dfa 0 | 1 ____...

conversion from nfa to dfa 0 | 1 ___________________ p |{q,s}|{q} *q|{r} |{q,r} r |(s) |{p} *s|null |{p}

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd