Professional Documents
Culture Documents
lect03-Finite Automata تم
lect03-Finite Automata تم
Finite Automata
2
Finite Automata
3
Finite Automata
4
Finite Automata
Example: ∑= {a,b} a b
states = {x,y,z} x y z
transitions:
start state : x y x z
final states: {z} z z z
aaba: x a y a x b z a z z is final;
aaba is accepted
5
Finite Automata
x a
Transition Diagram y
a b – a
x y z
y x z b b
z z z
z
+
a b
Regular expression: (a+b)*b(a+b)*
aaaabba?
bbaabbbb?
6
Finite Automata
a x
a y
x a –
y x
– a
a y
– a
b
b b
b b b
z
z a +
+ b z b
a b + a
b b
a
bbaabbbb?
aaaabba?
7
Finite Automata
a a,b
– +
+ a,b
b
8
Finite Automata
a a,b
– No final state
b
a,b
a,b a,b
– +
The middle state is not a final state and all transitions that go
into this state do not exit.
9
Finite Automata
10
Finite Automata
● Start state: 1
● Final state: 1
● The transitions:
a b a,b
+1 2 2 1+ 2
a,b
2 1 1
11
Finite Automata
y a,b
a(a+b)* b
x
Not necessarily unique: – a
a,b
a,b z
+
b
–
a
a,b
+
a,b
+ Remark: 2 final states
12
Finite Automata
13
Finite Automata
3. Add paths for words that contain a’s and b’s before or
14
Finite Automata
a,b
a
a,b a,b
–
b
The third letter is b. a,b
+
(aab + abb + bab + bbb)(a+b)*
(a+b)(a+b)b(a+b)*
The regular expression is not unique.
Is there always at least one regular expression defining the
language accepted by an FA?
16
Finite Automata
b a a +
–
a b b a,b
a,b
17
Finite Automata
b a b a a +
+ –
a b b a,b
a,b
a,b
18
Finite Automata
a b
a,b b
a,b +
+
a
Λ (a+b)*a + Λ
Words that do not end in b.
b a b b
a a
– + – +
b a
(a+b)*a ?
Words that end in a.
19
Finite Automata
b b
a
– +
a
20
Finite Automata
b a,b
a a
– +
b
Words that contain a double a
(a+b)*aa(a+b)*
Start state: the previous letter (if there is one) was not an a.
Middle state: we have just seen an a that was not preceded
by an a.
Final state: we have seen a double a.
21
Finite Automata
a b
b
+
a a b
a
b
+
– a
a a b
b a a
– b
+
b
b aabbaabb
22
Finite Automata
a a a a
b
3 4
b
23
a a,b
-x +z
24