[BACK]Return to complex.texi CVS log [TXT][DIR] Up to [local] / OpenXM / src / k097 / Doc

Annotation of OpenXM/src/k097/Doc/complex.texi, Revision 1.3

1.3     ! takayama    1: %% $OpenXM: OpenXM/src/k097/Doc/complex.texi,v 1.2 2001/01/05 11:14:26 takayama Exp $
1.1       takayama    2: /*&C
                      3: \input texinfo
                      4: @iftex
                      5: @catcode`@#=6
                      6: @def@b#1{{@bf@gt #1}}
                      7: @catcode`@#=@other
                      8: @end iftex
                      9: @overfullrule=0pt
                     10: @c -*-texinfo-*-
                     11: @comment %**start of header
                     12: @setfilename complex
                     13: @settitle complex
                     14: @comment %**end of header
                     15: @comment %@setchapternewpage odd
                     16:
                     17: @iftex
                     18: @comment @finalout
                     19: @end iftex
                     20:
                     21: @titlepage
                     22:
                     23: */
                     24:
                     25: //&C @title  Kan/k0   complex
                     26: //&ja @subtitle Kan/k0 complex $B%Q%C%1!<%8(B User's Manual ($BF|K\8lHG(B)
                     27: //&en @subtitle Kan/k0 complex Package User's Manual
                     28: /*&C
                     29: @subtitle Edition 1.1.3 for OpenXM/kan/k0
                     30: @subtitle December 31, 2000
                     31:
                     32: @author  by Nobuki Takayama
                     33: @end titlepage
                     34:
                     35: @synindex vr fn
                     36:
                     37: @comment  node-name,  next,  previous,  up
                     38: @node Top,, (dir), (dir)
                     39:
                     40: */
                     41:
                     42: /*&ja
                     43:
                     44: @menu
                     45: * COMPLEX $BH!?t(B::
                     46: * $B4pK\(B $BH!?t(B::
                     47: * $B:w0z(B::
                     48: @end menu
                     49:
                     50: */
                     51: /*&en
                     52:
                     53: @menu
                     54: * COMPLEX function::
                     55: * Primitive function::
                     56: * index::
                     57: @end menu
                     58:
                     59: */
                     60: /*&ja
                     61:
                     62: @node COMPLEX $BH!?t(B,,, Top
                     63: @chapter COMPLEX $BH!?t(B
                     64: @section $BH!?t0lMw(B
                     65: */
                     66: /*&en
                     67:
                     68: @node COMPLEX function,,, Top
                     69: @chapter COMPLEX function
                     70: @section A list of functions
                     71: */
                     72: /*&C
                     73: @menu
                     74: * Res_solv::
                     75: * Res_solv2::
                     76: * Kernel::
                     77: * Kernel2::
                     78: * Gb::
                     79: * Gb_h::
                     80: * Res_shiftMatrix::
                     81: @end menu
                     82:
                     83: */
                     84:
                     85: /*&ja
                     86: @c %%%%%%%%%%%%%%%%%%%%  start of Res_solv %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                     87: @menu
                     88: * Res_solv::
                     89: @end menu
                     90: @node Res_solv,,, COMPLEX $BH!?t(B
                     91: @subsection @code{Res_solv}
                     92: @findex Res_solv
                     93: @table @t
                     94: @item Res_solv(@var{m},@var{d})
1.3     ! takayama   95: ::  $B0l<!ITDjJ}Dx<0(B u @var{m} =@var{d} $B$N2r$r$b$H$a$k(B.
1.1       takayama   96: @item Res_solv(@var{m},@var{d},@var{r})
                     97: ::  $B0l<!ITDjJ}Dx<0(B u @var{m} =@var{d} $B$N2r$r$b$H$a$k(B. @var{r} $B$O(B ring.
                     98: @end table
                     99:
                    100: */
                    101: /*&en
                    102: @c %%%%%%%%%%%%%%%%%%%%  start of Res_solv %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    103: @menu
                    104: * Res_solv::
                    105: @end menu
                    106: @node Res_solv,,, COMPLEX function
                    107: @subsection @code{Res_solv}
                    108: @findex Res_solv
                    109: @table @t
                    110: @item Res_solv(@var{m},@var{d})
                    111: ::  Find a solution u of the linear indefinite equation u @var{m} =@var{d}.
                    112: @item Res_solv(@var{m},@var{d},@var{r})
                    113: ::  Find a solution u of the linear indefinite equation u @var{m} =@var{d}.
                    114: @var{r} is a ring object.
                    115: @end table
                    116:
                    117: */
                    118:
                    119: /*&ja
                    120: @table @var
                    121: @item return
                    122: [c,r] $B$,La$jCM$N$H$-(B c/r $B$,2r(B u ($B2#%Y%/%H%k(B).
                    123: @item m
                    124: $B9TNs$^$?$O%Y%/%H%k(B
                    125: @item d
                    126: $B%Y%/%H%k(B $B$^$?$O%9%+%i!<(B
                    127: @end table
                    128:
                    129: @itemize @bullet
                    130: @item  $B0l<!ITDjJ}Dx<0(B u @var{m} =@var{d} $B$N2r$r$b$H$a$k(B.
                    131: @item  @var{m}, @var{d} $B$N=g$K4D$NDj5A$r8!:w$7(B, $B$=$N4D$HF1$8JQ?t=89g$r(B
                    132: $B$b$DHyJ,:nMQAG4D(B(graded reverse lexicographic order)$B$GITDjJ}Dx<0$r2r$/(B.
                    133: $B4D(B @var{r} $B$,$"$?$($i$l$F$$$k$H$-$O(B, @var{r} $B$HF1$8JQ?t=89g$r$b$D(B
                    134: $BHyJ,:nMQAG4D(B(graded reverse lexicographic order)$B$GITDjJ}Dx<0$r2r$/(B.
                    135: @item @var{m}, @var{d} $B$,Dj?t@.J,$N$H$-$O(B, $B4D(B @var{r} $B$rM?$($kI,MW$,$"$k(B.
                    136: (@var{m}, @var{d} $B$h$j4D$N>pJs$r$H$j$@$;$J$$$?$a(B).
                    137: @end itemize
                    138:
                    139: */
                    140: /*&en
                    141: @table @var
                    142: @item return
                    143: When [c,r] is the return value,  c/r is the solution u.
                    144: @item m
                    145: Matrix or vector
                    146: @item d
                    147: Vector or scalar
                    148: @end table
                    149:
                    150: @itemize @bullet
                    151: @item  Find a solution u of the linear indefinite equation u @var{m} =@var{d}.
                    152: @item It solves the linear indefinite equation in the ring of differential
                    153: operators (with graded reverse lexicographic order) of the same set
                    154: of variables of the ring to which @var{m} or @var{d} belongs.
                    155: When the ring @var{r} is given,
                    156: it solves the linear indefinite equation in the ring of differential
                    157: operators (with graded reverse lexicographic order) of the same set
                    158: of variables of the ring @var{r}.
                    159: @item When @var{m} and @var{d} consist of constants, a ring @var{r}
                    160: should be given.
                    161: @end itemize
                    162:
                    163: */
                    164:
                    165: /*&C
                    166: @example
                    167: In(16)= RingD("x,y");
                    168: In(17)= mm=[Dx,Dy,x];
                    169: In(18)= Res_solv(mm,1):
                    170: [    [    x , 0 , -Dx ]  , -1 ]
                    171: @end example
                    172: */
                    173: /*&ja
                    174: $B$3$l$O(B -x*Dx + 0*Dy+Dx*x = 1 $B$G$"$k$3$H$r<($9(B.
                    175: */
                    176: /*&en
                    177: The output means that  -x*Dx + 0*Dy+Dx*x = 1.
                    178: */
                    179:
                    180: /*&C
                    181: @example
                    182: In(4)=RingD("x");
                    183:      m=[ [x*Dx+2, 0],[Dx+3,x^3],[3,x],[Dx*(x*Dx+3)-(x*Dx+2)*(x*Dx-4),0]];
                    184:      d=[1,0];
                    185:      Res_solv(m,d):
                    186:
                    187: [    [    x^2*Dx-x*Dx-4*x-1 , 0 , 0 , x ]  , -2 ]
                    188: @end example
                    189: */
                    190: /*&ja
                    191: $B$3$l$O(B
                    192: -(1/2)*(x^2*Dx-x*Dx-4*x-1)*[x*Dx+2, 0]-(1/2)*[Dx*(x*Dx+3)-(x*Dx+2)*(x*Dx-4),0]
                    193: = [1,0]
                    194: $B$G$"$k$3$H$r<($9(B.
                    195: */
                    196: /*&en
                    197: The output implies that
                    198: -(1/2)*(x^2*Dx-x*Dx-4*x-1)*[x*Dx+2, 0]-(1/2)*[Dx*(x*Dx+3)-(x*Dx+2)*(x*Dx-4),0]
                    199: = [1,0]
                    200: */
                    201:
                    202: /*&C
                    203:
                    204: @example
                    205:
                    206: In(4)= r=RingD("x,y");
                    207: In(5)= Res_solv([[1,2],[3,4]],[5,0],r):
                    208: [    [    10 , -5 ]  , -1 ]
                    209:
                    210: @end example
                    211:
                    212:
                    213: */
                    214:
                    215:
                    216: /*&ja
                    217:
                    218: @table @t
                    219: @item $B;2>H(B
                    220:     @code{Res_solv_h}, @code{Kernel},  @code{GetRing}, @code{SetRing}.
1.3     ! takayama  221: @item Files
        !           222:     @code{lib/restriction/complex.k}
1.1       takayama  223: @end table
                    224: @c  %%%%%%%%%%%%%%%%%%%%  end of Res_solv %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    225: */
                    226: /*&en
                    227:
                    228: @table @t
1.3     ! takayama  229: @item See also
1.1       takayama  230:     @code{Res_solv_h}, @code{Kernel},  @code{GetRing}, @code{SetRing}.
1.3     ! takayama  231: @item Files
        !           232:     @code{lib/restriction/complex.k}
1.1       takayama  233: @end table
                    234: @c  %%%%%%%%%%%%%%%%%%%%  end of Res_solv %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    235: */
                    236:
                    237: /*&ja
                    238: @c %%%%%%%%%%%%%%%%%%%%  start of Res_solv2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    239: @menu
                    240: * Res_solv2::
                    241: @end menu
                    242: @node Res_solv2,,, COMPLEX $BH!?t(B
                    243: @subsection @code{Res_solv2}
                    244: @findex Res_solv2
                    245: @table @t
                    246: @item Res_solv2(@var{m},@var{v},@var{j})
1.3     ! takayama  247: ::  $B0l<!ITDjJ}Dx<0(B u @var{m} =@var{v} mod @var{j} $B$N2r$r$b$H$a$k(B.
1.1       takayama  248: @item Res_solv2(@var{m},@var{v},@var{j},@var{r})
                    249: ::  $B0l<!ITDjJ}Dx<0(B u @var{m} =@var{v} mod @var{j} $B$N2r$r$b$H$a$k(B.
                    250: @var{r} $B$O(B ring.
                    251: @end table
                    252:
                    253: */
                    254: /*&en
                    255: @c %%%%%%%%%%%%%%%%%%%%  start of Res_solv2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    256: @menu
                    257: * Res_solv2::
                    258: @end menu
                    259: @node Res_solv2,,, COMPLEX function
                    260: @subsection @code{Res_solv2}
                    261: @findex Res_solv2
                    262: @table @t
                    263: @item Res_solv2(@var{m},@var{v},@var{j})
                    264: ::  Find a solution u of the linear indefinite equation u @var{m} =@var{v}
1.3     ! takayama  265:     mod @var{j}.
1.1       takayama  266: @item Res_solv2(@var{m},@var{v},@var{j},@var{r})
                    267: ::  Find a solution u of the linear indefinite equation u @var{m} =@var{v}
                    268: mod @var{j}.
                    269: @var{r} is a ring object.
                    270: @end table
                    271:
                    272: */
                    273:
                    274: /*&ja
                    275: @table @var
                    276: @item return
                    277: [c,r] $B$,La$jCM$N$H$-(B c/r $B$,2r(B u ($B2#%Y%/%H%k(B).
                    278: @item m
                    279: $B9TNs$^$?$O%Y%/%H%k(B
                    280: @item v  j
                    281: $B%Y%/%H%k(B $B$^$?$O%9%+%i!<(B
                    282: @end table
                    283:
                    284: @itemize @bullet
                    285: @item  $B0l<!ITDjJ}Dx<0(B u @var{m} =@var{v} mod @var{j} $B$N2r$r$b$H$a$k(B.
                    286: @item $B$3$l$O(B, @var{m} $B$r(B
                    287:  @var{m} :  D^p ---> D^q/@var{j}
                    288: $B$J$k:8(B D homomorphism $B$H$_$J$9$H$-(B,
                    289: @var{m}^(-1)(@var{v}) $B$r5a$a$k$3$H$KAjEv$9$k(B.
                    290: @item  @var{m}, @var{v} $B$N=g$K4D$NDj5A$r8!:w$7(B, $B$=$N4D$HF1$8JQ?t=89g$r(B
                    291: $B$b$DHyJ,:nMQAG4D(B(graded reverse lexicographic order)$B$GITDjJ}Dx<0$r2r$/(B.
                    292: $B4D(B @var{r} $B$,$"$?$($i$l$F$$$k$H$-$O(B, @var{r} $B$HF1$8JQ?t=89g$r$b$D(B
                    293: $BHyJ,:nMQAG4D(B(graded reverse lexicographic order)$B$GITDjJ}Dx<0$r2r$/(B.
                    294: @item @var{m}, @var{v} $B$,Dj?t@.J,$N$H$-$O(B, $B4D(B @var{r} $B$rM?$($kI,MW$,$"$k(B.
                    295: (@var{m}, @var{v} $B$h$j4D$N>pJs$r$H$j$@$;$J$$$?$a(B).
                    296: @end itemize
                    297:
                    298: */
                    299: /*&en
                    300: @table @var
                    301: @item return
                    302: When [c,r] is the return value,  c/r is the solution u.
                    303: @item m
                    304: Matrix or vector
                    305: @item v j
                    306: Vector or scalar
                    307: @end table
                    308:
                    309: @itemize @bullet
                    310: @item  Find a solution u of the linear indefinite equation u @var{m} =@var{v}
                    311: mod @var{j}.
                    312: @item Let  @var{m} be the left D-homomorphism
                    313:  @var{m} :  D^p ---> D^q/@var{j}.
                    314: The function returns an element in
                    315: @var{m}^(-1)(@var{v}).
                    316: @item It solves the linear indefinite equation in the ring of differential
                    317: operators (with graded reverse lexicographic order) of the same set
                    318: of variables of the ring to which @var{m} or @var{v} belongs.
                    319: When the ring @var{r} is given,
                    320: it solves the linear indefinite equation in the ring of differential
                    321: operators (with graded reverse lexicographic order) of the same set
                    322: of variables of the ring @var{r}.
                    323: @item When @var{m} and @var{v} consist of constants, a ring @var{r}
                    324: should be given.
                    325: @end itemize
                    326:
                    327: */
                    328:
                    329: /*&C
                    330: @example
                    331: In(28)= r=RingD("x,y");
                    332: In(29)= Res_solv2([x,y],[x^2+y^2],[x]):
                    333: [    [    0 , y ]  , 1 ]
                    334:
                    335: @end example
                    336: */
                    337: /*&ja
                    338: $B$3$l$O(B 0*x + y*y = x^2+y^2 mod x $B$G$"$k$3$H$r<($9(B.
                    339: */
                    340: /*&en
                    341: The output means that  0*x + y*y = x^2+y^2 mod x
                    342: */
                    343:
                    344: /*&C
                    345: @example
                    346:
                    347: In(32)= Res_solv2([x,y],[x^2+y^2],[],r):
                    348: [    [    x , y ]  , 1 ]
                    349:
                    350:
                    351: @end example
                    352: */
                    353: /*&ja
                    354: $B$3$l$O(B
                    355:   x*x + y*y = x^2+y^2
                    356: $B$G$"$k$3$H$r<($9(B.
                    357: */
                    358: /*&en
                    359: The output implies that
                    360:   x*x + y*y = x^2+y^2.
                    361: */
                    362:
                    363:
                    364:
                    365: /*&ja
                    366:
                    367: @table @t
                    368: @item $B;2>H(B
                    369:     @code{Res_solv2_h}, @code{Kernel2},  @code{GetRing}, @code{SetRing}.
1.3     ! takayama  370: @item Files
        !           371:     @code{lib/restriction/complex.k}
1.1       takayama  372: @end table
                    373: @c  %%%%%%%%%%%%%%%%%%%%  end of Res_solv2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    374: */
                    375: /*&en
                    376:
                    377: @table @t
1.3     ! takayama  378: @item See also
1.1       takayama  379:     @code{Res_solv2_h}, @code{Kernel2},  @code{GetRing}, @code{SetRing}.
1.3     ! takayama  380: @item Files
        !           381:     @code{lib/restriction/complex.k}
1.1       takayama  382: @end table
                    383: @c  %%%%%%%%%%%%%%%%%%%%  end of Res_solv2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    384: */
                    385:
                    386:
                    387: /*&ja
                    388: @c %%%%%%%%%%%%%%%%%%%%  start of Kernel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    389: @c Kernel $B$O(B minimal.k $B$K$"$k$,(B complex.k $B$J$I$K0\F0$9$Y$-(B.
                    390: @menu
                    391: * Kernel::
                    392: @end menu
                    393: @node Kernel,,, COMPLEX $BH!?t(B
                    394: @subsection @code{Kernel}
                    395: @findex Kernel
                    396: @table @t
                    397: @item Kernel(@var{m})
                    398: ::  $B0l<!ITDjJ}Dx<0(B u @var{m} =0 $B$N2r6u4V$N4pDl$r5a$a$k(B.
                    399: @item Kernel(@var{m},@var{r})
                    400: ::  $B0l<!ITDjJ}Dx<0(B u @var{m} =0 $B$N2r6u4V$N4pDl$r5a$a$k(B. @var{r} $B$O(B ring.
                    401: @end table
                    402:
                    403: */
                    404: /*&en
                    405: @c %%%%%%%%%%%%%%%%%%%%  start of Kernel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    406: @menu
                    407: * Kernel::
                    408: @end menu
                    409: @node Kernel,,, COMPLEX function
                    410: @subsection @code{Kernel}
                    411: @findex Kernel
                    412: @table @t
                    413: @item Kernel(@var{m})
                    414: ::  Find solution basis of the linear indefinite equation u @var{m} =0.
                    415: @item Kernel(@var{m},@var{r})
                    416: ::  Find solution basis of the linear indefinite equation u @var{m} =0.
                    417: @var{r} is a ring object.
                    418: @end table
                    419:
                    420: */
                    421:
                    422: /*&ja
                    423: @table @var
                    424: @item return
                    425: $B%j%9%H(B
                    426: @item m
                    427: $B9TNs$^$?$O%Y%/%H%k(B
                    428: @end table
                    429:
                    430: @itemize @bullet
                    431: @item  $B0l<!ITDjJ}Dx<0(B u @var{m} =0 $B$N2r6u4V$N4pDl$r5a$a$k(B.
                    432: @item $BLa$jCM$r(B k $B$H$9$k$H$-(B k[0] $B$,(B $B2r6u4V$N4pDl$N=89g(B.
                    433: k[1] $B$O(B [gb, backward transformation, syzygy without dehomogenization].
                    434: @item  @var{m} $B$h$j4D$NDj5A$r8!:w$7(B, $B$=$N4D$G%+!<%M%k$r7W;;$9$k(B.
                    435: $B4D(B @var{r} $B$,$"$?$($i$l$F$$$k$H$-$O(B, @var{r} $B$G%+!<%M%k$r7W;;$9$k(B.
                    436: @item @var{m} $B$,Dj?t@.J,$N$H$-$O(B, $B4D(B @var{r} $B$rM?$($kI,MW$,$"$k(B.
                    437: (@var{m} $B$h$j4D$N>pJs$r$H$j$@$;$J$$$?$a(B).
                    438: @item BUG:  Kernel $B$*$h$S(B Res_solv (syz, res-solv) $B$N$_$,(B, $B4D0z?t$K(B
                    439: $BBP1~$7$F$k(B. (2000, 12/29 $B8=:_(B).
                    440: @end itemize
                    441:
                    442: */
                    443: /*&en
                    444: @table @var
                    445: @item return
                    446: List
                    447: @item m
                    448: Matrix or vector
                    449: @end table
                    450:
                    451: @itemize @bullet
                    452: @item  Find solution basis of the linear indefinite equation u @var{m} =0.
                    453: @item When the return value is  k, k[0] is a set of generators of the kernel.
                    454: k[1] is [gb, backward transformation, syzygy without dehomogenization].
                    455: @item It finds the kernel in the ring
                    456: to which @var{m} belongs.
                    457: When the ring @var{r} is given,
                    458: it finds the kernel in the ring @var{r}.
                    459: @item When @var{m} consists of constants, a ring @var{r}
                    460: should be given.
                    461: @end itemize
                    462:
                    463: */
                    464:
                    465: /*&C
                    466: @example
                    467: In(16)= RingD("x,y");
                    468: In(17)= mm=[[Dx],[Dy],[x]];
                    469: In(18)= Pmat(Kernel(mm));
                    470:  [
                    471:   [
                    472:     [    -x*Dx-2 , 0 , Dx^2 ]
                    473:     [    -x*Dy , -1 , Dx*Dy ]
                    474:     [    -x^2 , 0 , x*Dx-1 ]
                    475:   ]
                    476:   [
                    477:    [
                    478:      [    -1 ]
                    479:    ]
                    480:    [
                    481:      [    x , 0 , -Dx ]
                    482:    ]
                    483:    [
                    484:      [    -x*Dx-2 , 0 , Dx^2 ]
                    485:      [    -x*Dy , -1 , Dx*Dy ]
                    486:      [    -x^2 , 0 , x*Dx-1 ]
                    487:    ]
                    488:   ]
                    489:  ]
                    490:
                    491: @end example
                    492: */
                    493:
                    494:
                    495: /*&C
                    496:
                    497: @example
                    498:
                    499: In(4)= r=RingD("x,y");
                    500: In(5)= k=Kernel([[1,2],[2,4]],r); k[0]:
                    501: [    [    2 , -1 ]  ]
                    502: @end example
                    503:
                    504:
                    505: */
                    506:
                    507:
                    508: /*&ja
                    509:
                    510: @table @t
                    511: @item $B;2>H(B
                    512:     @code{Kernel_h}, @code{Res_solv}, @code{GetRing}, @code{SetRing}.
1.3     ! takayama  513: @item Files
        !           514:     @code{lib/restriction/complex.k}
1.1       takayama  515: @end table
                    516: @c  %%%%%%%%%%%%%%%%%%%%  end of Kernel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    517: */
                    518: /*&en
                    519:
                    520: @table @t
1.3     ! takayama  521: @item See also
1.1       takayama  522:     @code{Kernel_h}, @code{Res_solv},  @code{GetRing}, @code{SetRing}.
1.3     ! takayama  523: @item Files
        !           524:     @code{lib/restriction/complex.k}
1.1       takayama  525: @end table
                    526: @c  %%%%%%%%%%%%%%%%%%%%  end of Kernel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    527: */
                    528: /*&ja
                    529: @c %%%%%%%%%%%%%%%%%%%%  start of Kernel2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    530: @menu
                    531: * Kernel2::
                    532: @end menu
                    533: @node Kernel2,,, COMPLEX $BH!?t(B
                    534: @subsection @code{Kernel2}
                    535: @findex Kernel2
                    536: @table @t
                    537: @item Kernel2(@var{m},@var{j})
                    538: ::  @var{m} : D^p ---> D^q/@var{j} $B$N(B Kernel $B$r5a$a$k(B.
                    539: @item Kernel2(@var{m},@var{j},@var{r})
                    540: ::  @var{m} : D^p ---> D^q/@var{j} $B$N(B Kernel $B$r5a$a$k(B. @var{r} $B$O(B ring.
                    541: @end table
                    542:
                    543: */
                    544: /*&en
                    545: @c %%%%%%%%%%%%%%%%%%%%  start of Kernel2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    546: @menu
                    547: * Kernel2::
                    548: @end menu
                    549: @node Kernel2,,, COMPLEX function
                    550: @subsection @code{Kernel2}
                    551: @findex Kernel2
                    552: @table @t
                    553: @item Kernel2(@var{m})
                    554: ::  Get the kernel of @var{m} : D^p ---> D^q/@var{j}.
                    555: @item Kernel2(@var{m},@var{r})
                    556: ::   Get the kernel of @var{m} : D^p ---> D^q/@var{j}.
                    557: @var{r} is a ring object.
                    558: @end table
                    559:
                    560: */
                    561:
                    562: /*&ja
                    563: @table @var
                    564: @item return
                    565: $B%j%9%H(B
                    566: @item m  j
                    567: $B9TNs$^$?$O%Y%/%H%k(B
                    568: @end table
                    569:
                    570: @itemize @bullet
                    571: @item @var{m} : D^p ---> D^q/@var{j} $B$N(B Kernel $B$r5a$a$k(B.
                    572: @item D^p $B$O2#%Y%/%H%k$G$"$j(B, u $B$,(B D^p $B$N85$N$H$-(B,
                    573:     u @var{m} $B$G<LA|$rDj5A$9$k(B.
                    574: @item  @var{m} $B$h$j4D$NDj5A$r8!:w$7(B, $B$=$N4D$G%+!<%M%k$r7W;;$9$k(B.
                    575: $B4D(B @var{r} $B$,$"$?$($i$l$F$$$k$H$-$O(B, @var{r} $B$G%+!<%M%k$r7W;;$9$k(B.
                    576: @item @var{m} $B$,Dj?t@.J,$N$H$-$O(B, $B4D(B @var{r} $B$rM?$($kI,MW$,$"$k(B.
                    577: (@var{m} $B$h$j4D$N>pJs$r$H$j$@$;$J$$$?$a(B).
                    578: @end itemize
                    579:
                    580: */
                    581: /*&en
                    582: @table @var
                    583: @item return
                    584: List
                    585: @item m  j
                    586: Matrix or vector
                    587: @end table
                    588:
                    589: @itemize @bullet
                    590: @item Get a set of generators of the the kernel
                    591: of @var{m} : D^p ---> D^q/@var{j}.
                    592: @item D^p is a set of row vectors. When u is an element of D^p,
                    593: define the map from D^p to D^q/@var{j} by u @var{m}.
                    594: @item It finds the kernel in the ring
                    595: to which @var{m} belongs.
                    596: When the ring @var{r} is given,
                    597: it finds the kernel in the ring @var{r}.
                    598: @item When @var{m} consists of constants, a ring @var{r}
                    599: should be given.
                    600: @end itemize
                    601:
                    602: */
                    603:
                    604: /*&C
                    605: @example
                    606: In(27)= r=RingD("x,y");
                    607: In(28)= Kernel2([[x,y],[x^2,x*y]],[]):
                    608: [    [    -x , 1 ]  ]
                    609: In(29)=Kernel2([[x,y],[x^2,x*y]],[[x,y]]):
                    610: [    [    1 , 0 ]  , [    0 , 1 ]  ]
                    611:
                    612: In(41)=Kernel2([0],[0],r):
                    613: [    [    1 ]  , [    0 ]  ]
                    614: In(42)=Kernel2([[0,0],[0,0]],[[0,0]],r):
                    615: [    [    1 , 0 ]  , [    0 , 1 ]  , [    0 , 0 ]  ]
                    616: In(43)=Kernel2([[0,0,0],[0,0,0]],[],r):
                    617: [    [    1 , 0 ]  , [    0 , 1 ]  ]
                    618:
                    619: @end example
                    620: */
                    621:
                    622:
                    623: /*&ja
                    624:
                    625: @table @t
                    626: @item $B;2>H(B
                    627:     @code{Kernel2_h}, @code{Res_solv2}, @code{GetRing}, @code{SetRing},
                    628:     @code{Kernel}.
1.3     ! takayama  629: @item Files
        !           630:     @code{lib/restriction/complex.k}
1.1       takayama  631: @end table
                    632: @c  %%%%%%%%%%%%%%%%%%%%  end of Kernel2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    633: */
                    634: /*&en
                    635:
                    636: @table @t
1.3     ! takayama  637: @item See also
1.1       takayama  638:     @code{Kernel2_h}, @code{Res_solv2},  @code{GetRing}, @code{SetRing},
                    639:     @code{Kernel}
1.3     ! takayama  640: @item Files
        !           641:     @code{lib/restriction/complex.k}
1.1       takayama  642: @end table
                    643: @c  %%%%%%%%%%%%%%%%%%%%  end of Kernel2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    644: */
                    645:
                    646: /*&ja
                    647: @c %%%%%%%%%%%%%%%%%%%%  start of Gb %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    648: @menu
                    649: * Gb::
                    650: @end menu
                    651: @node Gb,,, COMPLEX $BH!?t(B
                    652: @node Gb_h,,, COMPLEX $BH!?t(B
                    653: @subsection @code{Gb}
                    654: @findex Gb
                    655: @findex Gb_h
                    656: @table @t
                    657: @item Gb(@var{f})
                    658: ::  @var{f} $B$N%0%l%V%J4pDl$r$b$H$a$k(B.
                    659: @item Gb(@var{f},@var{r})
                    660: ::  @var{f} $B$N%0%l%V%J4pDl$r$b$H$a$k(B. @var{r} $B$O(B ring.
                    661: @item Gb_h(@var{f})
                    662: ::  @var{f} $B$N%0%l%V%J4pDl$r$b$H$a$k(B.
                    663: @item Gb_h(@var{f},@var{r})
                    664: ::  @var{f} $B$N%0%l%V%J4pDl$r$b$H$a$k(B. @var{r} $B$O(B ring.
                    665: @end table
                    666:
                    667: */
                    668: /*&en
                    669: @c %%%%%%%%%%%%%%%%%%%%  start of Gb %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    670: @menu
                    671: * Gb::
                    672: @end menu
                    673: @node Gb,,, COMPLEX function
                    674: @node Gb_h,,, COMPLEX function
                    675: @subsection @code{Gb}
                    676: @findex Gb
                    677: @table @t
                    678: @item Gb(@var{f})
                    679: ::  It computes the Grobner basis of @var{f}.
                    680: @item Gb(@var{m},@var{r})
                    681: ::  It computes the Grobner basis of @var{f}.
                    682: @var{r} is a ring object.
                    683: @item Gb_h(@var{f})
                    684: ::  It computes the Grobner basis of @var{f}.
                    685: @item Gb_h(@var{m},@var{r})
                    686: ::  It computes the Grobner basis of @var{f}.
                    687: @var{r} is a ring object.
                    688: @end table
                    689:
                    690: */
                    691:
                    692: /*&ja
                    693: @table @var
                    694: @item return
                    695: $B%j%9%H(B
                    696: @item f
                    697: $B9TNs$^$?$O%Y%/%H%k(B
                    698: @end table
                    699:
                    700: @itemize @bullet
                    701: @item  @var{f} $B$N%0%l%V%J4pDl$r$b$H$a$k(B.
                    702: @item _h $BIU$-$N>l9g$O(B, $BF1<!%o%$%kBe?t$G7W;;$r$*$3$J$&(B.
                    703: @item $BLa$jCM$r(B k $B$H$9$k$H$-(B k[0] $B$,(B $B%0%l%V%J4pDl(B.
                    704: $B4D$,(B weight vector $BIU$-$GDj5A$5$l$?$H$-$O(B,
                    705: k[1] $B$O(B initial ideal $B$^$?$O(B initial module.
                    706: @item  @var{m} $B$h$j4D$NDj5A$r8!:w$7(B, $B$=$N4D$G%0%l%V%J4pDl$r7W;;$9$k(B.
                    707: $B4D(B @var{r} $B$,$"$?$($i$l$F$$$k$H$-$O(B, @var{r} $B$G%0%l%V%J4pDl$r7W;;$9$k(B.
                    708: @item @var{m} $B$,Dj?t@.J,$N$H$-$O(B, $B4D(B @var{r} $B$rM?$($kI,MW$,$"$k(B.
                    709: (@var{m} $B$h$j4D$N>pJs$r$H$j$@$;$J$$$?$a(B).
                    710: @end itemize
                    711:
                    712: */
                    713: /*&en
                    714: @table @var
                    715: @item return
                    716: List
                    717: @item f
                    718: Matrix or vector
                    719: @end table
                    720:
                    721: @itemize @bullet
                    722: @item  Compute the Grobner basis of @var{f}.
                    723: @item Functions with _h  computes Grobner bases in the homogenized Weyl
                    724: algebra.
                    725: @item When the return value is  k, k[0] is the Grobner basis.
                    726: k[1] is the initial ideal or the initial module of @var{f},
                    727: when the ring is defined with a weight vector.
                    728: @item It computes the Grobner basis in the ring
                    729: to which @var{f} belongs.
                    730: When the ring @var{r} is given,
                    731: it computes the Grobner basis in the ring @var{r}.
                    732: @item When @var{f} consists of constants, a ring @var{r}
                    733: should be given.
                    734: @end itemize
                    735:
                    736: */
                    737:
                    738: /*&C
                    739: @example
                    740: In(5)= r=RingD("x,y");
                    741: In(6)= m=[[x^2+y^2-1],[x*y-1]];
                    742: In(7)= Gb(m):
                    743: [    [    [    x^2+y^2-1 ]  , [    x*y-1 ]  , [    y^3+x-y ]  ]  ,
                    744: [    [    x^2+y^2-1 ]  , [    x*y-1 ]  , [    y^3+x-y ]  ]  ]
                    745:
                    746: In(11)= RingD("x,y",[["x",1]]);
                    747: In(12)= r=RingD("x,y",[["x",1]]);
                    748: In(13)= Gb(m,r):
                    749: [    [    [    x+y^3-y ]  , [    -y^4+y^2-1 ]  ]  ,
                    750: [    [    x ]  , [    -y^4+y^2-1 ]  ]  ]
                    751:
                    752: @end example
                    753: */
                    754:
                    755:
                    756: /*&ja
                    757:
                    758: @table @t
                    759: @item $B;2>H(B
                    760:     @code{Gb_h}, @code{Kernel}, @code{Res_solv}, @code{RingD},
                    761:     @code{GetRing}, @code{SetRing}.
1.3     ! takayama  762: @item Files
        !           763:     @code{lib/restriction/complex.k}
1.1       takayama  764: @end table
                    765: @c  %%%%%%%%%%%%%%%%%%%%  end of Gb %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    766: */
                    767: /*&en
                    768:
                    769: @table @t
1.3     ! takayama  770: @item See also
1.1       takayama  771:     @code{Gb_h}, @code{Kernel}, @code{Res_solv}, @code{RingD},
                    772:     @code{GetRing}, @code{SetRing}.
1.3     ! takayama  773: @item Files
        !           774:     @code{lib/restriction/complex.k}
1.1       takayama  775: @end table
                    776: @c  %%%%%%%%%%%%%%%%%%%%  end of Gb %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    777: */
                    778:
                    779: /*&ja
                    780: @c %%%%%%%%%%%%%%%%%%%%  start of Res_shiftMatrix %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    781: @menu
                    782: * Res_shiftMatrix::
                    783: @end menu
                    784: @node Res_shiftMatrix,,, COMPLEX $BH!?t(B
                    785: @subsection @code{Res_shiftMatrix}
                    786: @findex Res_shiftMatrix
                    787: @table @t
                    788: @item Res_shiftMatrix(@var{m},@var{v})
                    789: ::  Degree shift $B%Y%/%H%k(B @var{m} $B$KBP1~$9$k9TNs$r:n$k(B.
                    790: @item Res_shiftMatrix(@var{f},@var{v},@var{r})
                    791: ::  Degree shift $B%Y%/%H%k(B @var{m} $B$KBP1~$9$k9TNs$r:n$k(B. @var{r} $B$O(B ring.
                    792: @end table
                    793:
                    794: */
                    795: /*&en
                    796: @c %%%%%%%%%%%%%%%%%%%%  start of Res_shiftMatrix %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    797: @menu
                    798: * Res_shiftMatrix::
                    799: @end menu
                    800: @node Res_shiftMatrix,,, COMPLEX function
                    801: @subsection @code{Res_shiftMatrix}
                    802: @findex Res_shiftMatrix
                    803: @table @t
                    804: @item Res_shiftMatrix(@var{m},@var{v})
                    805: ::  Generate a matrix associated to a degree shift vector @var{m}
                    806: @item Res_shiftMatrix(@var{m},@var{v},@var{r})
                    807: ::  Generate a matrix associated to a degree shift vector @var{m}
                    808: @var{r} is a ring object.
                    809: @end table
                    810:
                    811: */
                    812:
                    813: /*&ja
                    814: @table @var
                    815: @item return
                    816: $B9TNs(B.
                    817: @item m
                    818: $B%Y%/%H%k(B
                    819: @item v
                    820: $BB?9`<0JQ?t$^$?$OJ8;zNs(B
                    821: @end table
                    822:
                    823: @itemize @bullet
                    824: @item diag(@var{v}^(@var{m}1), ..., @var{v}^(@var{m}n))
                    825: $B$J$k(B n $B!_(B n $B9TNs$rLa$9(B.
                    826: @end itemize
                    827:
                    828: */
                    829: /*&en
                    830: @table @var
                    831: @item return
                    832: Matrix
                    833: @item m
                    834: Vector
                    835: @item v
                    836: $BB?9`<0JQ?t$^$?$OJ8;zNs(B
                    837: @end table
                    838:
                    839: @itemize @bullet
                    840: @item Returns n by n matrix
                    841: diag(@var{v}^(@var{m}1), ..., @var{v}^(@var{m}n))
                    842: @end itemize
                    843:
                    844: */
                    845:
                    846: /*&C
                    847: @example
                    848: In(5)= r=RingD("x,y");
                    849: In(6)= Res_shiftMatrix([-1,0,3],x):
                    850: [    [    x^(-1) , 0 , 0 ]  , [    0 , 1 , 0 ]  , [    0 , 0 , x^3 ]  ]
                    851:
                    852: @end example
                    853: */
                    854:
                    855: /*&C
                    856: @example
                    857: In(9)=  rrr = RingD("t,x,y",[["t",1,"x",-1,"y",-1,"Dx",1,"Dy",1]]);
                    858: In(10)=  m=[Dx-(x*Dx+y*Dy+2),Dy-(x*Dx+y*Dy+2)];
                    859: In(12)=  m=Gb(m);
                    860: In(13)=  k = Kernel_h(m[0]);
                    861: In(14)=  Pmat(k[0]);
                    862:  [
                    863:    [    -Dy+3*h , Dx-3*h , 1 ]
                    864:    [    -x*Dx+x*Dy-y*Dy-3*x*h , y*Dy+3*x*h , h-x ]
                    865:  ]
                    866:
                    867: In(15)=Pmat(m[0]);
                    868:   [    Dx*h-x*Dx-y*Dy-2*h^2 , Dy*h-x*Dx-y*Dy-2*h^2 ,
                    869:        x*Dx^2-x*Dx*Dy+y*Dx*Dy-y*Dy^2 ]
                    870:
                    871: In(18)=k2 = Gb_h(k[0]*Res_shiftMatrix([1,1,1],t));
                    872: In(19)=Pmat(Substitute(k2[0],t,1));
                    873:  [
                    874:    [    -Dy+3*h , Dx-3*h , 1 ]
                    875:    [    -x*Dx+x*Dy-y*Dy-3*x*h , y*Dy+3*x*h , h-x ]
                    876:  ]
                    877:
                    878:
                    879: @end example
                    880: */
                    881:
                    882:
                    883: /*&ja
                    884:
                    885: @table @t
                    886: @item $B;2>H(B
                    887:     @code{Gb}, (m,(u,v))-$B%0%l%V%J4pDl(B
1.3     ! takayama  888: @item Files
        !           889:     @code{lib/restriction/complex.k}
1.1       takayama  890: @end table
                    891: @c  %%%%%%%%%%%%%%%%%%%%  end of Res_shiftMatrix %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    892: */
                    893: /*&en
                    894:
                    895: @table @t
1.3     ! takayama  896: @item See also
1.1       takayama  897:    @code{Gb}, (m,(u,v))-Grobner basis
1.3     ! takayama  898: @item Files
        !           899:     @code{lib/restriction/complex.k}
1.1       takayama  900: @end table
                    901: @c  %%%%%%%%%%%%%%%%%%%%  end of Res_shiftMatrix %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    902: */
                    903:
                    904:
                    905: @c --------------  Primitive $B4pK\(B ----------------------
                    906:
                    907: /*&ja
                    908:
                    909: @node $B4pK\(B $BH!?t(B,,, Top
                    910: @chapter $B4pK\(B $BH!?t(B
                    911: @section $BH!?t0lMw(B
                    912: */
                    913: /*&en
                    914:
                    915: @node Primitive function,,, Top
                    916: @chapter Primitive function
                    917: @section A list of functions
                    918: */
                    919: /*&C
                    920: @menu
1.2       takayama  921: * ChangeRing::
1.1       takayama  922: * Intersection::
                    923: * Getxvars::
                    924: * Firstn::
                    925: @end menu
                    926: */
                    927:
                    928: /*&ja
1.2       takayama  929: @c %%%%%%%%%%%%%%%%%%%%  start ChangeRing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    930: @node ChangeRing,,, $B4pK\(B $BH!?t(B
                    931: @subsection @code{ChangeRing}
                    932: @findex ChangeRing
1.1       takayama  933: @table @t
1.2       takayama  934: @item ChangeRing(@var{f})
                    935: ::  ChangeRing $B$O(B @var{f} $B$NMWAG$,B0$9$k4D$r(B current ring $B$K$9$k(B.
1.1       takayama  936: @end table
                    937:
                    938: @table @var
                    939: @item return
                    940: true $B$+(B false
                    941: @item f  $B%j%9%H(B
                    942: @end table
                    943:
                    944: @example
                    945:    RingD("x,y");
                    946:    f=[x+y,0];
                    947:    RingD("p,q,r");
1.2       takayama  948:    ChangeRing(f);
1.1       takayama  949: @end example
                    950:
                    951: @table @t
1.3     ! takayama  952: @item Files
        !           953:     @code{lib/restriction/complex.k}
1.1       takayama  954: @end table
1.3     ! takayama  955: @c  %%%%%%%%%%%%%%%%%%%%  end of ChangeRing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1.1       takayama  956: */
                    957:
                    958:
                    959: /*&ja
                    960: @c %%%%%%%%%%%%%%%%%%%%  start of Intersection %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                    961: @menu
                    962: * Intersection::
                    963: @end menu
                    964: @node Intersection,,, $B4pK\(B $BH!?t(B
                    965: @subsection @code{Intersection}
                    966: @findex Intersection
                    967: @table @t
                    968: @item Intersection(@var{i},@var{j})
                    969: ::  $B%$%G%"%k(B @var{i} $B$H(B @var{j} $B$N8r$o$j$r5a$a$k(B.
                    970: @item Intersection(@var{i},@var{j},@var{r})
                    971: ::  $B%$%G%"%k(B @var{i} $B$H(B @var{j} $B$N8r$o$j$r5a$a$k(B. $B7W;;$r4D(B @var{r}
                    972: $B$G$*$3$J$&(B.
                    973: @end table
                    974:
                    975: @table @var
                    976: @item return
                    977: $B%j%9%H$G$"$?$($i$l$?%$%G%"%k$^$?$O<+M32C72$NItJ,2C72(B
                    978: @item i  j
                    979: $B%$%G%"%k$^$?$O<+M32C72$NItJ,2C72(B
                    980: @item r
                    981: $B4D(B
                    982: @end table
                    983:
                    984: @itemize @bullet
                    985: @item  ::  $B%$%G%"%k(B @var{i} $B$H(B @var{j} $B$N8r$o$j$r5a$a$k(B.
                    986: @end itemize
                    987:
                    988: @example
                    989: In(16)= RingD("x,y");
                    990: In(17)= mm=[ [x,0],[0,y] ]; nn = [ [x^2,0],[0,y^3]];
                    991: In(19)= Intersection(mm,nn):
                    992: In(33)=Intersection(mm,nn):
                    993: [    [    -x^2 , 0 ]  , [    0 , -y^3 ]  ]
                    994: @end example
                    995:
                    996: @table @t
                    997: @item $B;2>H(B
1.3     ! takayama  998: @item Files
        !           999:     @code{lib/restriction/complex.k}
1.1       takayama 1000: @end table
                   1001: @c  %%%%%%%%%%%%%%%%%%%%  end of Intersection %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1002: */
                   1003:
                   1004: /*&ja
                   1005: @c %%%%%%%%%%%%%%%%%%%%  start of Getxvars %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1006: @menu
                   1007: * Getxvars::
                   1008: @end menu
                   1009: @node Getxvars,,, $B4pK\(B $BH!?t(B
                   1010: @subsection @code{Getxvars}
                   1011: @findex Getxvars
                   1012: @table @t
                   1013: @item Getxvars()
                   1014: ::  x $BJQ?t$rLa$9(B
                   1015: @end table
                   1016:
                   1017: */
                   1018: /*&en
                   1019: @c %%%%%%%%%%%%%%%%%%%%  start of Getxvars %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1020: @menu
                   1021: * Getxvars::
                   1022: @end menu
                   1023: @node Getxvars,,, Primitive function
                   1024: @subsection @code{Getxvars}
                   1025: @findex Getxvars
                   1026: @table @t
                   1027: @item Getxvars()
                   1028: ::  Return x variables
                   1029: @end table
                   1030:
                   1031: */
                   1032:
                   1033: /*&ja
                   1034: @table @var
                   1035: @item return
                   1036: [x_list, x_str]  x_list $B$O(B x $BJQ?t$N%j%9%H(B, x_str $B$O(B x $BJQ?t$r(B , $B$G6h@Z$C$?J8;zNs(B.
                   1037: @end table
                   1038:
                   1039: */
                   1040: /*&en
                   1041: @table @var
                   1042: @item return
                   1043: [x_list, x_str] x_list is a list of x variables, x_str is a string consisting
                   1044: of x variables separated by commas.
                   1045: @end table
                   1046:
                   1047:
                   1048: */
                   1049:
                   1050: /*&C
                   1051: @example
                   1052: In(4)=RingD("x,y");
                   1053: In(5)=Getxvars():
                   1054: [    [    y , x ]  , y,x, ]
                   1055: @end example
                   1056:
                   1057: */
                   1058:
                   1059:
                   1060: /*&ja
                   1061:
                   1062: @table @t
                   1063: @item $B;2>H(B
1.3     ! takayama 1064: @item Files
        !          1065:     @code{lib/restriction/complex.k}
1.1       takayama 1066: @end table
                   1067: @c  %%%%%%%%%%%%%%%%%%%%  end of Getxvars %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1068: */
                   1069: /*&en
                   1070:
                   1071: @table @t
1.3     ! takayama 1072: @item See also
        !          1073: @item Files
        !          1074:     @code{lib/restriction/complex.k}
1.1       takayama 1075: @end table
                   1076: @c  %%%%%%%%%%%%%%%%%%%%  end of Getxvars %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1077: */
                   1078:
                   1079: /*&ja
                   1080: @c %%%%%%%%%%%%%%%%%%%%  start of Firstn %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1081: @menu
                   1082: * Firstn::
                   1083: @end menu
                   1084: @node Firstn,,, $B4pK\(B $BH!?t(B
                   1085: @subsection @code{Firstn}
                   1086: @findex Firstn
                   1087: @table @t
                   1088: @item Firstn(@var{m},@var{n})
                   1089: ::  @var{m} $B$N:G=i$N(B @var{n} $B8D$r$H$j$@$9(B.
                   1090: @end table
                   1091:
                   1092: */
                   1093: /*&en
                   1094: @c %%%%%%%%%%%%%%%%%%%%  start of Firstn %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1095: @menu
                   1096: * Firstn::
                   1097: @end menu
                   1098: @node Firstn,,, Primitive function
                   1099: @subsection @code{Firstn}
                   1100: @findex Firstn
                   1101: @table @t
                   1102: @item Firstn(@var{m},@var{n})
                   1103: ::  Return the first @var{n} elements of @var{m}.
                   1104: @end table
                   1105:
                   1106: */
                   1107:
                   1108: /*&ja
                   1109: @table @var
                   1110: @item return
                   1111: $B9TNs$^$?$O%Y%/%H%k(B
                   1112: @item m
                   1113: $B9TNs$^$?$O%Y%/%H%k(B
                   1114: @item n
                   1115: $B?t(B
                   1116: @end table
                   1117:
                   1118: @itemize @bullet
                   1119: @item  m $B$N:G=i$N(B n $B8D(B.  $B$H$/$K(B m $B$,9TNs$N$H$-$O(B, $B3F9T$h$j:G=i$N(B n $B8D$r$H$j$@$7$?(B
                   1120: $B$b$N$G:n$l$i$?9TNs$rLa$9(B.
                   1121: @end itemize
                   1122:
                   1123: */
                   1124: /*&en
                   1125: @table @var
                   1126: @item return
                   1127: Matrix or vector
                   1128: @item m
                   1129: Matrix or vector
                   1130: @item n
                   1131: Number
                   1132: @end table
                   1133:
                   1134: @itemize @bullet
                   1135: @item  The first n elements of m.  When m is a matrix, it returns the matrix
                   1136: consisting of first n elements of rows of m.
                   1137: @end itemize
                   1138:
                   1139: */
                   1140:
                   1141: /*&C
                   1142: @example
                   1143: In(16)= mm = [[1,2,3],[4,5,6]];
                   1144: In(17)= Firstn(mm,2):
                   1145:     [[1,2],
                   1146:      [4,5]]
                   1147: @end example
                   1148: */
                   1149:
                   1150:
                   1151: /*&ja
                   1152:
                   1153: @table @t
                   1154: @item $B;2>H(B
1.3     ! takayama 1155: @item Files
        !          1156:     @code{lib/restriction/complex.k}
1.1       takayama 1157: @end table
                   1158: @c  %%%%%%%%%%%%%%%%%%%%  end of Firstn %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1159: */
                   1160: /*&en
                   1161:
                   1162: @table @t
1.3     ! takayama 1163: @item See also
        !          1164: @item Files
        !          1165:     @code{lib/restriction/complex.k}
        !          1166:
1.1       takayama 1167:
                   1168: @end table
                   1169: @c  %%%%%%%%%%%%%%%%%%%%  end of Firstn %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
                   1170: */
                   1171:
                   1172: /*&ja
                   1173: @node $B:w0z(B,,, Top
                   1174: @unnumbered $B:w0z(B
                   1175: */
                   1176: /*&en
                   1177: @node index,,, Top
                   1178: @unnumbered index
                   1179: */
                   1180: /*&C
                   1181: @printindex fn
                   1182: @printindex cp
                   1183: @iftex
                   1184: @vfill @eject
                   1185: @end iftex
                   1186: @summarycontents
                   1187: @contents
                   1188: @bye
                   1189: */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>