class5
DESCRIPTION
language and grammarTRANSCRIPT
![Page 1: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/1.jpg)
1
Reverse of a Regular Language
![Page 2: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/2.jpg)
2
Theorem:
The reverse of a regular languageis a regular language
RL L
Proof idea:
Construct NFA that accepts :RL
invert the transitions of the NFAthat accepts L
![Page 3: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/3.jpg)
3
Proof
Since is regular, there is NFA that accepts
L
Example:
baabL *
a
b
ba
L
![Page 4: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/4.jpg)
4
Invert Transitions
a
b
ba
![Page 5: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/5.jpg)
5
Make old initial state a final state
a
b
ba
![Page 6: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/6.jpg)
6
Add a new initial state
a
b
ba
![Page 7: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/7.jpg)
7
a
b
ba
Resulting machine accepts RL
baabL *
ababLR *
RL is regular
![Page 8: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/8.jpg)
8
Grammars
![Page 9: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/9.jpg)
9
GrammarsGrammars express languages
Example: the English language
verbpredicate
nounarticlephrasenoun
predicatephrasenounsentence
_
_
![Page 10: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/10.jpg)
10
walksverb
runsverb
dognoun
boynoun
thearticle
aarticle
![Page 11: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/11.jpg)
11
A derivation of “the boy walks”:
walksboythe
verbboythe
verbnounthe
verbnounarticle
verbphrasenoun
predicatephrasenounsentence
_
_
![Page 12: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/12.jpg)
12
A derivation of “a dog runs”:
runsdoga
verbdoga
verbnouna
verbnounarticle
verbphrasenoun
predicatephrasenounsentence
_
_
![Page 13: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/13.jpg)
13
Language of the grammar:
L = { “a boy runs”, “a boy walks”, “the boy runs”, “the boy walks”, “a dog runs”, “a dog walks”, “the dog runs”, “the dog walks” }
![Page 14: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/14.jpg)
14
Notation
dognoun
boynoun
Variable orNon-terminal
TerminalProductionrule
![Page 15: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/15.jpg)
15
Another ExampleGrammar:
Derivation of sentence :
S
aSbS
abaSbS
ab
aSbS S
![Page 16: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/16.jpg)
16
aabbaaSbbaSbS
aSbS S
aabb
S
aSbSGrammar:
Derivation of sentence :
![Page 17: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/17.jpg)
17
Other derivations:
aaabbbaaaSbbbaaSbbaSbS
aaaabbbbaaaaSbbbb
aaaSbbbaaSbbaSbS
![Page 18: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/18.jpg)
18
Language of the grammar
S
aSbS
}0:{ nbaL nn
![Page 19: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/19.jpg)
19
More Notation
Grammar PSTVG ,,,
:V
:T
:S
:P
Set of variables
Set of terminal symbols
Start variable
Set of Production rules
![Page 20: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/20.jpg)
20
Example
Grammar :
S
aSbSG
PSTVG ,,,
}{SV },{ baT
},{ SaSbSP
![Page 21: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/21.jpg)
21
More NotationSentential Form: A sentence that contains variables and terminals
Example:
aaabbbaaaSbbbaaSbbaSbS
Sentential Forms sentence
![Page 22: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/22.jpg)
22
We write:
Instead of:
aaabbbS*
aaabbbaaaSbbbaaSbbaSbS
![Page 23: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/23.jpg)
23
In general we write:
If:
nww*
1
nwwww 321
![Page 24: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/24.jpg)
24
By default: ww*
![Page 25: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/25.jpg)
25
Example
S
aSbS
aaabbbS
aabbS
abS
S
*
*
*
*
Grammar Derivations
![Page 26: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/26.jpg)
26
baaaaaSbbbbaaSbb
aaSbbS
S
aSbS
Grammar
Example
Derivations
![Page 27: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/27.jpg)
27
Another Grammar ExampleGrammar :
A
aAbA
AbS
Derivations:
aabbbaaAbbbaAbbS
abbaAbbAbS
bAbS
G
![Page 28: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/28.jpg)
28
More Derivations
aaaabbbbbaaaaAbbbbb
aaaAbbbbaaAbbbaAbbAbS
bbaS
bbbaaaaaabbbbS
aaaabbbbbS
nn
![Page 29: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/29.jpg)
29
Language of a Grammar
For a grammar with start variable :
GS
}:{)( wSwGL
String of terminals
![Page 30: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/30.jpg)
30
ExampleFor grammar :
A
aAbA
AbS
}0:{)( nbbaGL nn
Since: bbaS nn
G
![Page 31: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/31.jpg)
31
A Convenient Notation
A
aAbA|aAbA
thearticle
aarticle
theaarticle |
![Page 32: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/32.jpg)
32
Linear Grammars
![Page 33: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/33.jpg)
33
Linear GrammarsGrammars with at most one variable at the right sideof a production
Examples:
A
aAbA
AbS
S
aSbS
![Page 34: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/34.jpg)
34
A Non-Linear Grammar
bSaS
aSbS
S
SSS
Grammar :G
)}()(:{)( wnwnwGL ba
![Page 35: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/35.jpg)
35
Another Linear Grammar
Grammar :
AbB
aBA
AS
|
}0:{)( nbaGL nn
G
![Page 36: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/36.jpg)
36
Right-Linear GrammarsAll productions have form:
Example:
xBA
xAor
aS
abSS
![Page 37: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/37.jpg)
37
Left-Linear GrammarsAll productions have form:
Example:
BxA
aB
BAabA
AabS
|
xAor
![Page 38: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/38.jpg)
38
Regular Grammars
![Page 39: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/39.jpg)
39
Regular GrammarsA regular grammar is any right-linear or left-linear grammar
Examples:
aS
abSS
aB
BAabA
AabS
|
1G 2G
![Page 40: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/40.jpg)
40
ObservationRegular grammars generate regular
languages
Examples:
aS
abSS
aabGL *)()( 1
aB
BAabA
AabS
|
*)()( 2 abaabGL
1G
2G
![Page 41: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/41.jpg)
41
Regular Grammars Generate
Regular Languages
![Page 42: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/42.jpg)
42
Theorem
LanguagesGenerated byRegular Grammars
RegularLanguages
![Page 43: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/43.jpg)
43
Theorem - Part 1
LanguagesGenerated byRegular Grammars
RegularLanguages
Any regular grammar generatesa regular language
![Page 44: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/44.jpg)
44
Theorem - Part 2
LanguagesGenerated byRegular Grammars
RegularLanguages
Any regular language is generated by a regular grammar
![Page 45: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/45.jpg)
45
Proof – Part 1
LanguagesGenerated byRegular Grammars
RegularLanguages
The language generated by any regular grammar is regular
)(GLG
![Page 46: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/46.jpg)
46
The case of Right-Linear Grammars
Let be a right-linear grammar
We will prove: is regular
Proof idea: We will construct NFA with
G
)(GL
M)()( GLML
![Page 47: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/47.jpg)
47
Grammar is right-linearG
Example:
aBbB
BaaA
BaAS
|
|
![Page 48: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/48.jpg)
48
Construct NFA such thatevery state is a grammar variable:
M
aBbB
BaaA
BaAS
|
|
S FV
A
B
specialfinal state
![Page 49: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/49.jpg)
49
Add edges for each production:
S FV
A
B
a
aAS
![Page 50: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/50.jpg)
50
S FV
A
B
a
BaAS |
![Page 51: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/51.jpg)
51
S FV
A
B
a
BaaA
BaAS
|
a
a
![Page 52: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/52.jpg)
52
S FV
A
B
a
bBB
BaaA
BaAS
|
a
a
b
![Page 53: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/53.jpg)
53
S FV
A
B
a
abBB
BaaA
BaAS
|
|
a
a
b
a
![Page 54: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/54.jpg)
54
aaabaaaabBaaaBaAS
S FV
A
B
a
a
a
b
a
![Page 55: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/55.jpg)
55
SFV
A
B
a
a
a
b
aabBB
BaaA
BaAS
|
|
G
M GrammarNFA
abaaaab
GLML
**
)()(
![Page 56: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/56.jpg)
56
In GeneralA right-linear grammar
has variables:
and productions:
G
,,, 210 VVV
jmi VaaaV 21
mi aaaV 21
or
![Page 57: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/57.jpg)
57
We construct the NFA such that:
each variable corresponds to a node:
M
iV
0V
FV
1V
2V
3V
4V specialfinal state
![Page 58: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/58.jpg)
58
For each production:
we add transitions and intermediate nodes
jmi VaaaV 21
iV jV………
1a 2a ma
![Page 59: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/59.jpg)
59
For each production:
we add transitions and intermediate nodes
mi aaaV 21
iV FV………
1a 2a ma
![Page 60: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/60.jpg)
60
Resulting NFA looks like this:M
0V
FV
1V
2V
3V
4V
1a
3a
3a
4a
8a
2a 4a
5a
9a5a
9a
)()( MLGL It holds that:
![Page 61: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/61.jpg)
61
The case of Left-Linear Grammars
Let be a left-linear grammar
We will prove: is regular
Proof idea: We will construct a right-linear grammar with
G
)(GL
G RGLGL )()(
![Page 62: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/62.jpg)
62
Since is left-linear grammar
the productions look like:
G
kaaBaA 21
kaaaA 21
![Page 63: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/63.jpg)
63
Construct right-linear grammar G
In :G kaaBaA 21
In :G BaaaA k 12
vBA
BvA R
![Page 64: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/64.jpg)
64
Construct right-linear grammar G
In :G kaaaA 21
In :G 12aaaA k
vA
RvA
![Page 65: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/65.jpg)
65
It is easy to see that:
Since is right-linear, we have:
RGLGL )()(
)(GL RGL )(
G
)(GL
RegularLanguage
RegularLanguage
RegularLanguage
![Page 66: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/66.jpg)
66
Proof - Part 2
LanguagesGenerated byRegular Grammars
RegularLanguages
Any regular language is generated by some regular grammar
LG
![Page 67: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/67.jpg)
67
Proof idea:
Let be the NFA with . Construct from a regular grammar such that
Any regular language is generated by some regular grammar
LG
M )(MLL
M G)()( GLML
![Page 68: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/68.jpg)
68
Since is regularthere is an NFA such that
LM )(MLL
Example:a
b
a
b*)*(* abbababL
)(MLL
M
1q 2q
3q
0q
![Page 69: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/69.jpg)
69
Convert to a right-linear grammarM
a
b
a
b
M0q 1q 2q
3q10 aqq
![Page 70: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/70.jpg)
70
a
b
a
b
M0q 1q 2q
3q
21
11
10
aqq
bqq
aqq
![Page 71: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/71.jpg)
71
a
b
a
b
M0q 1q 2q
3q
32
21
11
10
bqq
aqq
bqq
aqq
![Page 72: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/72.jpg)
72
a
b
a
b
M0q 1q 2q
3q
3
13
32
21
11
10
q
bqq
aqq
bqq
aqq
G
LMLGL )()(
![Page 73: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/73.jpg)
73
In General
For any transition:aq p
Add production: apq
variable terminal variable
![Page 74: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/74.jpg)
74
For any final state: fq
Add production: fq
![Page 75: Class5](https://reader033.vdocuments.site/reader033/viewer/2022061109/545172acaf7959af2f8b8f2a/html5/thumbnails/75.jpg)
75
Since is right-linear grammar
is also a regular grammar
with
G
G
LMLGL )()(