Class GreatestCommonDivisorSyzygy<C extends GcdRingElem<C>>
java.lang.Object
edu.jas.fd.GreatestCommonDivisorAbstract<C>
edu.jas.fd.GreatestCommonDivisorSyzygy<C>
- Type Parameters:
C- coefficient type
- All Implemented Interfaces:
GreatestCommonDivisor<C>, Serializable
public class GreatestCommonDivisorSyzygy<C extends GcdRingElem<C>>
extends GreatestCommonDivisorAbstract<C>
(Non-unique) factorization domain greatest common divisor common algorithms
with syzygy computation. The implementation uses solvable syzygy gcd
computation.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final booleanprivate static final org.apache.logging.log4j.LoggerFields inherited from class GreatestCommonDivisorAbstract
coFac, syz -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionLeft univariate GenSolvablePolynomial greatest common divisor.Left GenSolvablePolynomial greatest common divisor.leftRecursiveUnivariateGcd(GenSolvablePolynomial<GenPolynomial<C>> P, GenSolvablePolynomial<GenPolynomial<C>> S) Univariate GenSolvablePolynomial left recursive greatest common divisor.Right univariate GenSolvablePolynomial greatest common divisor.Right 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, leftGcdCofactors, leftLcm, leftOreCond, leftOreCond, leftPrimitivePart, leftRecursiveContent, leftRecursiveGcd, leftRecursivePrimitivePart, recursiveContent, rightBaseContent, rightBasePrimitivePart, rightContent, rightDivide, rightGcd, rightGcdCofactors, rightLcm, rightOreCond, rightOreCond, rightPrimitivePart, rightRecursiveContent, rightRecursiveGcd, rightRecursivePrimitivePart, toString
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
debug
private static final boolean debug- See Also:
-
-
Constructor Details
-
GreatestCommonDivisorSyzygy
Constructor.- Parameters:
cf- coefficient ring.
-
-
Method Details
-
leftBaseGcd
Left univariate GenSolvablePolynomial greatest common divisor.- 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) Right univariate GenSolvablePolynomial greatest common divisor.- Specified by:
rightBaseGcdin 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).
-
leftGcd
Left GenSolvablePolynomial greatest common divisor.- Specified by:
leftGcdin interfaceGreatestCommonDivisor<C extends GcdRingElem<C>>- Overrides:
leftGcdin classGreatestCommonDivisorAbstract<C extends GcdRingElem<C>>- Parameters:
P- GenSolvablePolynomial.S- GenSolvablePolynomial.- Returns:
- gcd(P,S) with P = P'*gcd(P,S) and S = S'*gcd(P,S).
-
rightGcd
Right GenSolvablePolynomial right greatest common divisor.- Specified by:
rightGcdin interfaceGreatestCommonDivisor<C extends GcdRingElem<C>>- Overrides:
rightGcdin classGreatestCommonDivisorAbstract<C extends GcdRingElem<C>>- Parameters:
P- GenSolvablePolynomial.S- 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.- 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.- 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.
-