edu.jas.ufd
Class GreatestCommonDivisorSubres<C extends GcdRingElem<C>>

java.lang.Object
  extended by edu.jas.ufd.GreatestCommonDivisorAbstract<C>
      extended by edu.jas.ufd.GreatestCommonDivisorSubres<C>
All Implemented Interfaces:
GreatestCommonDivisor<C>, java.io.Serializable

public class GreatestCommonDivisorSubres<C extends GcdRingElem<C>>
extends GreatestCommonDivisorAbstract<C>

Greatest common divisor algorithms with subresultant polynomial remainder sequence.

Author:
Heinz Kredel
See Also:
Serialized Form

Constructor Summary
GreatestCommonDivisorSubres()
           
 
Method Summary
 GenPolynomial<C> baseDiscriminant(GenPolynomial<C> P)
          GenPolynomial base coefficient discriminant.
 GenPolynomial<C> baseGcd(GenPolynomial<C> P, GenPolynomial<C> S)
          Univariate GenPolynomial greatest comon divisor.
 GenPolynomial<C> basePseudoRemainder(GenPolynomial<C> P, GenPolynomial<C> S)
          GenPolynomial pseudo remainder.
 GenPolynomial<C> baseResultant(GenPolynomial<C> P, GenPolynomial<C> S)
          Univariate GenPolynomial resultant.
 GenPolynomial<GenPolynomial<C>> recursivePseudoRemainder(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<GenPolynomial<C>> S)
          GenPolynomial pseudo remainder.
 GenPolynomial<GenPolynomial<C>> recursiveResultant(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<GenPolynomial<C>> S)
          Univariate GenPolynomial recursive resultant.
 GenPolynomial<GenPolynomial<C>> recursiveUnivariateGcd(GenPolynomial<GenPolynomial<C>> P, GenPolynomial<GenPolynomial<C>> S)
          Univariate GenPolynomial recursive greatest comon divisor.
 
Methods inherited from class edu.jas.ufd.GreatestCommonDivisorAbstract
baseContent, baseExtendedGcd, baseGcdDiophant, baseHalfExtendedGcd, basePartialFraction, basePartialFraction, basePartialFraction, basePartialFractionValue, basePrimitivePart, baseRecursiveContent, baseRecursivePrimitivePart, content, coPrime, coPrime, coPrimeRec, divide, gcd, gcd, isBasePartialFraction, isBasePartialFraction, isCoPrime, isCoPrime, lcm, primitivePart, recursiveContent, recursiveGcd, recursivePrimitivePart, resultant, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GreatestCommonDivisorSubres

public GreatestCommonDivisorSubres()
Method Detail

basePseudoRemainder

public GenPolynomial<C> basePseudoRemainder(GenPolynomial<C> P,
                                            GenPolynomial<C> S)
GenPolynomial pseudo remainder. For univariate polynomials.

Parameters:
P - GenPolynomial.
S - nonzero GenPolynomial.
Returns:
remainder with ldcf(S)m P = quotient * S + remainder.
See Also:
GenPolynomial.remainder(edu.jas.poly.GenPolynomial).

baseGcd

public GenPolynomial<C> baseGcd(GenPolynomial<C> P,
                                GenPolynomial<C> S)
Univariate GenPolynomial greatest comon divisor. Uses pseudoRemainder for remainder.

Specified by:
baseGcd in class GreatestCommonDivisorAbstract<C extends GcdRingElem<C>>
Parameters:
P - univariate GenPolynomial.
S - univariate GenPolynomial.
Returns:
gcd(P,S).

recursivePseudoRemainder

public GenPolynomial<GenPolynomial<C>> recursivePseudoRemainder(GenPolynomial<GenPolynomial<C>> P,
                                                                GenPolynomial<GenPolynomial<C>> S)
GenPolynomial pseudo remainder. For recursive polynomials.

Parameters:
P - recursive GenPolynomial.
S - nonzero recursive GenPolynomial.
Returns:
remainder with ldcf(S)m P = quotient * S + remainder.
See Also:
GenPolynomial.remainder(edu.jas.poly.GenPolynomial).

recursiveUnivariateGcd

public GenPolynomial<GenPolynomial<C>> recursiveUnivariateGcd(GenPolynomial<GenPolynomial<C>> P,
                                                              GenPolynomial<GenPolynomial<C>> S)
Univariate GenPolynomial recursive greatest comon divisor. Uses pseudoRemainder for remainder.

Specified by:
recursiveUnivariateGcd in class GreatestCommonDivisorAbstract<C extends GcdRingElem<C>>
Parameters:
P - univariate recursive GenPolynomial.
S - univariate recursive GenPolynomial.
Returns:
gcd(P,S).

baseResultant

public GenPolynomial<C> baseResultant(GenPolynomial<C> P,
                                      GenPolynomial<C> S)
Univariate GenPolynomial resultant. Uses pseudoRemainder for remainder.

Parameters:
P - univariate GenPolynomial.
S - univariate GenPolynomial.
Returns:
res(P,S).

recursiveResultant

public GenPolynomial<GenPolynomial<C>> recursiveResultant(GenPolynomial<GenPolynomial<C>> P,
                                                          GenPolynomial<GenPolynomial<C>> S)
Univariate GenPolynomial recursive resultant. Uses pseudoRemainder for remainder.

Parameters:
P - univariate recursive GenPolynomial.
S - univariate recursive GenPolynomial.
Returns:
res(P,S).

baseDiscriminant

public GenPolynomial<C> baseDiscriminant(GenPolynomial<C> P)
GenPolynomial base coefficient discriminant.

Parameters:
P - GenPolynomial.
Returns:
discriminant(P).