Class GreatestCommonDivisorSimple<C extends GcdRingElem<C>>
java.lang.Object
edu.jas.fd.GreatestCommonDivisorAbstract<C>
edu.jas.fd.GreatestCommonDivisorSimple<C>
- Type Parameters:
C- coefficient type
- All Implemented Interfaces:
GreatestCommonDivisor<C>, Serializable
public class GreatestCommonDivisorSimple<C extends GcdRingElem<C>>
extends GreatestCommonDivisorAbstract<C>
(Non-unique) factorization domain greatest common divisor common algorithms
with monic polynomial remainder sequence. If C is a field, then the monic PRS
(on coefficients) is computed otherwise no simplifications in the reduction
are made.
- Author:
- Heinz Kredel
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionUnivariate GenSolvablePolynomial greatest common divisor.leftRecursiveUnivariateGcd(GenSolvablePolynomial<GenPolynomial<C>> P, GenSolvablePolynomial<GenPolynomial<C>> S) Univariate GenSolvablePolynomial left recursive greatest common divisor.Univariate GenSolvablePolynomial right greatest common divisor.rightRecursiveUnivariateGcd(GenSolvablePolynomial<GenPolynomial<C>> P, GenSolvablePolynomial<GenPolynomial<C>> S) Univariate GenSolvablePolynomial right recursive greatest common divisor.Methods inherited from class GreatestCommonDivisorAbstract
baseExtendedGcd, baseGcdDiophant, baseHalfExtendedGcd, baseRecursiveContent, baseRecursivePrimitivePart, divide, gcd, isLeftCoPrime, isLeftCoPrime, isLeftOreCond, isRightOreCond, leftBaseContent, leftBasePrimitivePart, leftContent, leftCoPrime, leftCoPrime, leftCoPrimeRec, leftGcd, leftGcd, leftGcd, leftGcdCofactors, leftLcm, leftOreCond, leftOreCond, leftPrimitivePart, leftRecursiveContent, leftRecursiveGcd, leftRecursivePrimitivePart, recursiveContent, rightBaseContent, rightBasePrimitivePart, rightContent, rightDivide, rightGcd, rightGcd, rightGcdCofactors, rightLcm, rightOreCond, rightOreCond, rightPrimitivePart, rightRecursiveContent, rightRecursiveGcd, rightRecursivePrimitivePart, toString
-
Constructor Details
-
GreatestCommonDivisorSimple
Constructor.- Parameters:
cf- coefficient ring.
-
-
Method Details
-
leftBaseGcd
Univariate GenSolvablePolynomial greatest common divisor. Uses pseudoRemainder for remainder.- Specified by:
leftBaseGcdin classGreatestCommonDivisorAbstract<C extends GcdRingElem<C>>- Parameters:
P- univariate GenSolvablePolynomial.S- univariate GenSolvablePolynomial.- Returns:
- gcd(P,S) with P = P'*gcd(P,S) and S = S'*gcd(P,S).
-
rightBaseGcd
public GenSolvablePolynomial<C> rightBaseGcd(GenSolvablePolynomial<C> P, GenSolvablePolynomial<C> S) Univariate GenSolvablePolynomial right greatest common divisor. Uses pseudoRemainder for remainder.- Specified by:
rightBaseGcdin classGreatestCommonDivisorAbstract<C extends GcdRingElem<C>>- Parameters:
P- univariate GenSolvablePolynomial.S- univariate GenSolvablePolynomial.- Returns:
- gcd(P,S) with P = gcd(P,S)*P' and S = gcd(P,S)*S'.
-
leftRecursiveUnivariateGcd
public GenSolvablePolynomial<GenPolynomial<C>> leftRecursiveUnivariateGcd(GenSolvablePolynomial<GenPolynomial<C>> P, GenSolvablePolynomial<GenPolynomial<C>> S) Univariate GenSolvablePolynomial left recursive greatest common divisor. Uses pseudoRemainder for remainder.- Specified by:
leftRecursiveUnivariateGcdin classGreatestCommonDivisorAbstract<C extends GcdRingElem<C>>- Parameters:
P- univariate recursive GenSolvablePolynomial.S- univariate recursive GenSolvablePolynomial.- Returns:
- gcd(P,S) with P = P'*gcd(P,S)*p and S = S'*gcd(P,S)*s, where deg_main(p) = deg_main(s) == 0.
-
rightRecursiveUnivariateGcd
public GenSolvablePolynomial<GenPolynomial<C>> rightRecursiveUnivariateGcd(GenSolvablePolynomial<GenPolynomial<C>> P, GenSolvablePolynomial<GenPolynomial<C>> S) Univariate GenSolvablePolynomial right recursive greatest common divisor. Uses pseudoRemainder for remainder.- Specified by:
rightRecursiveUnivariateGcdin classGreatestCommonDivisorAbstract<C extends GcdRingElem<C>>- Parameters:
P- univariate recursive GenSolvablePolynomial.S- univariate recursive GenSolvablePolynomial.- Returns:
- gcd(P,S) with P = p*gcd(P,S)*P' and S = s*gcd(P,S)*S', where deg_main(p) = deg_main(s) == 0.
-