Package edu.jas.ufd
Class FactorAbsolute<C extends GcdRingElem<C>>
java.lang.Object
edu.jas.ufd.FactorAbstract<C>
edu.jas.ufd.FactorAbsolute<C>
- Type Parameters:
C
- coefficient type
- All Implemented Interfaces:
Factorization<C>
,Serializable
- Direct Known Subclasses:
FactorAlgebraic
,FactorAlgebraicPrim
,FactorComplex
,FactorModular
,FactorModularBerlekamp
,FactorRational
Absolute factorization algorithms class. This class contains implementations
of methods for factorization over algebraically closed fields. The required
field extension is computed along with the factors. The methods have been
tested for prime fields of characteristic zero, that is for
BigRational
. It might eventually also be used for prime fields
of non-zero characteristic, that is with ModInteger
. The field
extension may yet not be minimal.- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final boolean
private static final org.apache.logging.log4j.Logger
Fields inherited from class edu.jas.ufd.FactorAbstract
engine, sengine
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
No argument constructor.FactorAbsolute
(RingFactory<C> cfac) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionUnivariate GenPolynomial algebraic partial fraction decomposition, Absolute factorization for elementary integration algorithm to linear factors.Univariate GenPolynomial algebraic partial fraction decomposition, via absolute factorization to linear factors.GenPolynomial absolute base factorization of a polynomial.GenPolynomial base absolute factorization of a irreducible polynomial.GenPolynomial absolute base factorization of a squarefree polynomial.GenPolynomial absolute factorization of a polynomial.GenPolynomial absolute factorization of a irreducible polynomial.GenPolynomial absolute factorization of a squarefree polynomial.boolean
isAbsoluteFactorization
(Factors<C> facs) GenPolynomial is absolute factorization.boolean
isAbsoluteFactorization
(FactorsList<C> facs) GenPolynomial is absolute factorization.boolean
isAbsoluteFactorization
(FactorsMap<C> facs) GenPolynomial is absolute factorization.boolean
GenPolynomial test if is absolute irreducible.toString()
Get the String representation.Methods inherited from class edu.jas.ufd.FactorAbstract
baseFactors, baseFactorsRadical, baseFactorsSquarefree, basePrimitivePart, factors, factorsDegree, factorsRadical, factorsRadical, factorsSquarefree, factorsSquarefreeKronecker, factorsSquarefreeOptimize, isFactorization, isFactorization, isIrreducible, isRecursiveFactorization, isReducible, isSquarefree, normalizeFactorization, primitivePart, recursiveFactors, recursiveFactorsSquarefree, removeOnce, squarefreeFactors, squarefreePart
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
debug
private static final boolean debug
-
-
Constructor Details
-
FactorAbsolute
protected FactorAbsolute()No argument constructor. Note: can't use this constructor. -
FactorAbsolute
Constructor.- Parameters:
cfac
- coefficient ring factory.
-
-
Method Details
-
toString
Get the String representation.- Overrides:
toString
in classFactorAbstract<C extends GcdRingElem<C>>
- See Also:
-
isAbsoluteIrreducible
GenPolynomial test if is absolute irreducible.- Parameters:
P
- GenPolynomial.- Returns:
- true if P is absolute irreducible, else false.
-
baseFactorsAbsolute
GenPolynomial absolute base factorization of a polynomial.- Parameters:
P
- univariate GenPolynomial.- Returns:
- factors map container: [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i**e_i. Note: K(alpha) not yet minimal.
-
baseFactorsAbsoluteSquarefree
GenPolynomial absolute base factorization of a squarefree polynomial.- Parameters:
P
- squarefree and primitive univariate GenPolynomial.- Returns:
- factors list container: [p_1,...,p_k] with P = prod_{i=1, ..., k} p_i. Note: K(alpha) not yet minimal.
-
baseFactorsAbsoluteIrreducible
GenPolynomial base absolute factorization of a irreducible polynomial.- Parameters:
P
- irreducible! univariate GenPolynomial.- Returns:
- factors container: [p_1,...,p_k] with P = prod_{i=1, ..., k} p_i in K(alpha)[x] for suitable alpha and p_i irreducible over L[x], where K \subset K(alpha) \subset L is an algebraically closed field over K. Note: K(alpha) not yet minimal.
-
baseAlgebraicPartialFraction
Univariate GenPolynomial algebraic partial fraction decomposition, Absolute factorization for elementary integration algorithm to linear factors.- Parameters:
A
- univariate GenPolynomial, deg(A) ≤ deg(P).P
- univariate squarefree GenPolynomial, gcd(A,P) == 1.- Returns:
- partial fraction container.
-
baseAlgebraicPartialFractionIrreducibleAbsolute
public PartialFraction<C> baseAlgebraicPartialFractionIrreducibleAbsolute(GenPolynomial<C> A, GenPolynomial<C> P) Univariate GenPolynomial algebraic partial fraction decomposition, via absolute factorization to linear factors.- Parameters:
A
- univariate GenPolynomial, deg(A) < deg(P).P
- univariate irreducible GenPolynomial, gcd(A,P) == 1.- Returns:
- partial fraction container.
-
factorsAbsolute
GenPolynomial absolute factorization of a polynomial.- Parameters:
P
- GenPolynomial.- Returns:
- factors map container: [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i**e_i. Note: K(alpha) not yet minimal.
-
factorsAbsoluteSquarefree
GenPolynomial absolute factorization of a squarefree polynomial.- Parameters:
P
- squarefree and primitive GenPolynomial.- Returns:
- factors list container: [p_1,...,p_k] with P = prod_{i=1, ..., k} p_i. Note: K(alpha) not yet minimal.
-
factorsAbsoluteIrreducible
GenPolynomial absolute factorization of a irreducible polynomial.- Parameters:
P
- irreducible! GenPolynomial.- Returns:
- factors container: [p_1,...,p_k] with P = prod_{i=1, ..., k} p_i in K(alpha)[x] for suitable alpha and p_i irreducible over L[x], where K \subset K(alpha) \subset L is an algebraically closed field over K. Note: K(alpha) not yet minimal.
-
isAbsoluteFactorization
GenPolynomial is absolute factorization.- Parameters:
facs
- factors container.- Returns:
- true if P = prod_{i=1,...,r} p_i, else false.
-
isAbsoluteFactorization
GenPolynomial is absolute factorization.- Parameters:
facs
- factors list container.- Returns:
- true if P = prod_{i=1,...,r} p_i, else false.
-
isAbsoluteFactorization
GenPolynomial is absolute factorization.- Parameters:
facs
- factors map container.- Returns:
- true if P = prod_{i=1,...,k} p_i**e_i , else false.
-