LR1 (1131548), страница 2
Текст из файла (страница 2)
¯à®ç¨â âì ¢ InSym á«¥¤ãî騩
¢å®¤®© ᨬ¢®«
else if action[S,InSym]=reduce N->w
then 㤠«¨âì ¨§ ¬ £ §¨
2*|w| ᨬ¢®«®¢;
¯ãáâì ⥯¥àì ¢¥àåã誥 ¬ £ §¨
á®áâ®ï¨¥ S';
¯®¬¥áâ¨âì ¢¥àåãèªã ¬ £ §¨ N,
§ ⥬ á®áâ®ï¨¥ goto[S',InSym];
¢ë¢¥á⨠¯à ¢¨«® N->w
else if action[S,InSym]=accept
then return
else error()
end end end end;
‚ ç «¥ ¢ ¬ £ §¨¥ ¯®¬¥é¥® ç «ì®¥ á®áâ®ï¨¥ S0, ¢ ¡ãä¥à¥ w$, InSym ᮤ¥à¦¨â ¯¥à¢ë© ᨬ¢®« w$; € «¨§ â®à ¢ë¯®«ï¥â ¯à¨¢¥¤¥ãî ¨¦¥ ¯à®£à ¬¬ã ¤® â¥å ¯®à, ¯®ª ¡ã¤¥â ¤®á⨣ãâ® «¨¡® á®áâ®ï¨¥ accept, «¨¡® á®áâ®ï¨¥ error.
ÚÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄ¿
³‘®áâ®-³ action ³ goto ³
³ ï¨ï ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄ´
³ ³ id + * $ ³ E T F ³
ÃÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄ´
³ 0 ³ S6 ³ 1 2 3 ³
³ 1 ³ S4 acc ³ ³
³ 2 ³ R2 S7 R2 ³ ³
³ 3 ³ R4 R4 R4 ³ ³
³ 4 ³ S6 ³ 5 3 ³
³ 5 ³ R1 S7 R1 ³ ³
³ 6 ³ R5 R5 R5 ³ ³
³ 7 ³ S6 ³ 8 ³
³ 8 ³ R3 R3 R3 ³ ³
ÀÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÙ
�¨á. 3.16
�ਬ¥à 3.6. � à¨á. 3.16 ¨§®¡à ¦¥ë äãªæ¨¨ action ¨ goto LR-â ¡«¨æ ¤«ï £à ¬¬ ⨪¨ à¨ä¬¥â¨ç¥áª¨å ¢ëà ¦¥¨© á ¡¨ à묨 ®¯¥à æ¨ï¬¨ + ¨ * ¯à¨¬¥à 3.5. ‡¤¥áì Si ®§ ç ¥â ᤢ¨£ ¨ ¯®¬¥é¥¨¥ ¢ ¬ £ §¨ á®áâ®ï¨ï i, Rj - ᢥàâªã ¯® ¯à ¢¨«ã ®¬¥à j, acc - ¤®¯ãáª, ¯ãáâ ï ª«¥âª - ®è¨¡ªã.
‡ 票¥ goto[S,A] ¤«ï â¥à¬¨ « A ¨é¥âáï ¢ ¯®«¥ ¤¥©á⢨ï, á¢ï§ ®¬ á ¤¥©á⢨¥¬ ᤢ¨£ ¯® ¢å®¤ã A ¢ á®áâ®ï¨¨ S. �®«¥ ¯¥à¥å®¤ ¤ ¥â goto[S,A] ¤«ï ¥â¥à¬¨ «®¢ A.
� ¢å®¤¥ id+id*id ¯®á«¥¤®¢ ⥫ì®áâì á®áâ®ï¨© ¬ £ §¨ ¨ ¢å®¤ ¯®ª § ë à¨á. 3.17. � ¯à¨¬¥à, ¢ ¯¥à¢®© áâப¥ LR- «¨§ â®à 室¨âáï ¢ ã«¥¢®¬ á®áâ®ï¨¨ ¨ ç¨â ¥â ¯¥à¢ë© ¢å®¤®© ᨬ¢®« id. „¥©á⢨¥ S6 ¢ ã«¥¢®© áâப¥ ¨ á⮫¡æ¥ id ¢ ¯®«¥ action à¨á. 3.17 ®§ ç ¥â ᤢ¨£ ¨ ¯®¬¥é¥¨¥ S6 ¢¥àåãèªã ¬ £ §¨ . �â® ¨ ¨§®¡à ¦¥® ¢® ¢â®à®© áâப¥: ¯¥à¢ë© ᨬ¢®« id ¨ ᨬ¢®« á®áâ®ï¨ï S6 ¯®¬¥é îâáï ¢ ¬ £ §¨ ¨ id 㤠«ï¥âáï ¨§ ¢å®¤®© áâப¨.
’¥ªã騬 ¢å®¤ë¬ ᨬ¢®«®¬ áâ ®¢¨âáï +, ¨ ¤¥©á⢨¥¬ ¢ á®áâ®ï¨¨ 6 ¢å®¤ + ï¥âáï ᢥà⪠¯® F->id. ˆ§ ¬ £ §¨ 㤠«ïîâáï ¤¢ ᨬ¢®« (®¤¨ ᨬ¢®« á®áâ®ï¨ï ¨ ®¤¨ ᨬ¢®« £à ¬¬ ⨪¨). ’¥¯¥àì «¨§¨àã¥âáï ã«¥¢®¥ á®áâ®ï¨¥ �®áª®«ìªã goto ¢ ã«¥¢®¬ á®áâ®ï¨¨ ¯® ᨬ¢®«ã F - íâ® 3, F ¨ 3 ¯®¬¥é îâáï ¢ ¬ £ §¨. ’¥¯¥àì ¨¬¥¥¬ ª®ä¨£ãà æ¨î, ᮮ⢥âáâ¢ãîéãî âà¥â쥩 áâப¥. Žáâ «ìë¥ è £¨ ®¯à¥¤¥«ïîâáï «®£¨ç®.
ÚÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄ¿
³€ªâ¨¢ë©³ Œ £ §¨ ³ ‚室 ³ „¥©á⢨¥³
³¯à¥ä¨ªá ³ ³ ³ ³
ÃÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄ´
³ ³0 ³id + id * id $³ ᤢ¨£ ³
³ id ³0 id 6 ³ + id * id $³ F -> id ³
³ F ³0 F 3 ³ + id * id $³ T -> F ³
³ T ³0 T 2 ³ + id * id $³ E -> T ³
³ E ³0 E 1 ³ + id * id $³ ᤢ¨£ ³
³ E+ ³0 E 1 + 4 ³ id * id $³ ᤢ¨£ ³
³ E+id ³0 E 1 + 4 id 6 ³ * id $³ F -> id ³
³ E+F ³0 E 1 + 4 F 3 ³ * id $³ T -> F ³
³ E+T ³0 E 1 + 4 T 5 ³ id $³ ᤢ¨£ ³
³ E+T* ³0 E 1 + 4 T 5 * 7 ³ id $³ ᤢ¨£ ³
³ E+T*id ³0 E 1 + 4 T 5 * 7 id 6 ³ $³ F -> id ³
³ E+T*F ³0 E 1 + 4 T 5 * 7 F 8 ³ $³ T -> T*F³
³ E+T ³0 E 1 + 4 T 5 ³ $³ E -> E+T³
³ E ³0 E 1 ³ ³ ¤®¯ã᪠³
ÀÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÙ
�¨á. 3.17
3.3.3. LR-£à ¬¬ ⨪¨
ƒà ¬¬ ⨪¨, ¤«ï ª®â®àëå ¬®¦® ¯®áâநâì â ¡«¨æã LR-à §¡®à , §ë¢ îâáï LR-£à ¬¬ ⨪ ¬¨. …áâì Š‘-£à ¬¬ ⨪¨, ¥ ïî騥áï LR-£à ¬¬ ⨪ ¬¨, ®¤ ª® ¯à ªâ¨ç¥áª¨ ¤«ï ®¯¨á ¨ï ï§ëª®¢ ¯à®£à ¬¬¨à®¢ ¨ï ¤®áâ â®ç® ª« áá LR.
—â®¡ë £à ¬¬ ⨪ ¡ë« LR, «¨§ â®à, à ¡®â î騩 á«¥¢ - ¯à ¢® ¯® ⨯ã ᤢ¨£-ᢥà⪠, ¤®«¦¥ 㬥âì à ᯮ§ ¢ âì ®á®¢ë ¢¥àåã誥 ¬ £ §¨ . �® ¥á«¨ ¢®§¬®¦® à ᯮ§ âì ®á®¢ã, § ï ⮫쪮 ᨬ¢®«ë £à ¬¬ ⨪¨ ¢ ¬ £ §¨¥, â® áãé¥áâ¢ã¥â ª®¥çë© ¢â®¬ â, ª®â®àë© ¬®¦¥â, ç¨â ï ᨬ¢®«ë £à ¬¬ ⨪¨ ¢ ¬ £ §¨¥, ç¨ ï á ¢¥àåã誨, ®¯à¥¤¥«¨âì íâ㠮ᮢã. ”ãªæ¨¥© ¯¥à¥å®¤®¢ í⮣® ª®¥ç®£® ¢â®¬ â ï¥âáï â ¡«¨æ ¯¥à¥å®¤®¢ LR- «¨§ â®à . —â®¡ë ¥ ¯à®á¬ âਢ âì ¬ £ §¨ ª ¦¤®¬ è £¥ «¨§ , ¢¥àåã誥 ¬ £ §¨ ¢á¥£¤ åà ¨âáï â® á®áâ®ï¨¥, ¢ ª®â®à®¬ ¤®«¦¥ ®ª § âìáï íâ®â ª®¥çë© ¢â®¬ â ¯®á«¥ ⮣®, ª ª ® ¯à®ç¨â « ᨬ¢®«ë £à ¬¬ ⨪¨ ¢ ¬ £ §¨¥ ®â ¤ ª ¢¥àåã誥.
„«ï ¯à¨ïâ¨ï à¥è¥¨ï ® ᤢ¨£¥ ¨«¨ ᢥà⪥ «¨§ â®à ¯à®á¬ âਢ ¥â ®ç¥à¥¤ë¥ k ¢å®¤ëå ᨬ¢®«®¢. �à ªâ¨ç¥áª¨© ¨â¥à¥á ¯à¥¤áâ ¢«ïîâ á«ãç ¨ k=0 ¨ k=1. � ¯à¨¬¥à, ¢ â ¡«¨æ¥ ¤¥©á⢨© à¨á. 3.16 ¨á¯®«ì§ã¥âáï ®¤¨ ᨬ¢®«. ƒà ¬¬ ⨪ , ª®â®à ï ¬®¦¥â ¡ëâì ¯à® «¨§¨à®¢ LR «¨§ â®à®¬, § £«ï¤ë¢ ï k ¢å®¤ëå ᨬ¢®«®¢ ª ¦¤®¬ è £¥, §ë¢ ¥âáï LR(k)-£à ¬¬ ⨪®©.
Œ®¦® ¤ âì ¤à㣮¥ ®¯à¥¤¥«¥¨¥ LR(k)-£à ¬¬ ⨪¨. �®¯®«¥®© £à ¬¬ ⨪®© ¤«ï ¤ ®© £à ¬¬ ⨪¨ G §ë¢ ¥âáï Š‘-£à ¬¬ ⨪ , ¢ ª®â®à®© ¢¢¥¤¥ ®¢ ï ªá¨®¬ S' ¨ ¯à ¢¨«® ¢ë¢®¤ S'->S. �â® ¤®¯®«¨â¥«ì®¥ ¯à ¢¨«® ¢¢®¤¨âáï ¤«ï ⮣®, çâ®¡ë ®¯à¥¤¥«¨âì, ª®£¤ «¨§ â®à ¤®«¦¥â ®áâ ®¢¨âì à §¡®à ¨ § 䨪á¨à®¢ âì ¤®¯ã᪠¢å®¤ . ’ ª¨¬ ®¡à §®¬ ¤®¯ã᪠¨¬¥¥â ¬¥á⮠⮣¤ ¨ ⮫쪮 ⮣¤ , ª®£¤ «¨§ â®à ®áãé¥á⢫ï¥â ᢥàâªã ¯® ¯à ¢¨«ã S'->S. �®¯®«¥ ï £à ¬¬ ⨪ §ë¢ ¥âáï LR(k) ¤«ï k>=0, ¥á«¨ ¨§ ãá«®¢¨©
(1) S' =>* uAw => uvw,
(2) S' =>* zBx => uvy,
(3) FIRST(w)=FIRST(y)
á«¥¤ã¥â, çâ® uAy=zBx (â.¥. u=z, A=B ¨ x=y).
‘®£« á® í⮬㠮¯à¥¤¥«¥¨î, ¥á«¨ uvw ¨ uvy - ¯à ¢®¢ë¢®¤¨¬ë¥ 楯®çª¨ ¯®¯®«¥®© £à ¬¬ ⨪¨, ã ª®â®àëå FIRST(w)=FIRST(y) ¨ A->v - ¯®á«¥¤¥¥ ¯à ¢¨«®, ¨á¯®«ì§®¢ ®¥ ¢ ¯à ¢®¬ ¢ë¢®¤¥ 楯®çª¨ uvw, â® ¯à ¢¨«® A->v ¤®«¦® ¯à¨¬¥ïâìáï ¨ ¢ ¯à ¢®¬ à §¡®à¥ ¯à¨ ᢥà⪥ uvy ª uAy. ’ ª ª ª A ¤ ¥â v ¥§ ¢¨á¨¬® ®â w, â® LR(k) ãá«®¢¨¥ ®§ ç ¥â, çâ® ¢ FIRST(w) ᮤ¥à¦¨âáï ¨ä®à¬ æ¨ï, ¤®áâ â®ç ï ¤«ï ®¯à¥¤¥«¥¨ï ⮣®, çâ® uv § ®¤¨ è £ ¢ë¢®¤¨âáï ¨§ uA. �®í⮬㠨ª®£¤ ¥ ¬®¦¥â ¢®§¨ªãâì ᮬ¥¨© ®â®á¨â¥«ì® ⮣®, ª ª ᢥàãâì ®ç¥à¥¤ãî ¯à ¢®¢ë¢®¤¨¬ãî æ¥¯®çªã ¯®¯®«¥®© £à ¬¬ ⨪¨. Šà®¬¥ ⮣®, ¤«ï LR(k) £à ¬¬ ⨪¨ ¨§¢¥áâ®, ª®£¤ ¤®¯ã᪠¥âáï ¢å®¤ ï æ¥¯®çª .
Žá®¢ ï à §¨æ ¬¥¦¤ã LL- ¨ LR-£à ¬¬ ⨪ ¬¨ § ª«îç ¥âáï ¢ á«¥¤ãî饬. —â®¡ë £à ¬¬ ⨪ ¡ë« LR(k), ¥®¡å®¤¨¬® à ᯮ§ ¢ âì ¢å®¦¤¥¨¥ ¯à ¢®© ç á⨠¯à ¢¨« ¢ë¢®¤ , ¯à®á¬®âॢ ¢á¥, çâ® ¢ë¢¥¤¥® ¨§ í⮩ ¯à ¢®© ç á⨠¨ § £«ï㢠k ¢å®¤ëå ᨬ¢®«®¢ ¢¯¥à¥¤. �â® âॡ®¢ ¨¥ áãé¥á⢥® ¬¥¥¥ áâண®¥, 祬 âॡ®¢ ¨¥ ¤«ï LL(k) £à ¬¬ ⨪¨, ª®£¤ ¥®¡å®¤¨¬® ®¯à¥¤¥«¨âì ¯à¨¬¥¨¬®¥ ¯à ¢¨«®, ¢¨¤ï ⮫쪮 ¯¥à¢ë¥ k ᨬ¢®«®¢, ¢ë¢®¤¨¬ëå ¨§ ¥£® ¯à ¢®© ç áâ¨. Š« áá LL-£à ¬¬ ⨪ ï¥âáï ᮡáâ¢¥ë¬ ¯®¤ª« áᮬ LR. � áᬮâਬ ⥯¥àì ª®áâàã¨à®¢ ¨¥ â ¡«¨æ LR- «¨§ â®à .
LR(1) á¨âã æ¨¥© §ë¢ ¥âáï ¯ à [A->u.v,a], £¤¥ A->uv - ¯à ¢¨«® £à ¬¬ ⨪¨, a - â¥à¬¨ « ¨«¨ ¯à ¢ë© ª®æ¥¢®© ¬ થà $. "1" 㪠§ë¢ ¥â ¤«¨ã ¢â®à®© ª®¬¯®¥âë á¨âã æ¨¨, ª®â®à ï §ë¢ ¥âáï ¢ 楯®çª®© á¨âã æ¨¨. €¢ 楯®çª ¥ ¨£à ¥â ஫¨ ¢ á¨âã æ¨ïå ¢¨¤ [A->u.v,a], £¤¥ v ¥ à ¢® e, ® á¨âã æ¨ï ¢¨¤ [A->u.,a] ¢¥¤¥â ª ᢥà⪥ ¯® ¯à ¢¨«ã A->u ⮫쪮 ¥á«¨ á«¥¤ãî騬 ¢å®¤ë¬ ᨬ¢®«®¬ ï¥âáï a. ’ ª¨¬ ®¡à §®¬ ᢥà⪠¯® ¯à ¢¨«ã A->u âॡã¥âáï ⮫쪮 ¤«ï â¥å ¢å®¤ëå ᨬ¢®«®¢ a, ¤«ï ª®â®àëå [A->u.,a] ï¥âáï LR(1) á¨âã æ¨¥© ¢ á®áâ®ï¨¨ ¢¥àåã誥 ¬ £ §¨ .
�㤥¬ £®¢®à¨âì, çâ® LR(1)-á¨âã æ¨ï [A->u.v,a] ¤®¯ãá⨬ ¤«ï ªâ¨¢®£® ¯à¥ä¨ªá z, ¥á«¨ áãé¥áâ¢ã¥â ¢ë¢®¤ S=>*yAw=>yuvw, £¤¥. z=yu ¨ «¨¡® a - ¯¥à¢ë© ᨬ¢®« w, «¨¡® w à ¢® e ¨ a à ¢® $ (à¨á. 3.18).
S
/|\
/ | \
/ A \
/ /\ \
/ / \ \
y u v a...
---- ----
z w
�¨á. 3.18
�㤥¬ £®¢®à¨âì, çâ® á¨âã æ¨ï ¤®¯ãá⨬ , ¥á«¨ ® ¤®¯ãá⨬ ¤«ï ª ª®£®-«¨¡® ªâ¨¢®£® ¯à¥ä¨ªá .
�ਬ¥à 3.7. � áᬮâਬ £à ¬¬ ⨪ã
S -> BB
B -> aB | b
‘ãé¥áâ¢ã¥â ¯à ¢®áâ®à®¨© ¢ë¢®¤ S=>*aaBab=>aaaBab. ‘¨âã æ¨ï [B->a.B,a] ¤®¯ãá⨬ ¤«ï ªâ¨¢®£® ¯à¥ä¨ªá z=aaa, ¥á«¨ ¢ ®¯à¥¤¥«¥¨¨ ¢ëè¥ ¯®«®¦¨âì y=aa, A=B, w=ab, u=a, v=B. ‘ãé¥áâ¢ã¥â â ª¦¥ ¯à ¢®áâ®à®¨© ¢ë¢®¤ S*=>BaB=>BaaB. ˆ§ í⮣® ¢ë¢®¤ ¢¨¤®, çâ® ¤«ï ªâ¨¢®£® ¯à¥ä¨ªá Baa ¤®¯ãá⨬ á¨âã æ¨ï [B->a.B,$].
–¥âà «ì ï ¨¤¥ï LR-¬¥â®¤ § ª«îç ¥âáï ¢ ⮬, çâ® ¯® £à ¬¬ ⨪¥ áâநâáï ¤¥â¥à¬¨¨à®¢ ë© ª®¥çë© ¢â®¬ â, à ᯮ§ î騩 ªâ¨¢ë¥ ¯à¥ä¨ªáë. „«ï í⮣® á¨âã æ¨¨ £à㯯¨àãîâáï ¢® ¬®¦¥á⢠, ª®â®àë¥ ¨ ®¡à §ãîâ á®áâ®ï¨ï ¢â®¬ â . ‘¨âã æ¨¨ ¬®¦® à áᬠâਢ âì ª ª á®áâ®ï¨ï ¥¤¥â¥à¬¨¨à®¢ ®£® ª®¥ç®£® ¢â®¬ â , à ᯮ§ î騥 ªâ¨¢ë¥ ¯à¥ä¨ªáë, ¨å £à㯯¨à®¢ ¨¥ á ¬®¬ ¤¥«¥ ¥áâì ¯à®æ¥áá ¯®áâ஥¨ï ¤¥â¥à¬¨¨à®¢ ®£® ª®¥ç®£® ¢â®¬ â ¨§ ¥¤¥â¥à¬¨¨à®¢ ®£®.
„«ï ª®áâàã¨à®¢ ¨ï ¡®à ¬®¦¥á⢠¤®¯ãá⨬ëå LR(1)-á¨âã æ¨© ¡ã¤ã⠯ਬ¥ïâìáï ¯®¯®«¥ ï £à ¬¬ ⨪ G' ¨ ¯à®æ¥¤ãàë-äãªæ¨¨ closure ¨ goto.
� áᬮâਬ á¨âã æ¨î ¢¨¤ [A->u.Bv,a] ¨§ ¬®¦¥á⢠á¨âã æ¨©, ¤®¯ãá⨬ëå ¤«ï ¥ª®â®à®£® ªâ¨¢®£® ¯à¥ä¨ªá z. ’®£¤ áãé¥áâ¢ã¥â ¯à ¢®áâ®à®¨© ¢ë¢®¤ S=>*yAax=>yuBvax, £¤¥ z=yu. �।¯®«®¦¨¬, çâ® ¨§ vax ¢ë¢®¤¨âáï â¥à¬¨ «ì ï áâப bw. ’®£¤ ¤«ï ¥ª®â®à®£® ¯à ¢¨« ¢ë¢®¤ ¢¨¤ B->q ¨¬¥¥âáï ¢ë¢®¤ S=>*zBbw=>zqbw. ’ ª¨¬ ®¡à §®¬ [B->.q,b] ¤®¯ãá⨬ ¤«ï z. ‡¤¥áì «¨¡® b ¬®¦¥â ¡ëâì ¯¥à¢ë¬ â¥à¬¨ «®¬, ¢ë¢®¤¨¬ë¬ ¨§ v, «¨¡® ¨§ v ¢ë¢®¤¨âáï e ¢ ¢ë¢®¤¥ vax=>*bw ¨ ⮣¤ b à ¢® a. ’.¥. b ¯à¨ ¤«¥¦¨â FIRST(vax). �®áâ஥¨¥ ¢á¥å â ª¨å á¨âã æ¨© ¤«ï ¤ ®£® ¬®¦¥á⢠á¨âã æ¨©, â.¥. ¥£® § ¬ëª ¨¥, ¤¥« ¥â ¯à®æ¥¤ãà closure.
A«£®à¨â¬ ¯®áâ஥¨ï ¬®¦¥á⢠LR(1)-á¨âã æ¨© ¯à¨¢¥¤¥ ¨¦¥.
€«£®à¨â¬ 3.8. Š®áâàã¨à®¢ ¨¥ ¬®¦¥á⢠LR(1)-á¨âã æ¨©.
€«£®à¨â¬ § ª«îç ¥âáï ¢ ¢ë¯®«¥¨¨ £« ¢®© ¯à®£à ¬¬ë items, ª®â®à ï ¢ë§ë¢ ¥â ¯à®æ¥¤ãàë closure ¨ goto.
function closure(I);/*I - ¬®¦¥á⢮ á¨âã æ¨©*/
begin repeat ¤«ï ª ¦¤®© á¨âã æ¨¨ [A->u.Bv,a] ¨§ I,
ª ¦¤®£® ¯à ¢¨« ¢ë¢®¤ B->w ¨§ G' ¨ ª ¦¤®£®
â¥à¬¨ « b ¨§ FIRST(va), â ª®£®, çâ® [B->.w,b]
¥â ¢ I
do ¤®¡ ¢¨âì [B->.w,b] ª I;
until ª I ¥«ì§ï ¤®¡ ¢¨âì ®¢ëå á¨âã æ¨©;
return I;















