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 |

- standardForm(MonoidElement)
- standardForm(RingElement)