CYK-Algorithm Updated
CYK-Algorithm Updated
i.e., if w =baaba Xi, j (j>i)= (Xi, i , Xi+1, j ), (Xi, i+1 , Xi+2, j ) … (Xi, j-1 , Xj, j )
S AB | BC X1, 3 = (X1 , 1 , X2 , 3) , (X1 , 2 , X3 , 3)
A BA | a
B CC | b
C AB | a
Construct a Triangular Table
X1, 5
X1, 4 X2, 5
X1, 3 X2, 4 X3, 5
X1, 2 X2, 3 X3, 4 X4, 5
X1, 1 X2, 2 X3, 3 X4, 4 X5, 5
w1 w2 w3 w4 w5
{S, A}
{B} {A, C} {A, C} {B} {A, C}
b a a b a
Constructing The Triangular Table
Xi, j (j>i)=(Xi, i , Xi+1, j ), (Xi, i+1 , Xi+2, j ) … (Xi, j-1 , Xj, j ) Xi,j
for ( j> i)
{S, A} {B}
{B} {A, C} {A, C} {B} {A, C}
b a a b a
Constructing The Triangular Table
Xi, j (j>i)=(Xi, i , Xi+1, j ), (Xi, i+1 , Xi+2, j ) … (Xi, j-1 , Xj, j )
•X3 , 4 = (Xi , i ,Xi+1 , j) = (X3 , 3 , X4 , 4)
• {A, C}{B} = {AB, CB} = Y
•Steps:
– Look for production rules to generate Y
S AB | BC
– There are two: S and C A BA | a
B CC | b
– X3 , 4 = {S, C} C AB | a
Constructing The Triangular Table
Ø
{S, A} {B} {S, C} {S, A}
{B} {A, C} {A, C} {B} {A, C}
b a a b a
Constructing The Triangular Table
Xi, j (j>i)=(Xi, i , Xi+1, j ), (Xi, i+1 , Xi+2, j ) … (Xi, j-1 , Xj, j )
•X2 , 4 = (Xi , i ,Xi+1 , j) (Xi , i+1 ,Xi+2 , j)
= (X2 , 2 , X3 , 4) , (X2 , 3 , X4 , 4)
• {A, C}{S, C} U {B}{B}= {AS, AC, CS, CC, BB} = Y
•Steps:
S AB | BC
– Look for production rules to generate YA BA | a
B CC | b
– There is one: B C AB | a
– X2 , 4 = {B}
Constructing The Triangular Table
Ø {B}
{S, A} {B} {S, C} {S, A}
{B} {A, C} {A, C} {B} {A, C}
b a a b a
Constructing The Triangular Table
Xi, j (j>i)=(Xi, i , Xi+1, j ), (Xi, i+1 , Xi+2, j ) … (Xi, j-1 , Xj, j )
•X3 , 5 = (Xi , i ,Xi+1 , j) (Xi , i+1 ,Xi+2 , j)
= (X3 , 3 , X4 , 5) , (X3 , 4 , X5 , 5)
• {A,C}{S,A} U {S,C}{A,C}
= {AS, AA, CS, CA, SA, SC, CA, CC} = Y
•Steps:
S AB | BC
– Look for production rules to generate Y A BA | a
B CC | b
– There is one: B C AB | a
– X3 , 5 = {B}
Constructing The Triangular Table
Ø {B} {B}
{S, A} {B} {S, C} {S, A}
{B} {A, C} {A, C} {B} {A, C}
b a a b a
Constructing The Triangular Table
Xi, j (j>i)=(Xi, i , Xi+1, j ), (Xi, i+1 , Xi+2, j ) … (Xi, j-1 , Xj, j )
•X1 , 4 = (Xi , i ,Xi+1 , j) (Xi , i+1 ,Xi+2 , j) (Xi , i+2 ,Xi+3, j )
= (X1 , 1 , X2 , 4) , (X1 , 2 , X3 , 4) (X1 , 3 , X4, 4 )
• {B}{B} U {S,A} {S,C} U {Ø } { B}
= {BB,SS,SC,AS,AC, Ø } = Y = Ø
•Steps:
S AB | BC
– Look for production rules to generate Y A BA | a
B CC | b
– There is one: B C AB | a
– X1, 4 = {Ø }
Constructing The Triangular Table
Xi, j (j>i)=(Xi, i , Xi+1, j ), (Xi, i+1 , Xi+2, j ) … (Xi, j-1 , Xj, j )
•X1 , 5 = (Xi , i ,Xi+1 , j) (Xi , i+1 ,Xi+2 , j) (Xi , i+2 ,Xi+3, j ) (Xi , i+3 ,Xi+4, j )
= (X1 , 1 , X2 , 5) , (X1 , 2 , X3 , 5) (X1 , 3 , X4, 5 ) (X1 , 4 , X5, 5 )
• {B}{S,A,C} U {S,A} {B} U {Ø } { S,A} U{Ø} {A,C}
= {BS,BA,BC,SB,AB, Ø, Ø } = Y = {S,A,C}
•Steps:
– Look for production rules to generate Y S AB | BC
A BA | a
– There is one: B B CC | b
C AB | a
– X1, 5 = {S,A,C }
Final Triangular Table
{S, A, C} X1, 5
Ø {S, A, C}
Ø {B} {B}
{S, A} {B} {S, C} {S, A}
{B} {A, C} {A, C} {B} {A, C}
b a a b a
Yes