/*********************************************************************/
/*								     */
/* Manual							     */
/*								     */
/* Copyright (C) 1997 ƥޥ̥󡦥ʥå(ping@jaist.ac.jp)   */ 
/*                    ¼                     (oku@jaist.ac.jp)   */
/*                    Ԣƣ                    (kuni@jaist.ac.jp)   */
/*                                  (imai@cs.titech.ac.jp)   */
/*								     */
/*					       ʿ 9 ǯ 5  9    */
/*								     */
/*********************************************************************/

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                        %%
%%  ̲ LR ˡ˴Ťʹʸϴ  %%
%%                                        %%
%%            R-LRPar 1.0 version         %%
%%                                        %%
%%        եȥΥޥ˥奢        %%
%%                                        %%
%%                        May 1997        %%
%%                                        %%
%%           By Thanaruk THEERAMUNKONG    %%
%%                                        %%
%%                   ping@jaist.ac.jp     %%
%%                                        %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

ܥޥ˥奢ϰ̲ LR ˡѤʹʸϴ "R-LRPar" Ѥ
ŪμӥեȥλȤˤĤƽҤ٤롥եȥ
 2 ढꡤ(1) ༡׻ư륷ƥप (2) ׻
ư륷ƥǤ롥༡Ǥϡprolog ǵҤ졤prolog 
ץ꥿󥹥ȡ뤵줿 UNIX  DOS δĶѤǤ롥
ǤϡKL1 ǹۤ졤PIMOS ưƤ PIM Ѥ
롥1 Ǥϰ̲ LR ʸˡδä򵭽Ҥ롥LR ˡδμ
ˤ 1 ɤФƤɤ2 ǤϡR-LRPar 
ĶӹˤĤƽҤ٤롥R-LRPar δŪ߷ˤӥեȥ
γѤʤɤ򵭽Ҥ롥3 Ǥϡ༡ R-LRPar Ѥˤäơ
ŪʥޥɤҤ٤롥4 ǤϡŪ夲༡ R-LRPar 
Ѥͤʤɤ롥5 Ǥϡ༡ R-LRPar ѤˤĤƽҤ
롥Ǹ 6 ǤѼ򵭽Ҥ롥

(0) ޥ˥奢ι

   1  : ̲ LR ʸˡδ
   2  : եȥδĶӹ
   3  : ༡ R-LRPar εưӴŪʥޥ
   4  : ˤ륷ƥλȤ
   5  :  R-LRPar εưӴŪʥޥ
   6  : Ѽ
   7  : ¾

(1) ̲ LR ʸˡδ

ξϤǤϡܸǴäȤѤƤ̲ LR ʸˡ (GLR ˡ) 
ˤĤƽҤ٤롥Υ르ꥺ[tomita,87]ˤƤ졤Ψ
ɤˡȤΤƤꡤˡȤƤФ롥1.1 ǤϡGLR ˡ
άҤ١르ꥺ뤿ᡤ1.2 ˥르ꥺμº
δư򼨤

(1.1) GLR ˡθ

GLR ˡϡʸˡΰĤǤ LR ˡäȤʤäƤ롥LR ˡϡͿ
줿ʸˡ餢餫 LR ɽȸƤФ֤ɤߵ椫ʤ
ư񤭹ߡɽŪưԤϤʤ륢르
Ǥ롥LR ˡȤΤǤʸˡ LR ʸˡȸƤФʸ̮ͳʸ
ˡ (CFG) β̤Υ饹˸¤졤ʸˡѤ̤ CFG 
򰷤ȤǤʤ̤ CFG  LR ɽȡ֡
ɤߵǤưʣ礬ꡤŪưǤʤ
Ǥ롥

Ĥϡ˻ȤɽǤʣưƤ
硤ưοåʣ줾ưФƥå
ơLR βϤʤȤõμˡˤꡤ̤ CFG 
 LR ˡƱͤ˲ϤǤ뤳Ȥ򼨤ˡƱ֤Ʊ֤
ʣΥåˡλǥå礷Ϥʣ
ʤˡͰƤΤˡչ¤å (GSS) ȸƤФ
ǡ¤Ƴ

ʾˡˤꡤפʺƷ׻򤱡;ʬʥ񤷤ʤƺѤࡥ
Τ褦ħ顤 GLR ˡϹѤƤ롥

(1.2) GLR ˡˤϤμ¹

ѸδñʸˡӤʸˡб LR ɽʲ˼

ڴñʸˡ

     S   NP VP.
     S   S PP.
     NP  n.
     NP  det n.
     NP  NP PP.
     PP  prep NP.
     VP  v NP.

âʸ: ü桤ʸ: ü (ʻ)Ǥ롥ޤ
      S = ʸ     NP  = ̾   VP   = ư    PP = ֻ
      n = ̾   det =      v    = ư    prep = ֻ
      
