Next: Recursive polynomials Up: CMOexpressions for numbers and Previous: Integer ZZ

## Distributed polynomial Dpolynomial

We treat polynomial rings and their elements as follows.

Generic DMS ring is an n-variate polynomial ring , where K is some coefficient set. K is unknown in advance and it is determined when coefficients of an element are received. When a server has received an element in Generic DMS ring, the server has to translate it into the corresponding local object on the server. Each server has its own translation scheme. In Asir such an element are translated into a distributed polynomial. In kan/sm1 things are complicated. kan/sm1 does not have any class corresponding to Generic DMS ring. kan/sm1 translates a DMS of N variables into an element of the CurrentRing. If the CurrentRing is n'-variate and n' < n, then an n-variate polynomial ring is newly created. Optional informations such as the term order are all ignored.

If RingByName (CMO_RING_BY_NAME, yyy) is specified as the second field of DMS, it requests a sever to use a ring object whose name is yyy as the destination ring for the translation. This is done in kan/sm1.

Example: (all numbers are represented in hexadecimal notation)

```Z/11Z [6 variables]
(kxx/cmotest.sm1) run
[(x,y) ring_of_polynomials ( ) elimination_order 11 ] define_ring ;
(3x^2 y). cmo /ff set ;
[(cmoLispLike) 1] extension ;
ff ::
Class.CMO CMO StandardEncoding: size = 52, size/sizeof(int) = 13,
tag=CMO_DISTRIBUTED_POLYNOMIAL

0  0  0 1f  0  0  0  1  0  0  0 18  0  0  0 13  0  0  0  6
0  0  0  0  0  0  0  2  0  0  0  0  0  0  0  0  0  0  0  1
0  0  0  0  0  0  0  2  0  0  0  3

ff omc ::
(CMO_DISTRIBUTED_POLYNOMIAL[1f],[size=]1,(CMO_DMS_GENERIC[18],),
(CMO_MONOMIAL32[13],3*x^2*y),),
```

3 x2 y is regarded as an element of a six-variate polynomial ring.

Next: Recursive polynomials Up: CMOexpressions for numbers and Previous: Integer ZZ
Nobuki Takayama 平成12年4月13日