Annotation of OpenXM/src/kan96xx/plugin/cmo.txt, Revision 1.1.1.1
1.1 maekawa 1: cmo.txt 1997, 7/1, 1997, 12/31
2:
3: (すべてのフィールドは基本的に 32 bits.)
4:
5: List :
6: | tag 17 | length m | obj[0] | ... | obj[m-1] |
7: (List を以下 [obj[0], ..., obj[m-1]] と書く.)
8:
9: DMS :
10: | tag 23 |
11:
12: Coefficients:
13: 32 bit coefficients :
14: | tag 21 | int |
15: ZZ (GMP integer) :
16: | tag 20 | {internal expression of GMP integer} |
17:
18: Monomial:
19: Monomial32 :
20: | tag 19 | number of variables n |
21: | exponent[0] | ... | expoent[n-1] | {Coefficients} |
22: ZeroMonomial :
23: | tag 22 |
24:
25:
26:
27: Polynomial:
28: PolynomialByList :
29: {Monomial32}
30: or
31: [{DMS}, {RingDefinition}, {Polynomial}, ... , {Polynomial}]
32:
33: RingDefinition:
34: | tag 24 |
35: | tag 17 | length m | (LIST)
36: | INT32 number of variables | <m=0>
37: | INT32 characteristic |or| RingDefinition | <m=1>
38: | LIST name of variables | (optional) <m=2>
39: | LIST weight vector | (optional) <m=3>
40: | LIST output order | (optional) <m=4>
41:
42:
43:
44: Example: Z/11Z [x,y]
45: 3 x^2 y + 1 ===> | 17(11) | 4(4) | {DMS} |{RingDef}| {3 x^2 y} | {1} |
46: | 17(11) | 4(4) | 24(18) |{RingDef}| {3 x^2 y} | {1} |
47: The length is four {DMS}, {RingDef}, 3x2y, 1.
48: RingDef ====> | 25(19) | {LIST} 17(11)| 2 |
49: | {number of variables} |{coeff field}|
50:
51: 3 x^2 y ===> | 19 | 2 | | 2 |
52: | 21 | 3 |
53: 1 ===> | 19 | 2 | | 0 |
54: | 21 | 1 |
55:
56: 0 ===> | 22 |
57:
58:
59: Example: Z/11Z [6 variables]
60: (cmotest.sm1) run
61: [(x,y) ring_of_polynomials ( ) elimination_order 11 ] define_ring ;
62: (3x^2 y). cmo /ff set ;
63: ff dump ;
64: dumpCmoBuf : size = 80, size/sizeof(int) = 20
65:
66: 0 0 0 11 0 0 0 3 0 0 0 18 0 0 0 19 0 0 0 11
67: LIST length DMS RINGDEFINITION LIST
68: 0 0 0 2 0 0 0 3 0 0 0 6 0 0 0 3 0 0 0 b
69: length (INT32) 6 (INT32) 11 (characteristic)
70:
71: 0 0 0 13 0 0 0 6 0 0 0 0 0 0 0 2 0 0 0 0
72: MONOMIAL32 6 varis 0 2 (x^2) 0
73: 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 16 0 0 0 3
74: 0 1 (y^1) 0 Z/11 3
75:
76: (3x^2 y). cmosave ===> debug/cmodata1.cmo
77:
78:
79:
80:
81:
82:
83:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>