Ūˤʸˡ LR ɽ򥢥르ꥺŪ˺Ǥ롥LR ɽˤϤ
μ(Simple LR, Canonical LR, Lookahead LR)ꡤ줾Ĺꡦ
û꤬ۤʤ뤿ᡤŪˤäѤɬפ롥㤨С
Canonical LR Ǥϡ֤οǤ¿Ū LR ɽǤ롥Τ
ᡤŬʸϤ˺ǤŬڤƤȹͤ롥LR ɽκ˴ؤ륢
르ꥺξܺ٤[Aho,86],[Sippu90]˻Ȥ줿ʲϾ嵭ʸˡ
Ǥ Canonical LR ɽǤ롥ɽǤϡ3 ư¸ߤƤ
롥`sh N', `re N',  `acc' Ǥ롥`sh N'  N ֤˥եȡʰư
Ȥ̣Ǥ롥`re N'  N ʸˡ§ŬѤ뤳ȤǤ롥ޤ
`acc' ϲϤȤ̣Ǥ롥


state      Action Part (ư)       Goto Part (Goto ) 
      
() det  n  v   prep   $  NP  PP  VP  S   

   0   sh3sh4                 2          1    

   1               sh6   acc     5          

   2          sh7  sh6           9    8     

   3      sh10                              

   4          re3  re3  re3                 

   5               re2  re2                 

   6   sh3sh4                11             

   7   sh3sh4                12               

   8               re1  re1                 

   9          re5  re5  re5                 

  10          re4  re4  re4                 

  11          re6  sh6  re6      9          
                   re6                      

  12               sh6   re7     9          
                   re7                      


̲ LR ˡ LR ɽѤʸβϤŪ˹Ԥʤ嵭Τ褦
ʸˡۣ¸ߤƤ뤿ᡤ1 ĤʣưƤ
սǲưŪ˹Ԥ롥

ʸβϤˤ GLR ˡư롥

ʸ      I  saw  a  man  in  the  apartment  with  a  telescope   .
ʻ        n   v  det  n  prep det      n      prep det     n       $
                                                     
ơ                                        

ʤʸǤϡñ򼭽ˤʻ줬Ф
Ȳꤹ롥ޤñ֤ζڤ֥ơפȸƤӡ1 ܤ򥹥ơ
 0n ܤ n+1 ܤδ֤򥹥ơ n Ȥ롥ʤơ n 
ǲϤ n+1 ܤθȤʤ롥

ѡϽ 0ơ 0 Ϥ򳫻Ϥ롥ޤʸñ
 1 ɤߤ롥

 0  "I"(ʻ: n) LR ɽ򻲾Ȥȡ`sh4' ȤҤ
롥ϡɤߵ򥹥å˥ץå夷ɤߤԤ 4 
ܤפȤ̣Ǥ롥shift ưλȡѡϼΥơ
βϤ˰ܤ롥

ߤñ졧 "I"   (ʻ: n) 

        ----- 
  ---|  n  |---         LR ɽ˽
        -----               n Фƾ  ˥եȤ롥
                  
                     ơֹ

