環とそれに属する多項式は次のような考えかたであつかう.
Generic DMS ring に属する元は, 変数を 個持つ 適当な係数集合 を持つ多項式環 の元である. 係数集合 がなにかは, 実際データを読み込み, Coefficient を見た段階で わかる. この環に属する多項式を CMO 形式でうけとった場合, 各サーバはその サーバの対応する Object に変換しないといけない. この変換の仕方は, 各サーバ毎にきめる.
Asir の場合は, の元は分散表現多項式に変換される.
kan/sm1 の場合は事情は複雑である. kan/sm1 は, Generic DMS ring にあたる クラスをもたない. つまり, Default で存在する, 変数の分散表現多項式環は存在しないわけである. したがって, kan/sm1 では, DMS of N variables が来た場合, これを CurrentRing の元として読み込む. CurrentRing の変数の数が で, だと新しい多項式環を生成してデータを読み込む. Order その他の optional 情報はすべて無視する.
DMS の 2 番目のフィールドで, Ring by Name を用いた場合, 現在の名前空間で変数 yyy に格納された ring object の元として, この多項式を変換しなさいという意味になる. kan/sm1 の場合, 環の定義は ring object として格納されており, この ring object を 変数 yyy で参照することにより CMO としてうけとった 多項式をこの ring の元として格納できる.
Example: (すべての数の表記は 16 進表記)
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),),は 6 変数の多項式環の 元としてみなされている.