R
public interface Ring<R> extends AbelianGroup<R>, Monoid<R>
+ : R × R → R
· : R × R → R
add, minus, opposite, ZERO
multiply, ONE