ñ졧 "saw" (ʻ: v) 

        -----           ----- 
  ---| 0:n |---    |  v  |        ư re3 Ǥ롥
        -----           ----- 
               
                                  0: [n `I']


ϡָߤΥå§ 3 Ѥ reduce פȤ̣Ǥ
롥ѡϥåȥåפ鵬§αդε˥ݥåפ
դεץå夹롥λˡݥå׸˥åȥåפ˸
֤ȡץå夹뺸դε LR ɽα¦ʬ (goto table ȸƤФ
) 򻲾Ȥܤ֤ꤹ롥ޤǤưλ֤
˼ʤޤǤϡ̾ LR ˡβϤƱǤ롥

        -----           ----- 
  ---|1:NP |---    |  v  |        ư sh7 Ǥ롥
        -----           ----- 
                                  0: [n `I']
                                  1: [NP (0)]


ʲƱͤ˲Ϥʤȡʲξ֤LR ɽ򻲾ȤʣΥ
롥ǤϤޤ reduce ư˹Ԥshift ưϺǸ˹


       ----        ---        ----          ----
  --|1:NP|----|2:v|----|5:NP|--  |prep|  ư re7 
       ----        ---        ----          ----              sh6 Ǥ롥
                                   
                                           0: [n `I']
                                                   1: [NP (0)]
                                                   2: [v `saw']
                                                   3: [det `a']
                                                   4: [n `man']
                                                   5: [NP (3 4)]

GLR ˡǤϡ٤åʣϤ˽롥
줾ΥåƱȤ뤿ᡤơñ̤ǲϤԤƥå
ϤΥơ shift ưλԤ碌롥

ơ嵭ξ֤ reduce ʳǥåʬ롥Υå
⤦ shift ưΤˤΤޤޤˤƤʲξ֤ˤʤ롥

       ----        ---        ----       
  --|1:NP|----|2:v|----|5:NP|--   ----    ư re6 Ǥ롥
       ----      ---        ----         |prep|  
                            ----          ----            
               --------------|6:VP|--             ư re1 Ǥ롥
                              ----
                                   
                                           0: [n `I']
                                                   1: [NP (0)]
                                                   2: [v `saw']
                                                   3: [det `a']
                                                   4: [n `man']
                                                   5: [NP (3 4)]
                                                   6: [VP (2 5)]

reduce ưԤäΥåư LR ɽ򸫤ȺƤ reduce ư
ȤʤäƤ롥reduce ư shift ưͥ褹뤿ᡤ reduce 
ưԤ

Υåμư shift 6 Ǥ롥ޤ⤦Υåư
 shift 6 Ǥ롥2 ĤΥåϤʸνʤ롥
ǡλˤʬƤ 2 ܤΥåȥåפޡ
Ԥ(\figref{fig:sp06})
åޡ顤ѡϼΥơؽܹԤ
롥

       ----        ---        ----          ------       -----
  --|1:NP|----|2:v|----|5:NP|----|8:prep|-- | det |
     ----        ---        ----          ------       -----     
                             ---                   ư sh3 Ǥ롥
   ---------------------------|7:S|---------      
                               ---
                                             
                                            
                                                   0: [n `I']
                                                   1: [NP (0)]
                                                   2: [v `saw']
                                                   3: [det `a']
                                                   4: [n `man']
                                                   5: [NP (3 4)]
                                                   6: [VP (2 5)]
                                                   7: [S (1 6)]
                                                   8: [prep `in']

ʲƱͤ˽ʤᡤǽŪʸޤǽʤ LR ɽ `acc' 
ʬã롥ϡϷ̤뤳Ȥ̣롥

        ----           ----- 
  ---|25:S|---    |  $  |        ư acc Ǥ롥
        ----           ----- 
                                     0: [n `I']
                                   1: [NP (0)]
                                         2: .........
                                            .........
                                        25: [S (1 24) (15 20) (7 23)]

(2) եȥδĶӹ

(2.1) Ķ

     ܥեȥϡ༡׻Ķ׻Ķư
ĤΥƥफ롥༡ǥƥϡprolog ˤ졤prolog
󥿥ץ꥿ư롥Τᡤprolog 󥹥ȡ뤵Ƥ
ĶɬפǤ롥ޤȯĶ SICStus prolog Ǥ뤬prolog 
ɸŪʥޥɤѤΤǡ¾ prolog Ǥ⺹ۤɤʤư롥
ǥƥϡKL1 ˤ줿Τ PIMOS ư롥
PIM ޥǺȤɬפ롥
     ޤξƥζʬȤơ̲ LR ʸϤˤʸˡ
 LR ɽѴʬʥץˤ prolog ǵҤƤ롥
¾ˡʸñ¤ӡˤʻĤ Brill's Tagger ϥե꡼
եȥǡC ǽ񤫤ƤΤǡC ѥ顼ɬפǤ롥
Brill's Tagger Ϥ줿̤Ϥ˥ƥѤǤʤ
եȥΰǤ뤤ĤΥץϤθԤʤ
ƥबѤǤѴ롥ʬ perl, shell script Ǻ


(2.2) ƥι

	     ------------
            |ʸ̮ͳʸˡ|
             ------------
                  
     
      LR ɽ⥸塼ʣ˨
     
                  
     ------------------------------
    | ʸ̮ͳʸˡб LR ɽ |
     ------------------------------
                  
 
  prolog/KL1 ⥸塼ʣ˨
 
                  
           ---------------     ----------------------------------
          | prolog/KL1  |   | LR ѡΥᥤץʣ|
           ---------------     ----------------------------------
                                            
                  
                                
                                        ----------
               LRѡ  | Ϸ |
                                      ----------
        ------------
       | դʸ |
        ------------
             
    
     Brill's Tagger 
    
             
          --------
         | ʸ |
          --------

      -----
     |     |     ϥǡɽƤ롥
      -----
    
             ץɽƤ롥
    

LR ɽ⥸塼(1)ϡʸ̮ͳʸˡϥǡȤʸˡб
 LR ɽư롥 LR ɽ Canonical LR ɽȤäȤ
ζΤǤ롥prolog/KL1 ⥸塼(2) LR ɽб
prolog ᤪ KL1 롥LR ɽľѤ⤳Τ褦
ѥ뤷Ѥ뤳Ȥǥѡβ®٤Ǥ롥
줿 LR ѡΥᥤץ(3)ȹ碌 LR ѡȤ
롥Ǥܸ LR ѡ prolog νϾưƤ롥
KL1 ץȤƤܼˡμ˴ؤƤϡ (2) ʸˡ
KL1 Ѵ⥸塼뤬ȯѤߤǤ롥(1)  LR ɽ⥸塼
ϡˤƤ prolog ǤΤΤƱΤѤǤΤǡѹ
ɬפʤޤ(3)  LR ѡΥᥤץ礭Ŭʸ
ϤʬŬ򸡽Фۤɤʬʬ롥

(2.3) ץΰ

     LR ɽ⥸塼

        ʸ̮ͳʸˡ LR ɽѴ롥
        ⥸塼 R-LRPar/{LR_prolog,LR_kl1}/maketable βˤꡤ
          ʲιġ
        ־μ¹ԥե run_maketable.pl Ǥ롥

        run_maketable.pl
       
        ../util/util_list
              
            find_term_nonterm.pl
           
            makeclause.pl

     LR ɽ prolog ⥸塼

        LR ɽб prolog Ѵ롥
        ⥸塼 R-LRPar/LR_prolog/makeclause βˤꡤ
          ʲιġ
        ־μ¹ԥե run_makeclause.pl Ǥ롥

        run_makeclause.pl
       
        ../util/util_list
              
            find_term_nonterm.pl
           
            maketable.pl

     LR ɽ KL1 ⥸塼

        LR ɽб KL1 Ѵ롥
        ⥸塼 R-LRPar/LR_kl1/makeclause βˤꡤ
          ʲιġ
        ־μ¹ԥե run_makeclause.pl Ǥ롥

        run_makeclause.pl
       
        ../util/util_list
              
            find_term_nonterm.pl
           
            maketable.pl

     ʸˡФ LR ɽ prolog ¸Ƥ
       Ȥι

        LR ɽ⥸塼פ 
          LR ɽ prolog ⥸塼פ
           줿ʸˡ R-LRPar/LR_prolog/gram ¸Ƥ롥

       % ʸˡ ( 8 § )
       gramsmall               ʸˡ
       gramsmall.mod           ʸˡ
       gramsmall.tbl           LR ɽ
       gramsmall.tbl.sort      Ȥ줿 LR ɽ
       gramsmallclause.pl      ʸˡѴ줿 prolog 

       % 礭ʸˡ ( 260 § )
       gram260                 ʸˡ
       gram260.mod             ʸˡ
       gram260.tbl             LR ɽ
       gram260.tbl.sort        Ȥ줿 LR ɽ
       gram260clause.pl        ʸˡѴ줿 prolog 

     ʸˡФ LR ɽ KL1 ¸Ƥ
       Ȥι

        LR ɽ⥸塼פ 
          LR ɽ KL1 ⥸塼פ
           줿ʸˡ R-LRPar/LR_kl1/gram ¸Ƥ롥

       % ʸˡ ( 8 § )
       gramsmall               ʸˡ
       gramsmall.mod           ʸˡ
       gramsmall.tbl           LR ɽ
       gramsmall.tbl.sort      Ȥ줿 LR ɽ
       gramsmallkl1            ʸˡѴ줿 KL1 
                                   Υǥ쥯ȥ

       % 礭ʸˡ ( 260 § )
       gram260                 ʸˡ
       gram260.mod             ʸˡ
       gram260.tbl		 LR ɽ
       gram260.tbl.sort	 Ȥ줿 LR ɽ
       gram260kl1              ʸˡѴ줿 KL1 
                                   Υǥ쥯ȥ

     ༡ R-LRPar

        եȥưץ R-LRPar/LR_prolog/parser/run.pl
          Ǥ롥
        ༡ R-LRPar ιϰʲ̤Ǥ롥
          ٤ƤΥץ R-LRPar/LR_prolog/parser ǥ쥯ȥ
          ˤ롥

        run.pl (or runcomp.pl)
       
        util_lr
              
            parser_interface.pl
              
            parser.pl
           
            error_handle.pl
           
            ../gram/gramsmallclause (or ../gram/gram260clause)


      R-LRPar

         R-LRPar ιϰʲ̤Ǥ롥
          ٤ƤΥץ R-LRPar/LR_kl1/parser ǥ쥯ȥ
          ˤ롥

        parser_main.kl1
        gramsmallkl1              % ʸˡ
            gram_main.kl1
            gram.kl1
        gram260kl1                % 礭ʸˡ
            gram_main.kl1
            gram1.kl1 ... gram35.kl1

     Brill's Tagger ⥸塼

        ʸñʻƤץǤ롥
        Υ⥸塼 R-LRPar/btagger βˤ롥
        ޤ Tagger Ѥ뤿 shell script 
          R-LRPar/tagger_util βˤ롥
          Ѥ runtagger $SentenceFileName

(3) ༡ R-LRPar εưӴŪʥޥ

(3.1) 

  ڲʸʻŤ

    եȥѤˡBrill's tagger ˤꡤϤʸʻ
ŤƤɬפ롥ˡ  'R-LRPar/LR_prolog/README' 򻲾
Ф褤Ǵñ˽Ҥ٤롥

    1) ϤʸǼƤե  FILENAME Ȳꤷ

       %  runtagger FILENAME  

       ˤꡤFILENAME.re Ȥ̥ե뤬롥Υե
       FILENAME γʸʻ줬դ줿Τ prolog ηǽϤ
       롥

    2) ɬܤǤϤʤִñʼưϤΥե(FILENAME.re)
       sent_file.re ˥󥯤ĥ뤳ȤǤ롥

  ʸˡ prolog ؤѴ

     ̾ʸˡ 'R-LRPar/LR_prolog/gram' βƤ롥Ѱդ
ϼŪʸˡ gram260 ȥƥʸˡ gramsmall Ǥ롥ˤʸˡ
ѤȤ롥

     λˡ'R-LRPar/LR_prolog/maketable/run_maketable.pl' 
prolog 󥿥ץ꥿˥ѥ뤹롥âѥ뤹 
run_maketable.pl ΰֲˤ

:- maketable(+ʸˡե̾,-Ѵʸˡե̾,+LRɽե̾,
             +ȥåץ٥뵭).

ȤԤ񤭴ơŬڤʸˡ̾ͿƤɬפ롥1  3 
ܤŬڤ̾롥ޤȥåץ٥뵭ʸˡΰ־Υ
Ϳ뤳ȤǤ롤̾, sentence Ȥ椬˾ޤ

(3.2) ư

    ܥեȥϡLR ɽפʸ̮ͳʸˡפ LR
 ɽбprolog פ롥θ̤˳ȯ֥ᥤץ
פȹ碌 LR ѡȤƻȤΰϢưϤۤȤɼưŪ
Ԥʤˡϰʲ˽Ҥ٤롥ʲϡǥ쥯ȥ src/LR_prolog 
current directory Ȥ롥

    1) ưˤäƤޤ prolog Ω夲롥
       (R-LRPar/LR_prolog/parser )

    2) [run] ˤ "run.pl" 뤤 "runcomp.pl"  prolog 
       ǡ١˼ࡥ

    3) "start." Ȥޥɤǡѡư롥ޤƥγ
        Help εǽäƤ롥Ūʥޥɤϰʲ˼

(3.3) Ūʥޥ

    start.  R-LRPar ư롥
    h ǥإפ򸫤롥
    c ʸΥåȤѹ롥
    d(N)  N ܤʸβϷ̤ɽ롥
    l ʸΥꥹȤ򻲾Ȥ롥
    l(N,M)  N ܤ M ܤʸ򻲾Ȥ롥
    N ()  N ܤʸϤ롥
    q ǥƥλ롥

(4) ˤư

    ʲ src/LR_prolog βǼ¹ԤͻҤɽƤ롥

---------- Begin Example (1) ----------
SICStus 3  #3: Wed Apr 17 01:11:05 JST 1996
| ?- [run].
{consulting R-LRPar/LR_prolog/parser/run.pl...}
{compiling R-LRPar/LR_prolog/parser/util_lr...}
{R-LRPar/LR_prolog/parser/util_lr compiled, 70 msec 9920 bytes}
{consulting R-LRPar/LR_prolog/parser/parser.pl...}
{R-LRPar/LR_prolog/parser/parser.pl consulted, 250 msec 15664 bytes}
{consulting R-LRPar/LR_prolog/gram/gram260clause.pl...}
{R-LRPar/LR_prolog/gram/gram260clause.pl consulted, 90350 msec 3133856 bytes}
{consulting R-LRPar/LR_prolog/parser/error_handle.pl...}
{R-LRPar/LR_prolog/parser/error_handle.pl consulted, 220 msec 9712 bytes}
{consulting R-LRPar/LR_prolog/parser/parser_interface.pl...}
{Undefined predicates will just fail (fail)}
{R-LRPar/LR_prolog/parser/parser_interface.pl consulted, 110 msec 9664 bytes}


****************************************
*  Type "start." to start the process  *
****************************************

{R-LRPar/LR_prolog/parser/run.pl consulted, 91080 msec 3178896 bytes}

yes
| ?- 

---------- End Example (1) ----------
ʾ "run.pl"  prolog Ǽ¹ԤͻҤǤ롥λĤ
ե뤬ɤ߹ޤ롥㤨СѡΤʸˡǤ롥
----------  (1) ----------

=====================================================================

---------- Begin Example (2) ----------

| ?- start.
start.
*******************************
*  Welcome to R-LRPar system  *
*                1.0 version  *
*******************************
Do you want to indicate the filename of the sentences ? (y/n)
(Default is sent_file.re)
{Warning: abolish(user:input_sentence) - no matching predicate}
|: 
|: n.
{consulting R-LRPar/LR_prolog/parser/sent_file.re...}
{R-LRPar/LR_prolog/parser/sent_file.re consulted, 90 msec 8880 bytes}

Command (h: help) > h.

  h      - help
  c      - change sentence set
  d(N)   - display result
  l      - list sentences
  l(N,M) - list Nth-Mth sentences
  N      - Using Nth sentence
  q      - quit

Command (h: help) > 

---------- End Example (2) ----------

 start  R-LRPar ư롥ΤȤåФ롥˽
Ф褤ޤCommand (h: help) >  "h." Ϥȥإץ
˥塼ФƤ롥ʸλȤ l ȤޥɤǹԤʤɤʸβϤ
뤫ꤹΤˡʸбֹϤ롥
----------  (2) ----------

=====================================================================

---------- Begin Example (3) ----------

Command (h: help) > l.
1: uh(hello) 
2: dt(the) nnp(secretariat) in(for) dt(the) jj(first) jj(international) nn(conference) in(of) vbg(interpreting) nn(telephony) 
3: uh(yes) dt(that) vbz([39,115]) prp(me) 
4: rb(just) dt(a) nn(moment) 
5: prp(i) md(would) vb(like) to(to) vb(ask) nn(something) in(about) nn(registration) to(to) dt(the) nn(conference) 
6: rb(sure) vb(go) rb(ahead) vb(please) 
7: prp(i) vbp(have) dt(the) nn(registration) nn(form) rb(here) in(at) nn(hand) 
8: uh(yes) 
9: in(in) dt(the) nn(registration) nn(form) ex(there) vbz(is) dt(an) nn(item) in(for) dt(the) nn(name) in(of) dt(the) nn(credit) nn(card) cc(and) dt(the) nn(credit) nn(card) nn(number) 
10: ex(there) vbz([39,115]) nn(someone) wp(who) vbz(does) rb([110,39,116]) vb(have) dt(any) nn(credit) nns(cards) 
11: wp(what) vbz(happens) in(in) dt(that) nn(case) 
12: uh(well) dt(the) nn(credit) nn(card) nn(name) cc(and) nn(number) prp(we) vbp(hope) in(that) prp(it) md(would) vb(be) vbn(used) in(by) jj(foreign) nns(guests) cc(and) jj(foreign) nns(speakers) to(to) dt(the) nn(conference) 
13: prp(it) vbz([39,115]) rb(much) jjr(easier) to(to) vb(pay) in(by) nn(credit) nn(card) 
14: in(if) prp(you) vbp(do) rb([110,39,116]) vb(have) dt(a) nn(credit) nn(card) prp(you) md(can) vb(pay) in(by) nn(cash) cc(or) in(by) nn(check) 
15: uh(yes) vb(thank) prp(you) 
16: cc(and) prp(i) md(would) vb(like) to(to) vb(know) nn(something) rb(else) in(about) dt(that) rb(too) 
17: in(about) dt(the) nn(registration) nn(fee) prp(you) vbd(mentioned) cd(100) jj(american) nns(dollars) md(should) prp(it) vb(be) vbn(payed) in(in) jj(american) nns(dollars) 
18: jj(null) 
19: rb(not) jj(necessary) dt(no) 
20: in(at) dt(the) jj(current) nn(exchange) nn(rate) cd(100) nn(dollar) vbz(is) rb(roughly) cd(16000) nn(yen) rb(so) in(for) jj(japanese) nns(people) in(of) nn(course) prp(they) md(may) vb(pay) in(in) nnp(yen) 
21: prp(i) md(would) vb(like) to(to) vb(ask) nn(something) in(about) nn(registration) 

Command (h: help) > 3.
{Warning: abolish(user:sysmode/1) - no matching predicate}
input : [[uh,yes],[dt,that],[vbz,[39,115]],[prp,me],[null,null]]

it is an ill-formed sentence
The Number of Trees is 141
Calculation Time for normal phrase: -490 (ms)
Calculation Time for ill-formed phrase: 3670 (ms)

Command (h: help) > 

---------- End Example (3) ----------
嵭 "l." ϤơʸפǧʸֹꤷƲϤ
ҤǤ롥Ǥϡ3 ܤʸ 

yes(uh) that(dt) is(vbz) me(prp) 

Ϥ롥η̤ 141 ڤ줿ޤϻ֤ɽ롥
----------  (3) ----------

=====================================================================

---------- Begin Example (3) ----------

Command (h: help) > d.
The result of which sentences you want to display ? 
Please indicate by d(N)
If N = *, see the results of all analysed sentence

Command (h: help) > d(*).
Sentence No. 3 has 141 tree(s).
--> [[uh,yes],[dt,that],[vbz,[39,115]],[prp,me]]

Command (h: help) > d(3).
Sentence No. 3 has 141 tree(s).

1 : [sentence,[[s,[[sdec,[[subj,[[np,[[ddet,[[dt,that-addcat(s,[[uh,yes:0]]):2]]:2]]:2]]:2],[vp,[[vbz,[39,115]:0],[np,[[prp,me:0]]:0]]:0]]:2]]:2]]:2]
2 : [sentence,[[s,[[sdec,[[subj,[[np,[[ddet,[[dt,that-addcat(s,[[uh,yes:0]]):2]]:2]]:2]]:2],[vp,[[vbz,[39,115]:0],[obj,[[np,[[prp,me:0]]:0]]:0]]:0]]:2]]:2]]:2]
3 : [sentence,[[s,[[sdec,[[subj,[[np,[[ddet,[[dt,that-addcat(s,[[uh,yes:0]]):2]]:2]]:2]]:2],[bep,[[vbz,[39,115]:0]]:0],[pred,[[np,[[prp,me:0]]:0]]:0]]:2]]:2]]:2]
4 : [sentence,[[s,[[sdec,[[subj,[[np,[[ddet,[[dt,that-addcat(sentence,[[s,[[uh,yes:0]]:0]]):3]]:3]]:3]]:3],[vp,[[vbz,[39,115]:0],[np,[[prp,me:0]]:0]]:0]]:3]]:3]]:3]
.........................
.........................
.........................
141 : [sentence,[[s,[[sdec,[[subj,[[np,[[ddet,[[dt,that-addword(uh,yes):1]]:1]]:1]]:1],[bep,[[vbz,[39,115]:0]]:0],[pred,[[np,[[prp,me:0]]:0]]:0]]:1]]:1]]:1]

Command (h: help) > 
---------- End Example (3) ----------
d ޥɤǲʸ̤ɽꡤʸξܺٷ̤ɽ
ꤹ뤳ȤǤ롥Ǥϡ3 ܤʸϤơξܺٷ̤
ɽͻҤǤ롥
----------  (3) ----------

=====================================================================

(5)  R-LRPar εưӴŪʥޥ

     R-LRPar Ѥ༡ R-LRPar ٤ƤñǤ롥
 R-LRPar ѤϰʲǹԤʤ

(5.1) 

  ڲʸʻŤ

    ༡ R-LRPar ƱͤǤ롥եȥѤˡBrill's
tagger ˤꡤϤʸʻŤƤɬפ롥ˡ
'R-LRPar/LR_prolog/README' 򻲾ȤФ褤Ǵñ˽Ҥ٤롥

       ϤʸǼƤե  FILENAME Ȳꤷ

       %  runtagger FILENAME  

       ˤꡤFILENAME.re Ȥ̥ե뤬롥Υե
       FILENAME γʸʻ줬դ줿Τ prolog ηǽϤ
       롥

  ʸˡ KL1 ؤѴ

     ̾ʸˡ 'R-LRPar/LR_kl1/gram' βƤ롥ѰդΤϼ
Ūʸˡ gram260 ȥƥʸˡ gramsmall Ǥ롥ˤʸˡ
Ȥ롥

     λˡ'R-LRPar/LR_kl1/maketable/run_maketable.pl' 
prolog 󥿥ץ꥿˥ѥ뤹롥âѥ뤹 
run_maketable.pl ΰֲˤ

:- consult(+LRɽե̾).
:- maketable(+Ѵʸˡե̾,եʬ,+LRɽե̾,
             -ʸˡᥤץ̾,+ʸˡե̾,
             -KL1ϥǥ쥯ȥ).

ȤԤ񤭴ơŬڤʸˡ̾ͿƤɬפ롥֥ե
ʬפ KL1 ĤΥեˤޤȤƤΤǤϤʤʣ
ΥեʬƤ PIMOS ĶǤϡե륵
¤ꡤ礭ʥե򰷤ȤǤʤǤ롥gram260 ξ
Ǥϡ35 եʬ䤹뤳ȤŨƤ롥

(5.2) PIM ؤΥեž

    (5.1) ǤǤʸˡб KL1 ᡤӥѡΥᥤץ
 PIM Υե륷ƥžɬפ롥ϰʲ̤
Ǥ롥

    ftp ޥ˰ʲΥե PIM  Front-end ץåž
Ƥ

    R-LRPar/parser/parser_main.kl1
    R-LRPar/parser/gram260kl1/gram_main.kl1
    R-LRPar/parser/gram260kl1/gram1.kl1
    ...................................
    ...................................
    ...................................
    ...................................
    R-LRPar/parser/gram260kl1/gram35.kl1

(5.3) ƥεư

    ե뤬žä顤PIM ˥󤷡嵭Υե򥳥
뤹롥

    [1] compile.

  compile > parser_main, gram_main, gram1, gram2, ..., gram35
  compile > !exit

    ʲΥޥɤ¹Ԥ롥

    [2] parser_main:lrparser([[prp,i],[md,would],[vb,like],[to,to],[vb,ask],[nn,something],[in,about],[nn,registration],[to,to],[dt,the],[nn,conference],[null,null]],OCTREE).

    ǡ 1 ϲϤʸ롥βϷ̡ 2 
ƥƥफ֤Ƥ롥ޤʲΥޥɤΤ褦ˡץå
3˻ꤹ뤳ȤˤäơꤷץåʤǤ
20)Ǽ¹ԤǤ롥 3 ꤷʤ PIM Τ٤ƤΥץå
Ȥ롥

    [3] parser_main:lrparser([[prp,i],[md,would],[vb,like],[to,to],[vb,ask],[nn,something],[in,about],[nn,registration],[to,to],[dt,the],[nn,conference],[null,null]],OCTREE,20).

    ޤʾΥޥɤϡ׵ưưŪʬפѤǤ뤬
֥෿ưŪʬפѤϰʲΥޥɤ¹Ԥ롥

    [4] parser_main:lrparser_rd([[prp,i],[md,would],[vb,like],[to,to],[vb,ask],[nn,something],[in,about],[nn,registration],[to,to],[dt,the],[nn,conference],[null,null]],OCTREE).

    [5] parser_main:lrparser_rd([[prp,i],[md,would],[vb,like],[to,to],[vb,ask],[nn,something],[in,about],[nn,registration],[to,to],[dt,the],[nn,conference],[null,null]],OCTREE,20).

(6) Ѽ

    ༡ R-LRPar ƥˡ
  
    ñǤʲΤ褦ưܥƥѤǤ롥

    1) ƥεưˤꡤޤ prolog ư롥
    2) ['R-LRPar/LR_prolog/parser/run']. ǥƥ consult 롥
    3) "start." ǥƥư롥
    4) "h." ޥɤΥإפ򸫤롥
    5) إפιܤ򸫤ƹԤʤưϤ롥

    ڲϤʸåȤѹˤϡ

    1) ϤʸΥե(FILENAME)ȤơʲΥޥɤ¹Ԥ롥

       %  cd $SDIR/R-LRPar/tagger_util/

       %  runtagger FILENAME

       η̡FILENAME.re Ȥ̥ե뤬롥

    2) Υե(FILENAME.re) FILENAME.re ˥󥯤ĥǤ롥
       ΥƥåפǤդǤ롥

       % /bin/rm R-LRPar/LR_prolog/parser/sent_file.re
       % ln -s FILENAME.re R-LRPar/LR_prolog/parser/sent_file.re

    3) 'start.'  'c.'  prolog Ǽ¹Ԥʸå̾ꤹ뤳
       ˤꡤʸΥåȤѹ뤳ȤǤ롥

     R-LRPar ƥˡ

    ñǤʲΤ褦ưܥƥѤǤ롥

    1) ʳȤ (3.1) ˽Ҥ٤ֲʸʻŤפ
       ʸˡ KL1 ؤѴפԤʤβ prolog 
        perl ĶǹԤʤ
    2) ץΤ (1) Ǻʸˡե PIM ž롥
    3) PIM  CSP ưƤ
    4) žץΤʸˡե򥳥ѥ뤹롥
       compile > parser_main, gram_main, gram1, gram2, ...
    5) parser_main:lrparser(+ʸ,+ʸ) ¹Ԥ롥



(7) ¾

    PIM ѤˤꡤΦüʳصرؤԢƣʶ
    (kuni@jaist.ac.jp)(sugino@jaist.ac.jp)ӥʥå
    (ping@jaist.ac.jp)ޤϢ뤳ȡ

    ޤBrill's Tagger °Ƥ뤬ܥƥȤ
     Tagger ȤäƤΤǡ礫ʤʬǤ롥
    ѤˤäơR-LRPar/btagger/README 򻲾ȤƤѤ
    


ʸ

[Tomita,87] : M. Tomita
	      An Efficient Augmented-context-free parsing algorithm
              Computational Linguistics, Vol.13, No.1-2, pp. 31--46, 1987

[Aho,86]    : Alfred V. Aho, Revi Sethi and Jeffrey D. Ullman
              Compilers (TextBook)
              Addison-Wesley

[Sippu,90]  : Seppo Sippu
              Construction and implementation of LR(1) parsers
              Parsing Theory, Chapter 6, Vol.2, pp. 119--195, 1990
              Springer-Verlag

[,96]  湨THEERAMUNKONG Thanaruk¼ءѡ
           ̲ LR ʸˡˤʸʣսθθФȽ.
           ز裲ǯpp.153-1561996

[,94]  湨ѡʷ򿭡̲ LR ˡѤʸν
           裸͹ǽزpp.539-5421994

