Wir nummerieren die Zustände, beginnend mit 0.
In den Tabellen verzichten wir dann auf das führende "z".
J1
besteht aus
z0 = Ik(epsilon) = { [S-> . (D;B), ] },
z1 = Ik(() = { [S->( . D;B), ], [D-> . D;p, ;], [D-> . p, ;] },
z2 = Ik((D) = { [S->(D . ;B), ], [D->D . ;p, ;] },
z3 = Ik((p) = { [D->p . , ;] },
z4 = Ik((D;) = { [S->(D; . B), ], [D->D; . p, ;], [B-> . q;B, )], [B-> . q, )] },
z5 = Ik((D;B) = { [S->(D;B . ), ] },
z6 = Ik((D;p) = { [D->D;p . , ;] },
z7 = Ik((D;q) = { [B->q . ;B, )], [B->q . , )] },
z8 = Ik((D;B)) = { [S->(D;B) . , ] },
z9 = Ik((D;q;) = { [B->q; . B, )], [B-> . q;B, )], [B-> . q, )] },
z10 = Ik((D;q;B) = { [B->q;B . , )] },
( Ik((D;q;q = Ik((D;q) )
Analyses des Wortes (p;p;q;q)
:
Wir gegben jeweils den Keller, Lookahead und anzuwendenden
Funktion mit Ergebniswert an:
K=0, L=(, f(0,()=s
K=0 ( , L=p, g(0,()=1
K=0 ( 1, L=p, f(1,p)=s
K=0 ( 1 p, L=; g(1,p)=3
K=0 ( 1 p 3, L=; f(3,;)=D->p
K=0 ( 1 D, L=; g(1,D)=2
K=0 ( 1 D 2, L=; f(2,;)=s
K=0 ( 1 D 2 ;, L=p, g(2,;)=4
K=0 ( 1 D 2 ; 4, L=p, f(4,p)=s
... in der Folge immer einen goto- und einen Analyseschritt auf einmal ...
K=0 ( 1 D 2 ; 4 p, L=; g(4,p)=6, f=(6,;)=D->D;p
K=0 ( 1 D, L=; g(1,D)=2, f(2,;)=s
K=0 ( 1 D 2 ;, L=q, g(2,;)=4, f(4,q)=s
K=0 ( 1 D 2 ; 4 q, L=; g(4,q)=7, s(7,;)=s
K=0 ( 1 D 2 ; 4 q 7 ;, L=q, g(7,;)=9; f(9,q)=s
K=0 ( 1 D 2 ; 4 q 7 ; 9 q, L=), q(9,q)=7, f(7,))=B->q
K=0 ( 1 D 2 ; 4 q 7 ; 9 B, L=), g(9,B)=10, f(10,))=B->q;B
K=0 ( 1 D 2 ; 4 B, L=), g(4,B)=5, f(5,))=s
K=0 ( 1 D 2 ; 4 B 5 ), L=eps, g(5,))=8, f(8,eps)=S->(D;B)
K=0 S
Das Wort liegt also in der Sprache, und anhand der
Regelreihenfolge bei der Analyse ergibt sich folgende
Ableitung:
( p ; p ; q ; q )
| | | / | | / | |
| D / / / | / B |
| | / / / | / / /
| | | / / | / /
| | / / / | / /
| |/ / / | / /
| D / B /
\ | / / /
\ | / /_______/
\ | / /
\ | /_________/
\\ /
S