Macaulay2 » Documentation
Packages » Macaulay2Doc :: standardForm
next | previous | forward | backward | up | index | toc

standardForm -- convert to standard form

Synopsis

Description

A polynomial is represented by hash tables in which the keys are hash tables representing the monomials and the values are the coefficients. The monomials themselves are represented by hash tables in which the keys are the variables and the values are the corresponding exponents.

i1 : R = ZZ/101[x,y,z];
i2 : standardForm (x^2 - 7 + x*y*z^11 + y)

o2 = HashTable{HashTable{} => -7      }
               HashTable{0 => 1 } => 1
                         1 => 1
                         2 => 11
               HashTable{0 => 2} => 1
               HashTable{1 => 1} => 1

o2 : HashTable

Code

../../../../../Macaulay2/m2/monoids.m2:144:32-148:82: --source code:
standardForm RingElement   := f -> (
    R := ring f;
    k := coefficientRing R;
    (cc, mm) := rawPairs(raw k, raw f);
    new HashTable from toList apply(cc, mm, (c, m) -> (standardForm m, new k from c)))

See also

Ways to use standardForm :

For the programmer

The object standardForm is a method function.