`gr', `hgr', `gr_mod', `dgr'
----------------------------

gr(PLIST,VLIST,ORDER)
hgr(PLIST,VLIST,ORDER)
gr_mod(PLIST,VLIST,ORDER,P)
dgr(PLIST,VLIST,ORDER,PROCS)
     :: $B%0%l%V%J4pDl$N7W;;(B

RETURN
     $B%j%9%H(B

PLIST, VLIST, PROCS
     $B%j%9%H(B

ORDER
     $B?t(B, $B%j%9%H$^$?$O9TNs(B

P
     2^27 $BL$K~$NAG?t(B

   * $BI8=`%i%$%V%i%j$N(B `gr' $B$GDj5A$5$l$F$$$k(B.

   * $B$$$:$l$b(B, $BB?9`<0%j%9%H(B PLIST $B$N(B, $BJQ?t=g=x(B VLIST, $B9`=g=x7?(B ORDER
     $B$K4X$9$k%0%l%V%J4pDl$r5a$a$k(B. `gr()', `hgr()' $B$O(B $BM-M}?t78?t(B,
     `gr_mod()' $B$O(B GF(P) $B78?t$H$7$F7W;;$9$k(B.

   * VLIST $B$OITDj85$N%j%9%H(B. VLIST $B$K8=$l$J$$ITDj85$O(B,
     $B78?tBN$KB0$9$k$H8+$J$5$l$k(B.

   * `gr()', trace-lifting ($B%b%8%e%i1i;;$rMQ$$$?9bB.2=(B) $B$*$h$S(B sugar
     strategy $B$K$h$k7W;;(B, `hgr()' $B$O(B trace-lifting $B$*$h$S(B $B@F<!2=$K$h$k(B
     $B6:@5$5$l$?(B sugar strategy $B$K$h$k7W;;$r9T$&(B.

   * `dgr()' $B$O(B, `gr()', `dgr()' $B$r(B $B;R%W%m%;%9%j%9%H(B PROCS $B$N(B 2
     $B$D$N%W%m%;%9$K$h$jF1;~$K7W;;$5$;(B, $B@h$K7k2L$rJV$7$?J}$N7k2L$rJV$9(B.
     $B7k2L$OF10l$G$"$k$,(B, $B$I$A$i$NJ}K!$,(B $B9bB.$+0lHL$K$OITL@$N$?$a(B,
     $B<B:]$N7P2a;~4V$rC;=L$9$k$N$KM-8z$G$"$k(B.

   * `dgr()' $B$GI=<($5$l$k;~4V$O(B, $B$3$NH!?t$,<B9T$5$l$F$$$k%W%m%;%9$G$N(B
     CPU $B;~4V$G$"$j(B, $B$3$NH!?t$N>l9g$O$[$H$s$IDL?.$N$?$a$N;~4V$G$"$k(B.

     [0] load("gr")$
     [64] load("cyclic")$
     [74] G=gr(cyclic(5),[c0,c1,c2,c3,c4],2);
     [c4^15+122*c4^10-122*c4^5-1,...]
     [75] GM=gr_mod(cyclic(5),[c0,c1,c2,c3,c4],2,31991)$
     24628*c4^15+29453*c4^10+2538*c4^5+7363
     [76] (G[0]*24628-GM[0])%31991;
     0

$B;2>H(B
     *Note `dp_gr_main dp_gr_mod_main': dp_gr_main dp_gr_mod_main,
     *Note `dp_ord': dp_ord.

