## gov.sandia.cognition.math Interface EuclideanRing<RingType extends EuclideanRing<RingType>>

Type Parameters:
`RingType` - The type of EuclideanRing that this can operate with.
All Superinterfaces:
Cloneable, CloneableSerializable, Ring<RingType>, Serializable
All Known Subinterfaces:
Field<FieldType>
All Known Implementing Classes:
AbstractEuclideanRing, AbstractField, ComplexNumber, LogNumber, MutableDouble, MutableInteger, MutableLong, UnsignedLogNumber

```@PublicationReference(author="Wikipedia",
title="Euclidean Domain",
type=WebPage,
year=2013,
url="http://en.wikipedia.org/wiki/Euclidean_domain")
public interface EuclideanRing<RingType extends EuclideanRing<RingType>>extends Ring<RingType>```

Defines something similar to a Euclidean ring from abstract algebra. It is also known as a Euclidean Domain. Extends a ring and adds division.

Author:
Justin Basilico

Method Summary
` RingType` `divide(RingType other)`
Divides `this` value by the `other` value, returning the result of the division as a new value.
` void` `divideEquals(RingType other)`
Inline divises `this` value by the `other` value, storing the result inside `this`.
` RingType` `times(RingType other)`
Multiplies `this` value by the `other` value, returning the result of the multiplication as a new value.
` void` `timesEquals(RingType other)`
Inline multiplies `this` value by the `other` value, storing the result inside `this`.

Methods inherited from interface gov.sandia.cognition.math.Ring
`clone, dotTimes, dotTimesEquals, equals, equals, isZero, isZero, minus, minusEquals, negative, negativeEquals, plus, plusEquals, scale, scaledMinus, scaledMinusEquals, scaledPlus, scaledPlusEquals, scaleEquals, zero`

Method Detail

### times

`RingType times(RingType other)`
Multiplies `this` value by the `other` value, returning the result of the multiplication as a new value.

Parameters:
`other` - The other value.
Returns:
The result of the multiplication.

### timesEquals

`void timesEquals(RingType other)`
Inline multiplies `this` value by the `other` value, storing the result inside `this`.

Parameters:
`other` - The other value.

### divide

`RingType divide(RingType other)`
Divides `this` value by the `other` value, returning the result of the division as a new value.

Parameters:
`other` - The other value.
Returns:
The result of the division.

### divideEquals

`void divideEquals(RingType other)`
Inline divises `this` value by the `other` value, storing the result inside `this`.

Parameters:
`other` - The other value.