lec 3 ---- dfa
TRANSCRIPT
![Page 1: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/1.jpg)
Fall 2006 Costas Busch - RPI 1
Deterministic Finite Automata
And Regular Languages
![Page 2: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/2.jpg)
Fall 2006 Costas Busch - RPI 2
Deterministic Finite Automaton (DFA)
Input Tape
“Accept” or“Reject”
String
FiniteAutomaton
Output
![Page 3: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/3.jpg)
Fall 2006 Costas Busch - RPI 3
Transition Graph
initialstate
accepting state
statetransition
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,
![Page 4: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/4.jpg)
Fall 2006 Costas Busch - RPI 4
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,
},{ ba
For every state, there is a transitionfor every symbol in the alphabet
Alphabet
![Page 5: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/5.jpg)
Fall 2006 Costas Busch - RPI 5
Initial Configuration
1q 2q 3q 4qa b b a
5q
a a bb
ba,Input Stringa b b a
ba,0q
Initial state
Input Tapehead
![Page 6: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/6.jpg)
Fall 2006 Costas Busch - RPI 6
Scanning the Input
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
a b b a
ba,
![Page 7: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/7.jpg)
Fall 2006 Costas Busch - RPI 7
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
a b b a
ba,
![Page 8: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/8.jpg)
Fall 2006 Costas Busch - RPI 8
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
a b b a
ba,
![Page 9: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/9.jpg)
Fall 2006 Costas Busch - RPI 9
0q 1q 2q 3q 4qa b b a
accept
5q
a a bb
ba,
a b b a
ba,
Input finished
![Page 10: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/10.jpg)
Fall 2006 Costas Busch - RPI 10
1q 2q 3q 4qa b b a
5q
a a bb
ba,
a b a
ba,0q
A Rejection Case
Input String
![Page 11: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/11.jpg)
Fall 2006 Costas Busch - RPI 11
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
a b a
ba,
![Page 12: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/12.jpg)
Fall 2006 Costas Busch - RPI 12
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
a b a
ba,
![Page 13: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/13.jpg)
Fall 2006 Costas Busch - RPI 13
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
reject
a b a
ba,
Input finished
![Page 14: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/14.jpg)
Fall 2006 Costas Busch - RPI 14
1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,0q
)(
Another Rejection CaseTape is empty
reject
Input Finished
![Page 15: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/15.jpg)
Fall 2006 Costas Busch - RPI 15
Language Accepted: abbaL
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,
![Page 16: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/16.jpg)
Fall 2006 Costas Busch - RPI 16
To accept a string:all the input string is scanned and the last state is accepting
To reject a string:all the input string is scanned and the last state is non-accepting
![Page 17: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/17.jpg)
Fall 2006 Costas Busch - RPI 17
Another Example
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,
abbaabL ,,
Acceptstate
Acceptstate
Acceptstate
![Page 18: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/18.jpg)
Fall 2006 Costas Busch - RPI 18
)(Empty Tape
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,
accept
Input Finished
![Page 19: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/19.jpg)
Fall 2006 Costas Busch - RPI 19
Another Example
a
b ba,
ba,
0q 1q 2q
Accept state
trap state
![Page 20: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/20.jpg)
Fall 2006 Costas Busch - RPI 20
a
b ba,
ba,
0q 1q 2q
a ba
Input String
![Page 21: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/21.jpg)
Fall 2006 Costas Busch - RPI 21
a
b ba,
ba,
0q 1q 2q
a ba
![Page 22: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/22.jpg)
Fall 2006 Costas Busch - RPI 22
a
b ba,
ba,
0q 1q 2q
a ba
![Page 23: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/23.jpg)
Fall 2006 Costas Busch - RPI 23
a
b ba,
ba,
0q 1q 2q
a ba
accept
Input finished
![Page 24: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/24.jpg)
Fall 2006 Costas Busch - RPI 24
a
b ba,
ba,
0q 1q 2q
ab b
A rejection case
Input String
![Page 25: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/25.jpg)
Fall 2006 Costas Busch - RPI 25
a
b ba,
ba,
0q 1q 2q
ab b
![Page 26: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/26.jpg)
Fall 2006 Costas Busch - RPI 26
a
b ba,
ba,
0q 1q 2q
ab b
![Page 27: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/27.jpg)
Fall 2006 Costas Busch - RPI 27
a
b ba,
ba,
0q 1q 2q
ab b
reject
Input finished
![Page 28: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/28.jpg)
Fall 2006 Costas Busch - RPI 28
Language Accepted: }0:{ nbaL n
a
b ba,
ba,
0q 1q 2q
![Page 29: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/29.jpg)
Fall 2006 Costas Busch - RPI 29
Another Example
0q 1q
1
1
}1{Alphabet:
Language Accepted:even} is and :{ * xxxEVEN
},111111,1111,11,{
![Page 30: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/30.jpg)
Fall 2006 Costas Busch - RPI 30
Formal Definition Deterministic Finite Automaton (DFA)
FqQM ,,,, 0
Q
0q
F
: set of states: input alphabet: transition function: initial state: set of accepting states
![Page 31: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/31.jpg)
Fall 2006 Costas Busch - RPI 31
Set of States
Q
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba, 543210 ,,,,, qqqqqqQ
ba,
Example
![Page 32: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/32.jpg)
Fall 2006 Costas Busch - RPI 32
Input Alphabet
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba, ba,
ba,
:the input alphabet never contains
Example
![Page 33: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/33.jpg)
Fall 2006 Costas Busch - RPI 33
Initial State
0q
1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,0q
Example
![Page 34: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/34.jpg)
Fall 2006 Costas Busch - RPI 34
Set of Accepting States
QF
0q 1q 2q 3qa b b a
5q
a a bb
ba, 4qF
ba,
4q
Example
![Page 35: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/35.jpg)
Fall 2006 Costas Busch - RPI 35
Transition Function
QQ :
q qx
qxq ),(
Describes the result of a transitionfrom state with symbolq x
![Page 36: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/36.jpg)
Fall 2006 Costas Busch - RPI 36
2q 3q 4qa b b a
5q
a a bb
ba,
ba,0q 1q
10 , qaq Example:
![Page 37: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/37.jpg)
Fall 2006 Costas Busch - RPI 37
50 , qbq
1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,0q
![Page 38: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/38.jpg)
Fall 2006 Costas Busch - RPI 38
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,
32 , qbq
![Page 39: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/39.jpg)
Fall 2006 Costas Busch - RPI 39
a b
0q
1q
2q
3q
4q
5q
1q 5q
5q 2q5q 3q
4q 5q
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,5q5q5q5q
Transition Table for st
ates
symbols
![Page 40: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/40.jpg)
Fall 2006 Costas Busch - RPI 40
Extended Transition Function QQ ** :
qwq ),(*
Describes the resulting state after scanning string from statew q
![Page 41: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/41.jpg)
Fall 2006 Costas Busch - RPI 41
20
* , qabq
3q 4qa b b a
5q
a a bb
ba,
ba,0q 1q 2q
Example:
![Page 42: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/42.jpg)
Fall 2006 Costas Busch - RPI 42
50* , qabbbaaq
1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,0q
![Page 43: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/43.jpg)
Fall 2006 Costas Busch - RPI 43
41* , qbbaq
0q 1q 2q 3q 4qa b b a
5q
a a bb
ba,
ba,
![Page 44: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/44.jpg)
Fall 2006 Costas Busch - RPI 44
Special case:
qq ,*
for any state q
![Page 45: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/45.jpg)
Fall 2006 Costas Busch - RPI 45
qwq ,*
q qw
q qkw 21
1 2 k
states may be repeated
In general:
implies that there is a walk of transitions
![Page 46: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/46.jpg)
Fall 2006 Costas Busch - RPI 46
Language Accepted by DFA
it is denoted as and containsall the strings accepted by
MLM
MLanguage of DFA :
We say that a language is accepted (or recognized) by DFA if M
L
LML
![Page 47: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/47.jpg)
Fall 2006 Costas Busch - RPI 47
For a DFA
Language accepted by :
FqQM ,,,, 0
M FwqwML ,: 0
**
0q qw Fq
![Page 48: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/48.jpg)
Fall 2006 Costas Busch - RPI 48
Language rejected by :
FwqwML ,: 0**
M
0q qw Fq
![Page 49: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/49.jpg)
Fall 2006 Costas Busch - RPI 49
0q
More DFA Examples
ba,},{ ba
*)( ML
0q
ba,
}{)( MLEmpty language All strings
![Page 50: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/50.jpg)
Fall 2006 Costas Busch - RPI 50
0q
ba,
},{ ba
0q ba,
}{)( MLLanguage of the empty string
![Page 51: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/51.jpg)
Fall 2006 Costas Busch - RPI 51
ML = { all strings with prefix }ab
a b
ba,
0q 1q 2q
accept
ba,3q
ab
},{ ba
![Page 52: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/52.jpg)
Fall 2006 Costas Busch - RPI 52
ML = { all binary strings containing substring }001
0 00 001
1
0
110
0 1,0
![Page 53: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/53.jpg)
Fall 2006 Costas Busch - RPI 53
ML = { all binary strings without substring }001
0 00 001
1
0
110
0 1,0
![Page 54: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/54.jpg)
Fall 2006 Costas Busch - RPI 54
*,:)( bawawaML
a
b
ba,
a
b
ba
0q 2q 3q
4q
![Page 55: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/55.jpg)
Fall 2006 Costas Busch - RPI 55
Regular LanguagesDefinition:A language is regular if there is a DFA that accepts it ( )
The languages accepted by all DFAs form the family of regular languages
LM LML )(
![Page 56: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/56.jpg)
Fall 2006 Costas Busch - RPI 56
abba abbaab,,
}0:{ nban { all strings in {a,b}* with prefix }ab{ all binary strings without substring }001
Example regular languages:
There exist automata that accept theselanguages (see previous slides).
*,: bawawa
even} is and }1{:{ * xxx
}{ }{ *},{ ba
![Page 57: Lec 3 ---- dfa](https://reader036.vdocuments.net/reader036/viewer/2022081502/58ec910d1a28ab86518b46f7/html5/thumbnails/57.jpg)
Fall 2006 Costas Busch - RPI 57
There exist languages which are not Regular:
}0:{ nbaL nn
There is no DFA that accepts these languages
(we will prove this in a later class)
}n ,1z,1y,1x :{ mn
kmzyxADDITION k