Package edu.jas.ufd
Class GreatestCommonDivisorModular<MOD extends GcdRingElem<MOD> & Modular>
- java.lang.Object
-
- edu.jas.ufd.GreatestCommonDivisorAbstract<BigInteger>
-
- edu.jas.ufd.GreatestCommonDivisorModular<MOD>
-
- All Implemented Interfaces:
GreatestCommonDivisor<BigInteger>,java.io.Serializable
public class GreatestCommonDivisorModular<MOD extends GcdRingElem<MOD> & Modular> extends GreatestCommonDivisorAbstract<BigInteger>
Greatest common divisor algorithms with modular computation and Chinese remainder algorithm.- Author:
- Heinz Kredel
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected GreatestCommonDivisorAbstract<BigInteger>iufdprotected GreatestCommonDivisorAbstract<MOD>mufd
-
Constructor Summary
Constructors Constructor Description GreatestCommonDivisorModular()Constructor to set recursive algorithm.GreatestCommonDivisorModular(boolean simple)Constructor to set recursive algorithm.
-
Method Summary
-
Methods inherited from class edu.jas.ufd.GreatestCommonDivisorAbstract
baseContent, baseExtendedGcd, baseGcdDiophant, baseHalfExtendedGcd, basePartialFraction, basePartialFraction, basePartialFraction, basePartialFractionValue, basePrimitivePart, basePrimitivePart, baseRecursiveContent, baseRecursivePrimitivePart, content, contentPrimitivePart, coPrime, coPrime, coPrimeRec, divide, gcd, gcd, isBasePartialFraction, isBasePartialFraction, isCoPrime, isCoPrime, lcm, primitivePart, recursiveContent, recursiveGcd, recursivePrimitivePart, recursivePrimitivePart, recursiveResultant, toString
-
-
-
-
Field Detail
-
mufd
protected final GreatestCommonDivisorAbstract<MOD extends GcdRingElem<MOD> & Modular> mufd
-
iufd
protected final GreatestCommonDivisorAbstract<BigInteger> iufd
-
-
Constructor Detail
-
GreatestCommonDivisorModular
public GreatestCommonDivisorModular()
Constructor to set recursive algorithm. Use modular evaluation GCD algorithm.
-
GreatestCommonDivisorModular
public GreatestCommonDivisorModular(boolean simple)
Constructor to set recursive algorithm.- Parameters:
simple- , true if the simple PRS should be used.
-
-
Method Detail
-
baseGcd
public GenPolynomial<BigInteger> baseGcd(GenPolynomial<BigInteger> P, GenPolynomial<BigInteger> S)
Univariate GenPolynomial greatest comon divisor. Delegate to subresultant baseGcd, should not be needed.- Specified by:
baseGcdin classGreatestCommonDivisorAbstract<BigInteger>- Parameters:
P- univariate GenPolynomial.S- univariate GenPolynomial.- Returns:
- gcd(P,S).
-
recursiveUnivariateGcd
public GenPolynomial<GenPolynomial<BigInteger>> recursiveUnivariateGcd(GenPolynomial<GenPolynomial<BigInteger>> P, GenPolynomial<GenPolynomial<BigInteger>> S)
Univariate GenPolynomial recursive greatest comon divisor. Delegate to subresultant recursiveGcd, should not be needed.- Specified by:
recursiveUnivariateGcdin classGreatestCommonDivisorAbstract<BigInteger>- Parameters:
P- univariate recursive GenPolynomial.S- univariate recursive GenPolynomial.- Returns:
- gcd(P,S).
-
gcd
public GenPolynomial<BigInteger> gcd(GenPolynomial<BigInteger> P, GenPolynomial<BigInteger> S)
GenPolynomial greatest comon divisor, modular algorithm.- Specified by:
gcdin interfaceGreatestCommonDivisor<MOD extends GcdRingElem<MOD> & Modular>- Overrides:
gcdin classGreatestCommonDivisorAbstract<BigInteger>- Parameters:
P- GenPolynomial.S- GenPolynomial.- Returns:
- gcd(P,S).
-
baseResultant
public GenPolynomial<BigInteger> baseResultant(GenPolynomial<BigInteger> P, GenPolynomial<BigInteger> S)
Univariate GenPolynomial resultant.- Overrides:
baseResultantin classGreatestCommonDivisorAbstract<BigInteger>- Parameters:
P- univariate GenPolynomial.S- univariate GenPolynomial.- Returns:
- res(P,S).
-
recursiveUnivariateResultant
public GenPolynomial<GenPolynomial<BigInteger>> recursiveUnivariateResultant(GenPolynomial<GenPolynomial<BigInteger>> P, GenPolynomial<GenPolynomial<BigInteger>> S)
Univariate GenPolynomial recursive resultant.- Overrides:
recursiveUnivariateResultantin classGreatestCommonDivisorAbstract<BigInteger>- Parameters:
P- univariate recursive GenPolynomial.S- univariate recursive GenPolynomial.- Returns:
- res(P,S).
-
resultant
public GenPolynomial<BigInteger> resultant(GenPolynomial<BigInteger> P, GenPolynomial<BigInteger> S)
GenPolynomial resultant, modular algorithm.- Specified by:
resultantin interfaceGreatestCommonDivisor<MOD extends GcdRingElem<MOD> & Modular>- Overrides:
resultantin classGreatestCommonDivisorAbstract<BigInteger>- Parameters:
P- GenPolynomial.S- GenPolynomial.- Returns:
- res(P,S).
- See Also:
GreatestCommonDivisorAbstract.recursiveResultant(edu.jas.poly.GenPolynomial<edu.jas.poly.GenPolynomial<C>>, edu.jas.poly.GenPolynomial<edu.jas.poly.GenPolynomial<C>>)
-
-