# Interface Ring<R>

Type Parameters:
R - a ring
All Superinterfaces:
AbelianGroup<R>, Monoid<R>
All Known Subinterfaces:
Field<F>, GenericMatrix<T,F>, Matrix, MatrixRing, SparseMatrix
All Known Implementing Classes:
BidiagonalMatrix, BorderedHessian, CauchyPolynomial, ColumnBindMatrix, Complex, ComplexMatrix, CongruentMatrix, CorrelationMatrix, CSCSparseMatrix, CSRSparseMatrix, DenseMatrix, DiagonalMatrix, DiagonalSum, DOKSparseMatrix, DPolynomial, FastKroneckerProduct, GenericFieldMatrix, GivensMatrix, GoldfeldQuandtTrotter, Hessian, HilbertMatrix, ImmutableMatrix, Inverse, Jacobian, KroneckerProduct, LILSparseMatrix, LowerTriangularMatrix, MAT, MatrixRootByDiagonalization, MatthewsDavies, OuterProduct, PermutationMatrix, Polynomial, PositiveDefiniteMatrixByPositiveDiagonal, PositiveSemiDefiniteMatrixNonNegativeDiagonal, Pow, PseudoInverse, QuadraticMonomial, Real, RealMatrix, ReturnsMatrix, SampleCovariance, ScaledPolynomial, SimilarMatrix, SubMatrixRef, SymmetricKronecker, SymmetricMatrix, TridiagonalMatrix, UpperTriangularMatrix, VariancebtX

public interface Ring<R> extends AbelianGroup<R>, Monoid<R>
A ring is a set R equipped with two binary operations called addition and multiplication:
+ : R × R → R
and
⋅ : R × R → R
To qualify as a ring, the set and two operations, (R, +, ⋅), must satisfy the requirements known as the ring axioms.
add, minus, opposite, ZERO
multiply, ONE