Rings for MAT 685
Mathematical ring implementation to demonstrate templates and inheritance
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 CRings::Ring_ElementClass for elements with the capabilities of ring arithmetic
 CRings::Commutative_Ring_ElementElements of this type should have commutative multiplication
 CRings::Mod< T, p >
 CRings::Modp< T, p >Templated modular arithmetic, modulo a prime \(p\)
 CRings::Integral_Domain_ElementElements of this type should be cancellable; there should be no zero divisors
 CRings::Field_ElementField is an integral domain whose nonzero elements have inverses
 CRings::Modp< T, p >Templated modular arithmetic, modulo a prime \(p\)
 CRings::Rational< T >Type for rational numbers
 CRings::Integer< T >Encapsulates integers under the Ring_Element rubric
 CRings::Mod< T, m >Templated modular arithmetic, making no assumption about the modulus
 CRings::Polynomial< R >Dense univariate polynomial, templated according to the coefficient’s type