Package edu.jas.ufd
Class FactorFraction<C extends GcdRingElem<C>,D extends GcdRingElem<D> & QuotPair<GenPolynomial<C>>>
java.lang.Object
edu.jas.ufd.FactorFraction<C,D>
public class FactorFraction<C extends GcdRingElem<C>,D extends GcdRingElem<D> & QuotPair<GenPolynomial<C>>>
extends Object
Fraction factorization algorithms. This class implements
factorization methods for fractions represended as pairs of
polynomials.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.apache.logging.log4j.Logger
protected final FactorAbstract
<C> Factorization engine for normal coefficients.protected final QuotPairFactory
<GenPolynomial<C>, D> Quotient pairs ring factory. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
No argument constructor.FactorFraction
(QuotPairFactory<GenPolynomial<C>, D> fac) Constructor.FactorFraction
(QuotPairFactory<GenPolynomial<C>, D> fac, FactorAbstract<C> nengine) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionQuotient pair factorization.boolean
isFactorization
(D P, SortedMap<D, Long> F) Test quotient pair factorization.boolean
isIrreducible
(D P) Test if a quotient pair is irreducible.boolean
isReducible
(D P) Test if a non trivial factorization exists.toString()
Get the String representation.
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
qfac
protected final QuotPairFactory<GenPolynomial<C extends GcdRingElem<C>>,D extends GcdRingElem<D> & QuotPair<GenPolynomial<C>>> qfacQuotient pairs ring factory. D == QuotPair<GenPolynomial<C>> must hold. -
nengine
Factorization engine for normal coefficients.
-
-
Constructor Details
-
FactorFraction
protected FactorFraction()No argument constructor. -
FactorFraction
Constructor.- Parameters:
fac
- coefficient quotient ring factory.
-
FactorFraction
Constructor.- Parameters:
fac
- coefficient quotient ring factory.nengine
- factorization engine for polynomials over base coefficients.
-
-
Method Details
-
toString
Get the String representation. -
isIrreducible
Test if a quotient pair is irreducible.- Parameters:
P
- quotient pair (num,den), with gcd(num,den) == 1.- Returns:
- true if P is irreducible, else false.
-
isReducible
Test if a non trivial factorization exists.- Parameters:
P
- quotient pair (num,den), with gcd(num,den) == 1.- Returns:
- true if P is reducible, else false.
-
factors
Quotient pair factorization.- Parameters:
P
- quotient pair (num,den), with gcd(num,den) == 1.- Returns:
- [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i**e_i.
-
isFactorization
Test quotient pair factorization.- Parameters:
P
- quotient pair.F
- = [p_1 -> e_1, ..., p_k -> e_k].- Returns:
- true if P = prod_{i=1,...,k} p_i**e_i, else false.
-