Package edu.jas.ufd
Interface Squarefree<C extends GcdRingElem<C>>
-
- All Superinterfaces:
java.io.Serializable
- All Known Implementing Classes:
SquarefreeAbstract,SquarefreeFieldChar0,SquarefreeFieldChar0Yun,SquarefreeFieldCharP,SquarefreeFiniteFieldCharP,SquarefreeInfiniteAlgebraicFieldCharP,SquarefreeInfiniteFieldCharP,SquarefreeRingChar0
public interface Squarefree<C extends GcdRingElem<C>> extends java.io.Serializable
Squarefree decomposition interface.Usage: To create objects that implement the
Squarefreeinterface use theSquarefreeFactory. It will select an appropriate implementation based on the types of polynomial coefficients C. To obtain an implementation usegetImplementation(), it returns an object of a class which extends theSquarefreeAbstractclass which implements theSquarefreeinterface.Squarefree<CT> engine; engine = SquarefreeFactory.<CT> getImplementation(cofac); c = engine.squarefreeFactors(a);
For example, if the coefficient type is BigInteger, the usage looks like
BigInteger cofac = new BigInteger(); Squarefree<BigInteger> engine; engine = SquarefreeFactory.getImplementation(cofac); Sm = engine.sqaurefreeFactors(poly);
- Author:
- Heinz Kredel
- See Also:
SquarefreeFactory.getImplementation(edu.jas.arith.ModIntegerRing)
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.List<GenPolynomial<C>>coPrimeSquarefree(GenPolynomial<C> a, java.util.List<GenPolynomial<C>> P)GenPolynomial squarefree and co-prime list.java.util.List<GenPolynomial<C>>coPrimeSquarefree(java.util.List<GenPolynomial<C>> A)GenPolynomial squarefree and co-prime list.booleanisCoPrimeSquarefree(java.util.List<GenPolynomial<C>> B)Test if list of GenPolynomials is squarefree and co-prime.booleanisFactorization(GenPolynomial<C> P, java.util.List<GenPolynomial<C>> F)GenPolynomial is (squarefree) factorization.booleanisFactorization(GenPolynomial<C> P, java.util.SortedMap<GenPolynomial<C>,java.lang.Long> F)GenPolynomial is (squarefree) factorization.booleanisSquarefree(GenPolynomial<C> P)GenPolynomial test if is squarefree.booleanisSquarefree(java.util.List<GenPolynomial<C>> L)GenPolynomial list test if squarefree.java.util.SortedMap<GenPolynomial<C>,java.lang.Long>squarefreeFactors(GenPolynomial<C> P)GenPolynomial squarefree factorization.GenPolynomial<C>squarefreePart(GenPolynomial<C> P)GenPolynomial greatest squarefree divisor.
-
-
-
Method Detail
-
squarefreePart
GenPolynomial<C> squarefreePart(GenPolynomial<C> P)
GenPolynomial greatest squarefree divisor.- Parameters:
P- GenPolynomial.- Returns:
- squarefree(pp(P)).
-
isSquarefree
boolean isSquarefree(GenPolynomial<C> P)
GenPolynomial test if is squarefree.- Parameters:
P- GenPolynomial.- Returns:
- true if P is squarefree, else false.
-
isSquarefree
boolean isSquarefree(java.util.List<GenPolynomial<C>> L)
GenPolynomial list test if squarefree.- Parameters:
L- list of GenPolynomial.- Returns:
- true if each P in L is squarefree, else false.
-
squarefreeFactors
java.util.SortedMap<GenPolynomial<C>,java.lang.Long> squarefreeFactors(GenPolynomial<C> P)
GenPolynomial squarefree factorization.- Parameters:
P- GenPolynomial.- Returns:
- [p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i^{e_i} and p_i squarefree.
-
isFactorization
boolean isFactorization(GenPolynomial<C> P, java.util.List<GenPolynomial<C>> F)
GenPolynomial is (squarefree) factorization.- Parameters:
P- GenPolynomial.F- = [p_1,...,p_k].- Returns:
- true if P = prod_{i=1,...,r} p_i, else false.
-
isFactorization
boolean isFactorization(GenPolynomial<C> P, java.util.SortedMap<GenPolynomial<C>,java.lang.Long> F)
GenPolynomial is (squarefree) factorization.- Parameters:
P- GenPolynomial.F- = [p_1 -> e_1, ..., p_k -> e_k].- Returns:
- true if P = prod_{i=1,...,k} p_i**e_i, else false.
-
coPrimeSquarefree
java.util.List<GenPolynomial<C>> coPrimeSquarefree(java.util.List<GenPolynomial<C>> A)
GenPolynomial squarefree and co-prime list.- Parameters:
A- list of GenPolynomials.- Returns:
- B with gcd(b,c) = 1 for all b != c in B and for all non-constant a in A there exists b in B with b|a and each b in B is squarefree. B does not contain zero or constant polynomials.
-
coPrimeSquarefree
java.util.List<GenPolynomial<C>> coPrimeSquarefree(GenPolynomial<C> a, java.util.List<GenPolynomial<C>> P)
GenPolynomial squarefree and co-prime list.- Parameters:
a- polynomial.P- squarefree co-prime list of GenPolynomials.- Returns:
- B with gcd(b,c) = 1 for all b != c in B and for non-constant a there exists b in P with b|a. B does not contain zero or constant polynomials.
-
isCoPrimeSquarefree
boolean isCoPrimeSquarefree(java.util.List<GenPolynomial<C>> B)
Test if list of GenPolynomials is squarefree and co-prime.- Parameters:
B- list of GenPolynomials.- Returns:
- true, if for all b != c in B gcd(b,c) = 1 and each b in B is squarefree, else false.
-
-