public class Quotient<C extends GcdRingElem<C>> extends java.lang.Object implements GcdRingElem<Quotient<C>>, QuotPair<GenPolynomial<C>>
Modifier and Type | Field and Description |
---|---|
GenPolynomial<C> |
den
Denominator part of the element data structure.
|
GenPolynomial<C> |
num
Numerator part of the element data structure.
|
QuotientRing<C> |
ring
Quotient class factory data structure.
|
Modifier | Constructor and Description |
---|---|
|
Quotient(QuotientRing<C> r)
The constructor creates a Quotient object from a ring factory.
|
|
Quotient(QuotientRing<C> r,
GenPolynomial<C> n)
The constructor creates a Quotient object from a ring factory and a
numerator polynomial.
|
|
Quotient(QuotientRing<C> r,
GenPolynomial<C> n,
GenPolynomial<C> d)
The constructor creates a Quotient object from a ring factory and a
numerator and denominator polynomial.
|
protected |
Quotient(QuotientRing<C> r,
GenPolynomial<C> n,
GenPolynomial<C> d,
boolean isred)
The constructor creates a Quotient object from a ring factory and a
numerator and denominator polynomial.
|
Modifier and Type | Method and Description |
---|---|
Quotient<C> |
abs()
Quotient absolute value.
|
int |
compareTo(Quotient<C> b)
Quotient comparison.
|
Quotient<C> |
copy()
Clone this.
|
GenPolynomial<C> |
denominator()
Denominator.
|
Quotient<C> |
divide(Quotient<C> S)
Quotient division.
|
Quotient<C>[] |
egcd(Quotient<C> b)
Extended greatest common divisor.
|
boolean |
equals(java.lang.Object b)
Comparison with any other object.
|
QuotientRing<C> |
factory()
Get the corresponding element factory.
|
Quotient<C> |
gcd(Quotient<C> b)
Greatest common divisor.
|
int |
hashCode()
Hash code for this quotient.
|
Quotient<C> |
inverse()
Quotient inverse.
|
boolean |
isConstant()
Is Qoutient a constant.
|
boolean |
isONE()
Is Quotient one.
|
boolean |
isUnit()
Is Quotient a unit.
|
boolean |
isZERO()
Is Quotient zero.
|
Quotient<C> |
monic()
Quotient monic.
|
Quotient<C> |
multiply(C b)
Quotient multiplication by coefficient.
|
Quotient<C> |
multiply(GenPolynomial<C> b)
Quotient multiplication by GenPolynomial.
|
Quotient<C> |
multiply(Quotient<C> S)
Quotient multiplication.
|
Quotient<C> |
negate()
Quotient negate.
|
GenPolynomial<C> |
numerator()
Numerator.
|
Quotient<C>[] |
quotientRemainder(Quotient<C> S)
Quotient and remainder by division of this by S.
|
Quotient<C> |
remainder(Quotient<C> S)
Quotient remainder.
|
int |
signum()
Quotient signum.
|
Quotient<C> |
subtract(Quotient<C> S)
Quotient subtraction.
|
Quotient<C> |
sum(Quotient<C> S)
Quotient summation.
|
java.lang.String |
toScript()
Get a scripting compatible string representation.
|
java.lang.String |
toScriptFactory()
Get a scripting compatible string representation of the factory.
|
java.lang.String |
toString()
Get the String representation as RingElem.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
leftDivide, leftRemainder, power, rightDivide, rightRemainder, twosidedDivide, twosidedRemainder
public final QuotientRing<C extends GcdRingElem<C>> ring
public final GenPolynomial<C extends GcdRingElem<C>> num
public final GenPolynomial<C extends GcdRingElem<C>> den
public Quotient(QuotientRing<C> r)
r
- ring factory.public Quotient(QuotientRing<C> r, GenPolynomial<C> n)
r
- ring factory.n
- numerator polynomial.public Quotient(QuotientRing<C> r, GenPolynomial<C> n, GenPolynomial<C> d)
r
- ring factory.n
- numerator polynomial.d
- denominator polynomial.protected Quotient(QuotientRing<C> r, GenPolynomial<C> n, GenPolynomial<C> d, boolean isred)
r
- ring factory.n
- numerator polynomial.d
- denominator polynomial.isred
- true if gcd(n,d) == 1, else false.public QuotientRing<C> factory()
factory
in interface Element<Quotient<C extends GcdRingElem<C>>>
Element.factory()
public GenPolynomial<C> numerator()
numerator
in interface QuotPair<GenPolynomial<C extends GcdRingElem<C>>>
QuotPair.numerator()
public GenPolynomial<C> denominator()
denominator
in interface QuotPair<GenPolynomial<C extends GcdRingElem<C>>>
QuotPair.denominator()
public boolean isZERO()
isZERO
in interface AbelianGroupElem<Quotient<C extends GcdRingElem<C>>>
AbelianGroupElem.isZERO()
public boolean isONE()
isONE
in interface MonoidElem<Quotient<C extends GcdRingElem<C>>>
MonoidElem.isONE()
public boolean isUnit()
isUnit
in interface MonoidElem<Quotient<C extends GcdRingElem<C>>>
MonoidElem.isUnit()
public boolean isConstant()
isConstant
in interface QuotPair<GenPolynomial<C extends GcdRingElem<C>>>
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public java.lang.String toScript()
toScript
in interface Element<Quotient<C extends GcdRingElem<C>>>
Element.toScript()
public java.lang.String toScriptFactory()
toScriptFactory
in interface Element<Quotient<C extends GcdRingElem<C>>>
Element.toScriptFactory()
public int compareTo(Quotient<C> b)
compareTo
in interface Element<Quotient<C extends GcdRingElem<C>>>
compareTo
in interface java.lang.Comparable<Quotient<C extends GcdRingElem<C>>>
b
- Quotient.public boolean equals(java.lang.Object b)
public int hashCode()
public Quotient<C> abs()
abs
in interface AbelianGroupElem<Quotient<C extends GcdRingElem<C>>>
AbelianGroupElem.abs()
public Quotient<C> sum(Quotient<C> S)
sum
in interface AbelianGroupElem<Quotient<C extends GcdRingElem<C>>>
S
- Quotient.public Quotient<C> negate()
negate
in interface AbelianGroupElem<Quotient<C extends GcdRingElem<C>>>
AbelianGroupElem.negate()
public int signum()
signum
in interface AbelianGroupElem<Quotient<C extends GcdRingElem<C>>>
AbelianGroupElem.signum()
public Quotient<C> subtract(Quotient<C> S)
subtract
in interface AbelianGroupElem<Quotient<C extends GcdRingElem<C>>>
S
- Quotient.public Quotient<C> divide(Quotient<C> S)
divide
in interface MonoidElem<Quotient<C extends GcdRingElem<C>>>
S
- Quotient.public Quotient<C> inverse()
inverse
in interface MonoidElem<Quotient<C extends GcdRingElem<C>>>
MonoidElem.inverse()
public Quotient<C> remainder(Quotient<C> S)
remainder
in interface MonoidElem<Quotient<C extends GcdRingElem<C>>>
S
- Quotient.public Quotient<C>[] quotientRemainder(Quotient<C> S)
quotientRemainder
in interface MonoidElem<Quotient<C extends GcdRingElem<C>>>
S
- a Quotientpublic Quotient<C> multiply(Quotient<C> S)
multiply
in interface MonoidElem<Quotient<C extends GcdRingElem<C>>>
S
- Quotient.public Quotient<C> multiply(GenPolynomial<C> b)
b
- GenPolynomialpublic Quotient<C> multiply(C b)
b
- coefficient.