context-free languageshs/teach/13w/intro/pdf/08syn.pdf · cis, lmu, 2013-11-25 slides based on rpi...
TRANSCRIPT
![Page 1: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/1.jpg)
Context-Free Languages Hinrich Schütze
CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400
Thanks to Costas Busch
![Page 2: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/2.jpg)
Take-away Definition context-free grammar Definition context-free language Derivation, sentential form, sentence Derivation trees Ambiguity Context-free grammars for natural language
2
![Page 3: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/3.jpg)
Terminology For our purposes in this class: Context free grammar = Constituency grammar = Phrase structure grammar
3
![Page 4: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/4.jpg)
4
Grammars Grammars express languages Example: the English language
verbpredicate
nounarticlephrasenoun
predicatephrasenounsentence
→
→
→
_
_
![Page 5: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/5.jpg)
5
walksverb
runsverb
dognoun
catnoun
thearticle
aarticle
→
→
→
→
→
→
![Page 6: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/6.jpg)
6
A derivation of “the dog walks”:
walksdogtheverbdogthe
verbnounthe
verbnounarticle
verbphrasenoun
predicatephrasenounsentence
⇒
⇒
⇒
⇒
⇒
⇒
__
![Page 7: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/7.jpg)
7
A derivation of “a cat runs”:
runscataverbcata
verbnouna
verbnounarticle
verbphrasenoun
predicatephrasenounsentence
⇒
⇒
⇒
⇒
⇒
⇒
__
![Page 8: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/8.jpg)
8
Language of the grammar:
L = { “a cat runs”, “a cat walks”, “the cat runs”, “the cat walks”, “a dog runs”, “a dog walks”, “the dog runs”, “the dog walks” }
![Page 9: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/9.jpg)
9
Notation
dognoun
catnoun
→
→
Variable Terminal
Production Rules
![Page 10: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/10.jpg)
10
Another Example Grammar: Derivation of sentence :
λ→
→
SaSbS
abaSbS ⇒⇒
ab
aSbS→ λ→S
![Page 11: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/11.jpg)
11
Language?
![Page 12: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/12.jpg)
12
aabbaaSbbaSbS ⇒⇒⇒
aSbS→ λ→S
aabb
λ→
→
SaSbSGrammar:
Derivation of sentence :
![Page 13: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/13.jpg)
13
Other derivations:
aaabbbaaaSbbbaaSbbaSbS ⇒⇒⇒⇒
aaaabbbbaaaaSbbbbaaaSbbbaaSbbaSbS
⇒⇒
⇒⇒⇒
![Page 14: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/14.jpg)
14
Language of the grammar
λ→
→
SaSbS
}0:{ ≥= nbaL nn
![Page 15: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/15.jpg)
15
More Notation Grammar ( )PSTVG ,,,=
:V
:T
:S
:P
Set of variables
Set of terminal symbols
Start variable
Set of Production rules
![Page 16: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/16.jpg)
16
Example Grammar :
λ→
→
SaSbSG
( )PSTVG ,,,=
}{SV = },{ baT =
},{ λ→→= SaSbSP
![Page 17: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/17.jpg)
17
More Notation Sentential Form: A sentence that contains variables and terminals Example: aaabbbaaaSbbbaaSbbaSbS ⇒⇒⇒⇒
Sentential Forms sentence
![Page 18: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/18.jpg)
18
We write: Instead of:
aaabbbS*⇒
aaabbbaaaSbbbaaSbbaSbS ⇒⇒⇒⇒
![Page 19: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/19.jpg)
19
In general we write: If:
nww*
1 ⇒
nwwww ⇒⇒⇒⇒ 321
![Page 20: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/20.jpg)
20
By default:
ww*⇒
![Page 21: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/21.jpg)
21
Example
λ→
→
SaSbS
aaabbbS
aabbS
abS
S
*
*
*
*
⇒
⇒
⇒
⇒λ
Grammar Derivations
![Page 22: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/22.jpg)
22
baaaaaSbbbbaaSbb
aaSbbS
∗
∗
⇒
⇒λ→
→
SaSbS
Grammar
Example
Derivations
![Page 23: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/23.jpg)
23
Another Grammar Example Grammar :
λ→
→
→
AaAbAAbSG
![Page 24: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/24.jpg)
24
Language?
![Page 25: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/25.jpg)
25
Grammar :
λ→
→
→
AaAbAAbS
Derivations:
€
S→ Ab→ bS→ Ab→ aAbb→ abbS→ Ab→ aAbb→ aaAbbb→ aabbb
G
![Page 26: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/26.jpg)
26
More Derivations
aaaabbbbbaaaaAbbbbbaaaAbbbbaaAbbbaAbbAbS
⇒⇒
⇒⇒⇒⇒
bbaS
bbbaaaaaabbbbS
aaaabbbbbS
nn∗
∗
∗
⇒
⇒
⇒
![Page 27: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/27.jpg)
27
Language of a Grammar For a grammar with start variable :
GS
}:{)( wSwGL∗⇒=
String of terminals
![Page 28: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/28.jpg)
28
Example For grammar :
λ→
→
→
AaAbAAbS
}0:{)( ≥= nbbaGL nn
Since: bbaS nn∗⇒
G
![Page 29: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/29.jpg)
29
A Convenient Notation
λ→
→
AaAbA
λ|aAbA→
thearticleaarticle
→
→ theaarticle |→
![Page 30: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/30.jpg)
30
Revisit first grammar A context-free grammar :
λ→
→
SaSbS
aabbaaSbbaSbS ⇒⇒⇒
G
A derivation:
![Page 31: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/31.jpg)
31
A context-free grammar :
λ→
→
SaSbS
aaabbbaaaSbbbaaSbbaSbS ⇒⇒⇒⇒
G
Another derivation:
![Page 32: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/32.jpg)
32
λ→
→
SaSbS
=)(GL
(((( ))))
}0:{ ≥nba nn
Describes parentheses:
![Page 33: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/33.jpg)
33
λ→
→
→
SbSbSaSaSA context-free grammar : G
Example
![Page 34: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/34.jpg)
34
Language?
![Page 35: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/35.jpg)
35
λ→
→
→
SbSbSaSaS
abaabaabaSabaabSbaaSaS ⇒⇒⇒⇒
A context-free grammar : G
Another derivation:
![Page 36: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/36.jpg)
36
λ→
→
→
SbSbSaSaS
=)(GL }*},{:{ bawwwR ∈
![Page 37: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/37.jpg)
37
λ→
→
→
SSSSaSbSA context-free grammar : G
Example
![Page 38: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/38.jpg)
38
Language?
![Page 39: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/39.jpg)
39
λ→
→
→
SSSSaSbS
abababaSbabSaSbSSSS ⇒⇒⇒⇒⇒
A context-free grammar : G
Two derivations:
ababSaSbSSSS ⇒⇒⇒⇒
![Page 40: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/40.jpg)
40
λ→
→
→
SSSSaSbS
}prefixanyin )()( and
),()(:{
vvnvn
wnwnw
ba
ba≥
==)(GL
Interpretation?
![Page 41: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/41.jpg)
41
λ→
→
→
SSSSaSbS
}prefixanyin )()( and
),()(:{
vvnvn
wnwnw
ba
ba≥
=
() ((( ))) (( ))
=)(GL
Describes matched parentheses:
![Page 42: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/42.jpg)
42
Definition: Context-Free Grammars
Grammar
Productions of the form: xA→String of variables and terminals
),,,( PSTVG =
Variables Terminal symbols
Start variable
Variable
![Page 43: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/43.jpg)
43
*},:{)(*
TwwSwGL ∈⇒=
),,,( PSTVG =
![Page 44: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/44.jpg)
44
Definition: Context-Free Languages A language is context-free if and only if there is a context-free grammar with
L
G)(GLL =
![Page 45: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/45.jpg)
45
Derivation Order ABS→.1
λ→
→
AaaAA
.3
.2λ→
→
BBbB
.5
.4
aabaaBbaaBaaABABS54321⇒⇒⇒⇒⇒
Leftmost derivation:
aabaaAbAbABbABS32541⇒⇒⇒⇒⇒
Rightmost derivation:
![Page 46: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/46.jpg)
46
Language?
![Page 47: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/47.jpg)
47
λ|ABbBbAaABS
→
→
→
Leftmost derivation:
abbbbabbbbBabbBbbBabAbBabBbBaABS
⇒⇒
⇒⇒⇒⇒
Rightmost derivation:
abbbbabbBbbabAbabBbaAaABS
⇒⇒
⇒⇒⇒⇒
![Page 48: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/48.jpg)
48
Language?
![Page 49: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/49.jpg)
49
Derivation Trees
![Page 50: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/50.jpg)
50
ABS⇒
ABS→ λ|aaAA→ λ|BbB→
S
BA
![Page 51: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/51.jpg)
51
ABS→ λ|aaAA→ λ|BbB→
aaABABS ⇒⇒
a a A
S
BA
![Page 52: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/52.jpg)
52
ABS→ λ|aaAA→ λ|BbB→
aaABbaaABABS ⇒⇒⇒S
BA
a a A B b
![Page 53: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/53.jpg)
53
ABS→ λ|aaAA→ λ|BbB→
aaBbaaABbaaABABS ⇒⇒⇒⇒S
BA
a a A B b
λ
![Page 54: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/54.jpg)
54
ABS→ λ|aaAA→ λ|BbB→
aabaaBbaaABbaaABABS ⇒⇒⇒⇒⇒S
BA
a a A B b
λ λ
Derivation Tree
![Page 55: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/55.jpg)
55
aabaaBbaaABbaaABABS ⇒⇒⇒⇒⇒
yield
aabbaa
=
λλ
S
BA
a a A B b
λ λ
Derivation Tree
ABS→ λ|aaAA→ λ|BbB→
![Page 56: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/56.jpg)
56
Partial Derivation Trees
ABS⇒
S
BA
Partial derivation tree
ABS→ λ|aaAA→ λ|BbB→
![Page 57: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/57.jpg)
57
aaABABS ⇒⇒
S
BA
a a A
Partial derivation tree
![Page 58: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/58.jpg)
58
aaABABS ⇒⇒
S
BA
a a A
Partial derivation tree
sentential form
yield aaAB
![Page 59: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/59.jpg)
59
aabaaBbaaBaaABABS ⇒⇒⇒⇒⇒
aabaaAbAbABbABS ⇒⇒⇒⇒⇒S
BA
a a A B b
λ λ
Same derivation tree
Sometimes, derivation order doesn’t matter Leftmost:
Rightmost:
![Page 60: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/60.jpg)
60
Ambiguity
![Page 61: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/61.jpg)
61
aEEEEEE |)(|| ∗+→
aaa ∗+
E
EE
EE
+
a
a a
∗
aaaEaaEEaEaEEE*+⇒∗+⇒
∗+⇒+⇒+⇒
leftmost derivation
![Page 62: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/62.jpg)
62
aEEEEEE |)(|| ∗+→
aaa ∗+
E
EE
+
a a
∗
EE a
aaaEaaEEaEEEEEE
∗+⇒∗+⇒
∗+⇒∗+⇒∗⇒
leftmost derivation
![Page 63: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/63.jpg)
63
aEEEEEE |)(|| ∗+→
aaa ∗+
E
EE
+
a a
∗
EE a
E
EE
EE
+
a
a a
∗
Two derivation trees
![Page 64: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/64.jpg)
64
The grammar aEEEEEE |)(|| ∗+→
is ambiguous:
E
EE
+
a a
∗
EE a
E
EE
EE
+
a
a a
∗
string aaa ∗+ has two derivation trees
![Page 65: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/65.jpg)
65
string aaa ∗+ has two leftmost derivations
aaaEaaEEaEEEEEE
∗+⇒∗+⇒
∗+⇒∗+⇒∗⇒
aaaEaaEEaEaEEE*+⇒∗+⇒
∗+⇒+⇒+⇒
The grammar aEEEEEE |)(|| ∗+→
is ambiguous:
![Page 66: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/66.jpg)
66
Definition:
A context-free grammar is ambiguous if some string has: two or more derivation trees
G
)(GLw∈
![Page 67: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/67.jpg)
67
In other words:
A context-free grammar is ambiguous if some string has: two or more leftmost derivations
G
)(GLw∈
(or rightmost)
![Page 68: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/68.jpg)
68
Why do we care about ambiguity?
E
EE
+
a a
∗
EE a
E
EE
EE
+
a
a a
∗
aaa ∗+
take 2=a
![Page 69: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/69.jpg)
69
E
EE
+
∗
EE
E
EE
EE
+
∗
222 ∗+
2
2 2 2 2
2
![Page 70: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/70.jpg)
70
E
EE
+
∗
EE
E
EE
EE
+
∗
6222 =∗+
2
2 2 2 2
2
8222 =∗+
4
2 2
2
6
2 2
24
8
![Page 71: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/71.jpg)
71
E
EE
EE
+
∗
6222 =∗+
2
2 2
4
2 2
2
6
Correct result:
![Page 72: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/72.jpg)
72
• We want to remove ambiguity
• Ambiguity is bad for programming languages
![Page 73: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/73.jpg)
73
We fix the ambiguous grammar:
aEEEEEE |)(|| ∗+→
New non-ambiguous grammar:
aFEFFTFTT
TETEE
→
→
→
∗→
→
+→
)(
![Page 74: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/74.jpg)
74
aFEFFTFTT
TETEE
→
→
→
∗→
→
+→
)(
aaaFaaFFaFTaTaTFTTTEE
∗+⇒∗+⇒∗+⇒
∗+⇒+⇒+⇒+⇒+⇒
E
E T+
T ∗ F
F
a
T
F
a
a
aaa ∗+
![Page 75: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/75.jpg)
75
E
E T+
T ∗ F
F
a
T
F
a
a
aaa ∗+
Unique derivation tree
![Page 76: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/76.jpg)
76
The grammar :
aFEFFTFTT
TETEE
→
→
→
∗→
→
+→
)(
is non-ambiguous:
Every string has a unique derivation tree
G
)(GLw∈
![Page 77: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/77.jpg)
77
Another Ambiguous Grammar
IF_STMT if EXPR then STMT →| if EXPR then STMT else STMT
Ambiguity?
![Page 78: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/78.jpg)
78
If expr1 then if expr2 then stmt1 else stmt2
IF_STMT
expr1 then
else if expr2 then
STMT
stmt1
if
IF_STMT
expr1 then else
if expr2 then
STMT stmt2 if
stmt1
stmt2
![Page 79: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/79.jpg)
79
Inherent Ambiguity Some context free languages have only ambiguous grammars
Example: }{}{ mmnmnn cbacbaL ∪=
λ||11
aAbAAcSS
→
→
λ||22
bBcBBaSS
→
→21 | SSS→
![Page 80: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/80.jpg)
80
The string nnn cba
has two derivation trees
S
1S
S
2S
1S c 2Sa
![Page 81: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/81.jpg)
81
Ambiguity in natural language?
![Page 82: Context-Free Languageshs/teach/13w/intro/pdf/08syn.pdf · CIS, LMU, 2013-11-25 Slides based on RPI CSCI 2400 Thanks to Costas Busch . Take-away Definition context-free grammar Definition](https://reader034.vdocument.in/reader034/viewer/2022042104/5e81fff5a64cde183f303795/html5/thumbnails/82.jpg)
Take-away Definition context-free grammar Definition context-free language Derivation, sentential form, sentence Derivation trees Ambiguity Context-free grammars for natural language
82