LR(1) LR(1)-elem LR(1) kanonikus elem [S->.a,#] [S->.a,a] [S->a.,#] [S->a.,a] [mag, előreolvasási szimbólum] S'->S S->a H0= closure({[S'->.S,#]}) = {[S'->.S,#], [S->.a,#]} H1= read(H0,S)=[S'->S.,#] H2= read(H0,a)=[S->a.,#] --goto-- ---action--- S a # 0 lép1 lép2 1 accept 2 red(S->a) 1. léptetés (step) 2. redukálás (reduce) (#0, a#) -> 0/a: lép2 (#0a2, #) -> 2/#: red(S->a) (#0S1, #) -> 1/#: accept (#0a1b2c3, #) -> 3/#: red(A->abc) (#0A, #) -> 3/#: red(A->abc) S->AB A->a B->b H0= closure([S'->.S,#])= [S'->.S,#],[S->.AB,#],[A->.a,b] H1= read(H0,S)=[S'->S.,#] H2= read(H0,A)=[S->A.B,#],[B->.b,#] H3= read(H0,a)=[A->a.,b] H4= read(H2,B)=[S->AB.,#] H5= read(H2,b)=[B->b.,#] S A B a b # 0 lép1 lép2 lép3 1 accept 2 lép4 lép5 3 red(A->a) 4 red(S->AB) 5 red(B->b) (#0, ab#) -> 0/a: lép3 (#0a3, b#) -> 3/b: A->a (#0A2, b#) -> 2/b: lép5 (#0A2b5, #) -> 5/#: red(B->b) (#0A2B4, #) -> 4/#: red(S->AB) (#0S1, #) -> 1/#: accept