edu.jas.ufd
Class SquarefreeFieldChar0<C extends GcdRingElem<C>>

java.lang.Object
  extended by edu.jas.ufd.SquarefreeAbstract<C>
      extended by edu.jas.ufd.SquarefreeFieldChar0<C>
All Implemented Interfaces:
Squarefree<C>

public class SquarefreeFieldChar0<C extends GcdRingElem<C>>
extends SquarefreeAbstract<C>

Squarefree decomposition for coefficient fields of characteristic 0.

Author:
Heinz Kredel

Field Summary
protected  RingFactory<C> coFac
          Factory for field of characteristic 0 coefficients.
 
Fields inherited from class edu.jas.ufd.SquarefreeAbstract
engine
 
Constructor Summary
SquarefreeFieldChar0(RingFactory<C> fac)
          Constructor.
 
Method Summary
 java.util.SortedMap<GenPolynomial<C>,java.lang.Long> baseSquarefreeFactors(GenPolynomial<C> A)
          GenPolynomial polynomial squarefree factorization.
 GenPolynomial<C> baseSquarefreePart(GenPolynomial<C> P)
          GenPolynomial polynomial greatest squarefree divisor.
 boolean isBaseSquarefree(GenPolynomial<C> P)
          GenPolynomial test if is squarefree.
 boolean isRecursiveUnivariateSquarefree(GenPolynomial<GenPolynomial<C>> P)
          GenPolynomial test if is squarefree.
 boolean isSquarefree(GenPolynomial<C> P)
          GenPolynomial test if is squarefree.
 java.util.SortedMap<GenPolynomial<GenPolynomial<C>>,java.lang.Long> recursiveUnivariateSquarefreeFactors(GenPolynomial<GenPolynomial<C>> P)
          GenPolynomial recursive univariate polynomial squarefree factorization.
 GenPolynomial<GenPolynomial<C>> recursiveUnivariateSquarefreePart(GenPolynomial<GenPolynomial<C>> P)
          GenPolynomial recursive univariate polynomial greatest squarefree divisor.
 java.util.SortedMap<C,java.lang.Long> squarefreeFactors(C P)
          Coefficients squarefree factorization.
 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.
 java.lang.String toString()
          Get the String representation.
 
Methods inherited from class edu.jas.ufd.SquarefreeAbstract
basePartialFraction, coPrimeSquarefree, coPrimeSquarefree, factorCount, isBasePartialFraction, isCoPrimeSquarefree, isFactorization, isFactorization, isRecursiveFactorization, isRecursiveSquarefree, isSquarefree, recursiveSquarefreeFactors, recursiveSquarefreePart, squarefreePart
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

coFac

protected final RingFactory<C extends GcdRingElem<C>> coFac
Factory for field of characteristic 0 coefficients.

Constructor Detail

SquarefreeFieldChar0

public SquarefreeFieldChar0(RingFactory<C> fac)
Constructor.

Method Detail

toString

public java.lang.String toString()
Get the String representation.

Overrides:
toString in class java.lang.Object
See Also:
Object.toString()

baseSquarefreePart

public GenPolynomial<C> baseSquarefreePart(GenPolynomial<C> P)
GenPolynomial polynomial greatest squarefree divisor.

Specified by:
baseSquarefreePart in class SquarefreeAbstract<C extends GcdRingElem<C>>
Parameters:
P - GenPolynomial.
Returns:
squarefree(pp(P)).

isBaseSquarefree

public boolean isBaseSquarefree(GenPolynomial<C> P)
GenPolynomial test if is squarefree.

Parameters:
P - GenPolynomial.
Returns:
true if P is squarefree, else false.

baseSquarefreeFactors

public java.util.SortedMap<GenPolynomial<C>,java.lang.Long> baseSquarefreeFactors(GenPolynomial<C> A)
GenPolynomial polynomial squarefree factorization.

Specified by:
baseSquarefreeFactors in class SquarefreeAbstract<C extends GcdRingElem<C>>
Parameters:
A - GenPolynomial.
Returns:
[p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i^{e_i} and p_i squarefree.

recursiveUnivariateSquarefreePart

public GenPolynomial<GenPolynomial<C>> recursiveUnivariateSquarefreePart(GenPolynomial<GenPolynomial<C>> P)
GenPolynomial recursive univariate polynomial greatest squarefree divisor.

Specified by:
recursiveUnivariateSquarefreePart in class SquarefreeAbstract<C extends GcdRingElem<C>>
Parameters:
P - recursive univariate GenPolynomial.
Returns:
squarefree(pp(P)).

isRecursiveUnivariateSquarefree

public boolean isRecursiveUnivariateSquarefree(GenPolynomial<GenPolynomial<C>> P)
GenPolynomial test if is squarefree.

Parameters:
P - GenPolynomial.
Returns:
true if P is squarefree, else false.

recursiveUnivariateSquarefreeFactors

public java.util.SortedMap<GenPolynomial<GenPolynomial<C>>,java.lang.Long> recursiveUnivariateSquarefreeFactors(GenPolynomial<GenPolynomial<C>> P)
GenPolynomial recursive univariate polynomial squarefree factorization.

Specified by:
recursiveUnivariateSquarefreeFactors in class SquarefreeAbstract<C extends GcdRingElem<C>>
Parameters:
P - recursive univariate GenPolynomial.
Returns:
[p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i^{e_i} and p_i squarefree.

squarefreePart

public GenPolynomial<C> squarefreePart(GenPolynomial<C> P)
GenPolynomial greatest squarefree divisor.

Specified by:
squarefreePart in interface Squarefree<C extends GcdRingElem<C>>
Specified by:
squarefreePart in class SquarefreeAbstract<C extends GcdRingElem<C>>
Parameters:
P - GenPolynomial.
Returns:
squarefree(pp(P)).

isSquarefree

public boolean isSquarefree(GenPolynomial<C> P)
GenPolynomial test if is squarefree.

Specified by:
isSquarefree in interface Squarefree<C extends GcdRingElem<C>>
Overrides:
isSquarefree in class SquarefreeAbstract<C extends GcdRingElem<C>>
Parameters:
P - GenPolynomial.
Returns:
true if P is squarefree, else false.

squarefreeFactors

public java.util.SortedMap<GenPolynomial<C>,java.lang.Long> squarefreeFactors(GenPolynomial<C> P)
GenPolynomial squarefree factorization.

Specified by:
squarefreeFactors in interface Squarefree<C extends GcdRingElem<C>>
Specified by:
squarefreeFactors in class SquarefreeAbstract<C extends GcdRingElem<C>>
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.

squarefreeFactors

public java.util.SortedMap<C,java.lang.Long> squarefreeFactors(C P)
Coefficients squarefree factorization.

Specified by:
squarefreeFactors in class SquarefreeAbstract<C extends GcdRingElem<C>>
Parameters:
P - coefficient.
Returns:
[p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i^{e_i} and p_i squarefree.