Lecture 21
Lecture 21
CFG: Decidability
PROOF:
The proof will be by constructive example.
Procedure:
• X is blue, so A is blue. Thus B and S are also blue.
• Since S is blue so X can be used to generate certain word from
the given CFG.
S ε | AB | XB
a a a b b
T AB | XB
X AT
Aa
Bb
S ε | AB | XB a a a b b
T AB | XB A A A B B
X AT
Aa
Bb
S ε | AB | XB a a a b b
T AB | XB
A A A B B
X AT
Aa S,T
T
Bb X
S,T
REJECT!
X
Dr. Nazir Ahmad Zafar
CYK Algorithm for Deciding CFLs
Now look at aaabbb :
S ε | AB | XB a a a b b b
T AB | XB
X AT
Aa
Bb
S ε | AB | XB a a a b b b
T AB | XB
A A A B B B
X AT
Aa
Bb
S ε | AB | XB a a a b b b
T AB | XB A A A B B B
X AT S,T
Aa
Bb
S ε | AB | XB a a a b b b
T AB | XB
A A A B B B
X AT
Aa S,T
T
Bb X
S ε | AB | XB a a a b b b
T AB | XB A A A B B B
X AT S,T
T
Aa
X
Bb
S,T
S ε | AB | XB a a a b b b
T AB | XB
A A A B B B
X AT
Aa S,T
T
Bb X
S,T
X
Dr. Nazir Ahmad Zafar
CYK Algorithm for Deciding CFLs
6) Write variables for all length 6 substrings.
S ε | AB | XB a a a b b b
T AB | XB A A A B B B
X AT
Aa
S,T
T
Bb X
S,T
S is included so X
aaabbb accepted!
S,T
Dr. Nazir Ahmad Zafar
CYK Algorithm for Deciding CFLs
Can also use a table for same purpose.
end at 1: 2: 3: 4: 5: 6:
aaabbb aaabbb aaabbb aaabbb aaabbb aaabbb
start at
0:aaabbb
1:aaabbb
2:aaabbb
3:aaabbb
4:aaabbb
5:aaabbb
Dr. Nazir Ahmad Zafar
CYK Algorithm for Deciding CFLs
1. Variables for length 1 substrings.
end at 1: 2: 3: 4: 5: 6:
aaabbb aaabbb aaabbb aaabbb aaabbb aaabbb
start at
0:aaabbb A
1:aaabbb A
2:aaabbb A
3:aaabbb B
4:aaabbb B
5:aaabbb B
Dr. Nazir Ahmad Zafar
CYK Algorithm for Deciding CFLs