next up previous contents
: Recursive polynomials : CMOexpressions for numbers and : Integer ZZ   Ìܼ¡

Distributed polynomial Dpolynomial

We treat polynomial rings and their elements as follows.

Generic DMS ring is an $n$-variate polynomial ring $K[x_1, \ldots, x_n]$, where $K$ is a 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.

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.

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 x^2 y$ is regarded as an element of a six-variate polynomial ring.


next up previous contents
: Recursive polynomials : CMOexpressions for numbers and : Integer ZZ   Ìܼ¡
Nobuki Takayama Heisei 28.8.27.