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 java.lang.Object
Fraction factorization algorithms. This class implements factorization methods for fractions represended as pairs of polynomials.- Author:
- Heinz Kredel
-
-
Field Summary
Fields Modifier and Type Field Description protected FactorAbstract<C>
nengine
Factorization engine for normal coefficients.protected QuotPairFactory<GenPolynomial<C>,D>
qfac
Quotient pairs ring factory.
-
Constructor Summary
Constructors Modifier Constructor Description protected
FactorFraction()
No argument constructor.FactorFraction(QuotPairFactory<GenPolynomial<C>,D> fac)
Constructor.FactorFraction(QuotPairFactory<GenPolynomial<C>,D> fac, FactorAbstract<C> nengine)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.SortedMap<D,java.lang.Long>
factors(D P)
Quotient pair factorization.boolean
isFactorization(D P, java.util.SortedMap<D,java.lang.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.java.lang.String
toString()
Get the String representation.
-
-
-
Field Detail
-
qfac
protected final QuotPairFactory<GenPolynomial<C extends GcdRingElem<C>>,D extends GcdRingElem<D> & QuotPair<GenPolynomial<C>>> qfac
Quotient pairs ring factory. D == QuotPair<GenPolynomial<C>> must hold.
-
nengine
protected final FactorAbstract<C extends GcdRingElem<C>> nengine
Factorization engine for normal coefficients.
-
-
Constructor Detail
-
FactorFraction
protected FactorFraction()
No argument constructor.
-
FactorFraction
public FactorFraction(QuotPairFactory<GenPolynomial<C>,D> fac)
Constructor.- Parameters:
fac
- coefficient quotient ring factory.
-
FactorFraction
public FactorFraction(QuotPairFactory<GenPolynomial<C>,D> fac, FactorAbstract<C> nengine)
Constructor.- Parameters:
fac
- coefficient quotient ring factory.nengine
- factorization engine for polynomials over base coefficients.
-
-
Method Detail
-
toString
public java.lang.String toString()
Get the String representation.- Overrides:
toString
in classjava.lang.Object
- See Also:
Object.toString()
-
isIrreducible
public boolean isIrreducible(D P)
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
public boolean isReducible(D P)
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
public java.util.SortedMap<D,java.lang.Long> factors(D P)
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
public boolean isFactorization(D P, java.util.SortedMap<D,java.lang.Long> F)
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.
-
-