0% found this document useful (0 votes)
597 views11 pages

Kleene's Theorem

Kleene's Theorem states that any language that can be defined by a regular expression, finite automaton, or transition graph can be defined by all three. The proof has three parts: 1) Any language defined by a finite automaton can also be defined by a transition graph. 2) Any language defined by a transition graph can be defined by a regular expression. 3) Any language defined by a regular expression can be defined by a finite automaton.

Uploaded by

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

Kleene's Theorem

Kleene's Theorem states that any language that can be defined by a regular expression, finite automaton, or transition graph can be defined by all three. The proof has three parts: 1) Any language defined by a finite automaton can also be defined by a transition graph. 2) Any language defined by a transition graph can be defined by a regular expression. 3) Any language defined by a regular expression can be defined by a finite automaton.

Uploaded by

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

Kleene’s Theorem

1
Kleene’s Theorem
 Any language that can be defined by: Regular
expression/ Finite automata/ Transition graph
can be defined by all three methods.

 There are three parts of our proof :


 Part1: every language that can be defined by a FA = can be
defined by a TG.
 Part2: every language that can be defined by a TG = can be
defined by a RE.
 Part3: every language that can be defined by a RE = can be
defined by a FA.

2
Kleene’s Theorem (Part 1)
 Every FA is itself a TG. Therefore, any
language that has been defined by a FA has
already been defined by a TG.

3
Kleene’s Theorem (Part 2)
 The proof of this part will be by constructive
algorithm. This means that we present a
procedure that starts out with a TG and ends
up with a RE that defines the same language.

4
Part 2 - Example

RE=(aa+bb)(a+b)*(aa+b
b)
5
Kleene’s Theorem (Part 3)
 Rule1: There is a FA that accepts any
particular letter of the alphabet. There is an
FA that accepts only the word λ or (ε).

e.g. FA accepts only λ

e.g. FA accepts only a

6
Kleene’s Theorem (Part 3)
 Rule2: if there is a FA called FA1, that
accepts the language defined by the regular
expression r1 and there is a FA called FA2,
that accepts the language defined by the
regular expression r2, then there is a FA
calledFA3 that accepts language defined by
the regular expression (r1+r2).

7
Example

8
Kleene’s Theorem (Part 3)
 Rule3: if there is a FA1 that accepts the
language defined by the regular expression
r1 and a FA2 that accepts the language
defined by the regular expression r2, then
there is a FA3 that accepts the language
defined by the concatenation r1r2.

9
Example

10
Kleene’s Theorem (Part 3)
 Rule4: if r is a regular expression and FA1
accepts exactly the language defined by r,
then there is an FA2 that will accept exactly
the language defined by r*.

11

You might also like