DFA & Transition Graph: Fall 2006 Costas Busch - RPI 1
DFA & Transition Graph: Fall 2006 Costas Busch - RPI 1
Graph
M Q, , , q0 , F
Q : set of states
: input alphabet
: transition function
q0 : initial state
Q q0 , q1, q2 , q3 , q4 , q5
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
Example
a, b a, b
q5
b a a, b
a b
q0 a q1 b q2 b q3 a q4
Example
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
Example
F q4 a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
(q , x ) q
x
q q
a, b
q5
b a a, b
a b
q0 a q1 b q2 b q3 a q4
a, b
q5
b a a, b
a b
q0 a q1 b q2 b q3 a q4
a, b
q5
b a a, b
a b
q0 a q1 b q2 b q3 a q4
q2 q5 q3
a, b
q3 q4 q5
q4 q5 q5
q5
q5 q5 q5 a, b
b a a b
q0 a q1 b q2 b q3 a q4
Fall 2006 Costas Busch - RPI 11
Extended Transition Function
:Q Q
* *
(q ,w ) q
*
a, b
q5
b a a, b
a b
q0 a q1 b q2 b q3 a q4
Fall 2006 Costas Busch - RPI 13
q0 , abbbaa q5
*
a, b
q5
b a a, b
a b
q0 a q1 b q2 b q3 a q4
a, b
q5
b a a, b
a b
q0 a q1 b q2 b q3 a q4
q , q
*
Input Tape
String
Output
“Accept”
Finite or
Automaton “Reject”
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
initial accepting
state state
transition
state
Fall 2006 Costas Busch - RPI 19
Alphabet {a , b }
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
Initial state
Fall 2006 Costas Busch - RPI 21
Scanning the Input
a b b a
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
a b b a
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
accept
Fall 2006 Costas Busch - RPI 25
A Rejection Case
a b a
Input String
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
a b a
a, b
reject
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
Tape is empty
( )
Input Finished
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
reject
Fall 2006 Costas Busch - RPI 30
Language Accepted: L abba
a, b
q5
a a, b
b a b
q0 a q1 b q2 b q3 a q4
To reject a string:
all the input string is scanned
and the last state is non-accepting
q5
b a a a, b
b
q0 a q1 b q2 b q3 a q4
Input Finished a, b
q5
b a a a, b
b
q0 a q1 b q2 b q3 a q4
accept
Fall 2006 Costas Busch - RPI 34
Another Example
a a, b
q0 b q1 a, b q2
q0 b q1 a, b q2
a a, b
q0 b q1 a, b q2
a a, b
q0 b q1 a, b q2
a a b
a a, b
accept
q0 b q1 a, b q2
b a b
Input String
a a, b
q0 b q1 a, b q2
a a, b
q0 b q1 a, b q2
a a, b
q0 b q1 a, b q2
b a b
a a, b
q0 b q1 a, b q2
reject
a a, b
q0 b q1 a, b q2
q0 q1
1
Language Accepted:
Language of DFA M:
it is denoted as L M and contains
all the strings accepted by M
a, b
q0 a, b q0
L(M ) { }
Language of the empty string
Fall 2006 Costas Busch - RPI 51
What is the language accepted by this finite
automaton? {a , b }
Answer:
0 0 00 1 001
0