[BACK]Return to cmo.txt CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / plugin

File: [local] / OpenXM / src / kan96xx / plugin / cmo.txt (download)

Revision 1.1.1.1 (vendor branch), Fri Oct 8 02:12:05 1999 UTC (24 years, 7 months ago) by maekawa
Branch: OpenXM, MAIN
CVS Tags: maekawa-ipv6, R_1_3_1-2, RELEASE_20000124, RELEASE_1_3_1_13b, RELEASE_1_2_3_12, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, RELEASE_1_1_3, RELEASE_1_1_2, KNOPPIX_2006, HEAD, DEB_REL_1_2_3-9, ALPHA
Changes since 1.1: +0 -0 lines

o import OpenXM sources

cmo.txt   1997, 7/1, 1997, 12/31

 (すべてのフィールドは基本的に 32 bits.)

List :
 | tag 17  | length m | obj[0] | ... | obj[m-1] |
 (List を以下 [obj[0], ..., obj[m-1]] と書く.)

DMS :
 | tag 23  |

Coefficients:
 32 bit coefficients :
   | tag 21 | int |
 ZZ (GMP integer) :
   | tag 20 | {internal expression of GMP integer} |

Monomial:
 Monomial32 :
   | tag 19 | number of variables n | 
   | exponent[0] | ... | expoent[n-1] | {Coefficients} |
 ZeroMonomial :
   | tag 22 |



Polynomial:
 PolynomialByList :
    {Monomial32}  
   or
    [{DMS}, {RingDefinition}, {Polynomial}, ... , {Polynomial}]

RingDefinition:
  | tag 24 | 
  | tag 17 | length m |   (LIST)
   | INT32 number of variables |                  <m=0>
   | INT32 characteristic |or| RingDefinition |   <m=1>
   | LIST  name of variables |   (optional)       <m=2>
   | LIST  weight vector     |   (optional)       <m=3>
   | LIST  output order      |   (optional)       <m=4>



Example: Z/11Z [x,y]
 3 x^2 y + 1   ===> | 17(11) | 4(4) | {DMS}     |{RingDef}| {3 x^2 y} | {1} |
                    | 17(11) | 4(4) | 24(18)    |{RingDef}| {3 x^2 y} | {1} |
                               The length is four {DMS}, {RingDef}, 3x2y, 1.
 RingDef      ====> | 25(19) | {LIST} 17(11)| 2 |
                             | {number of variables} |{coeff field}| 
       
 3 x^2 y       ===> | 19 | 2 |   | 2 |
                    | 21 | 3 |
 1             ===> | 19 | 2 |   | 0 |
                    | 21 | 1 |

 0             ===> | 22 |


Example: Z/11Z [6 variables]
(cmotest.sm1) run
[(x,y) ring_of_polynomials ( ) elimination_order 11 ] define_ring ;
(3x^2 y). cmo /ff set ;
ff dump ;
  dumpCmoBuf : size = 80, size/sizeof(int) = 20

  0  0  0 11  0  0  0  3  0  0  0 18  0  0  0 19  0  0  0 11
     LIST         length     DMS      RINGDEFINITION LIST
  0  0  0  2  0  0  0  3  0  0  0  6  0  0  0  3  0  0  0  b
     length       (INT32)     6           (INT32)     11 (characteristic)

  0  0  0 13  0  0  0  6  0  0  0  0  0  0  0  2  0  0  0  0
  MONOMIAL32      6 varis     0          2 (x^2)           0
  0  0  0  0  0  0  0  1  0  0  0  0  0  0  0 16  0  0  0  3
           0     1 (y^1)           0       Z/11            3

(3x^2 y). cmosave   ===> debug/cmodata1.cmo