0% found this document useful (0 votes)
12 views

Lesson 17

cs402

Uploaded by

faizatahir20000
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views

Lesson 17

cs402

Uploaded by

faizatahir20000
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
You are on page 1/ 22

Lecture # 17 Recap Lecture 16

• Examples of Kleene’s theorem part III (method


3), NFA, examples, avoiding loop using NFA,
example, converting FA to NFA, examples,
applying an NFA on an example of maze, NFA
with null string, examples, RE corresponding to
NFA with null string (task), converting NFA to FA
(method 1,2,3) examples, NFA and Kleene’s
theorem method 1, examples, NFA and
Kleene’s theorem method 2, examples
Task

• Determine the regular expression of the


following NFA-

2 4+
a

a
1- a a

, b
3 b a
5
Solution of the Task

2 4+
a

a
1- a a

, b
3 b a
5

To eliminate state 5 the above NFA- may


be reduced to the following
Solution continued …
2
a +aa*a

1- a 4+

+b ba*a
3

To eliminate state 2 the above NFA- may


be reduced to the following
Solution continued …
1-

+b a(+aa*a)

a(+aa*a)

3 4+
ba*a

To eliminate state 3 the above NFA- may be


reduced to the following
Solution continued …

a(+aa*a)+(+b)(a(+aa*a)+ba*a)
1- 4+

Hence the RE is a(+aa*a)+(+b)(a(+aa*a)


+ba*a)
Which may be reduced to
a+aaa*a+ba*a+ba+baaa*a +bba*a OR
a+aaa*a+ba*a+baaa*a +bba*a
Task

• Build an FA corresponding to the following NFA


which accepts the language of strings containing
bb
a, b a, b

b b
1- 2 3+
Solution of the Task
a, b a, b

b b
1- 2 3+

b a
a b a

1- (1,2) b (1,2,3) (1,3)+


a + b

It may be noted that the above method


seems to be complicated, hence an easier
method discussed by Martin, follows as
NFA to FA continued …
Method 3: As discussed earlier that in an NFA,
there may be more than one transition for a certain
letter and there may not be any transition for certain
letter, so starting from the initial state corresponding
to the initial state of given NFA, the transition table
along with new labels of states, of the corresponding
FA, can be built introducing an empty state for a
letter having no transition at certain state and a state
corresponding to the combination of states, for a
letter having more than one transitions. Following
are the examples
Example

• Consider the following NFA which accepts


the language of strings containing bb
a, b a, b

b b
x1- x2 x3+

Using the method discussed earlier, the


transition table corresponding to the
required FA may be constructed as
Example continued …
New States after reading
Old States
a b
z1 x1 x1 z1 (x1,x2)  z2
z2 (x1,x2) (x1 , Ø)  x1z1 (x1 ,x2,x3)  z3
z3+  (x1,x2,x3) (x1,x3)  z4 (x1 ,x2,x3)  z3
z4+  (x1,x3) (x1,x3)  z4 (x1 ,x2,x3)  z3

The corresponding transition diagram follows as


Example continued …
b a
a b a

z1- b
z2 z3+ z4+
a b
NFA and Kleene’s Theorem
It has been discussed that, by Kleene’s theorem part
III, there exists an FA corresponding to a given RE.
If the given RE is as simple as r=aa+bbb or
r=a(a+b)*, the corresponding FAs can easily be
constructed. However, for a complicated RE, the RE
can be decomposed into simple REs corresponding to
which the FAs can easily be constructed and hence,
using the method, constructing the FAs
corresponding to sum, concatenation and closure of
FAs, the required FA can also be constructed. It is to
be noted that NFAs also help in proving Kleene’s
theorem part III, as well. Two methods are discussed
in the following.
NFA and Kleene’s Theorem

Method 1: The method is discussed


considering the following example.
Example:To construct the FAs for the
languages L1= {a}, L2= {b} and L3= {}
Step 1: Build NFA1, NFA2 and NFA3
corresponding to L1, L2 and L3 , respectively
as shown in the following diagram
NFA and Kleene’s Theorem
(method 1 ) continued …
• NFA1 - a +

b +
-
• NFA2


• NFA3
NFA and Kleene’s Theorem
(method 1 ) continued …
Step 2:
As discussed earlier for every NFA there
is an FA equivalent to it, hence there must
be FAs for the above mentioned NFAs as
well. The corresponding FAs can be
considered as follows
NFA and Kleene’s Theorem
(method 1 ) continued …
b a +
–– + ––

FA1 a
a,b FA2 b a,b

1 1
a,b a,b

a,b

a,b
 1
FA3
NFA and Kleene’s Theorem
method 2
It may be observed that if an NFA can be built
corresponding to union, concatenation and
closure of FAs corresponding to the REs,
then converting the NFA, thus, obtained into
an equivalent FA, this FA will correspond to
the given RE.
Followings are the procedures showing how
to obtain NFAs equivalent to union,
concatenation and closure of FAs
NFA corresponding to Union
of FAs
Method:
Introduce a new start state and connect it
with the states originally connected with the
old start state with the same transitions as
the old start state, then remove the –ve sign
of old start state. This creates non-
determinism and hence results in an NFA.
Example b

a
x1- x2
• FA1

a b b a

a
x4+ x3

b
a a, b

• FA2 b
y1- y2+
a b

x1 a
- x2

b b
a b a

a b a
x4+ x3

a a, b

b
y1 y2+

NFA equivalent to FA1UFA2


Summing Up

• converting NFA to FA (method 3),


example, NFA and Kleene’s theorem
method 1, examples, NFA and Kleene’s
theorem method 2 , NFA corresponding to
union of FAs,example

You might also like