Factorization
edu.jas.ufd

## Interface Factorization<C extends GcdRingElem<C>>

• ### Method Summary

Methods
Modifier and TypeMethod and Description
`SortedMap<GenPolynomial<C>,Long>``factors(GenPolynomial<C> P)`
GenPolynomial factorization.
`List<GenPolynomial<C>>``factorsRadical(GenPolynomial<C> P)`
GenPolynomial factorization ignoring multiplicities.
`List<GenPolynomial<C>>``factorsSquarefree(GenPolynomial<C> P)`
GenPolynomial factorization of a squarefree polynomial.
`boolean``isFactorization(GenPolynomial<C> P, List<GenPolynomial<C>> F)`
GenPolynomial is factorization.
`boolean``isFactorization(GenPolynomial<C> P, SortedMap<GenPolynomial<C>,Long> F)`
GenPolynomial is factorization.
`boolean``isIrreducible(GenPolynomial<C> P)`
GenPolynomial test if is irreducible.
`boolean``isReducible(GenPolynomial<C> P)`
GenPolynomial test if a non trivial factorization exsists.
`boolean``isSquarefree(GenPolynomial<C> P)`
GenPolynomial test if is squarefree.
`SortedMap<GenPolynomial<C>,Long>``squarefreeFactors(GenPolynomial<C> P)`
GenPolynomial squarefree factorization.
`GenPolynomial<C>``squarefreePart(GenPolynomial<C> P)`
GenPolynomial greatest squarefree divisor.
• ### Method Detail

• #### isIrreducible

`boolean isIrreducible(GenPolynomial<C> P)`
GenPolynomial test if is irreducible.
Parameters:
`P` - GenPolynomial.
Returns:
true if P is irreducible, else false.
• #### isReducible

`boolean isReducible(GenPolynomial<C> P)`
GenPolynomial test if a non trivial factorization exsists.
Parameters:
`P` - GenPolynomial.
Returns:
true if P is reducible, else false.
• #### isSquarefree

`boolean isSquarefree(GenPolynomial<C> P)`
GenPolynomial test if is squarefree.
Parameters:
`P` - GenPolynomial.
Returns:
true if P is squarefree, else false.

`List<GenPolynomial<C>> factorsSquarefree(GenPolynomial<C> P)`
GenPolynomial factorization of a squarefree polynomial.
Parameters:
`P` - squarefree and primitive! or monic! GenPolynomial.
Returns:
[p_1,...,p_k] with P = prod_{i=1,...,r} p_i.
• #### factors

`SortedMap<GenPolynomial<C>,Long> factors(GenPolynomial<C> P)`
GenPolynomial factorization.
Parameters:
`P` - GenPolynomial.
Returns:
[p_1 -> e_1, ..., p_k -> e_k] with P = prod_{i=1,...,k} p_i**e_i.

`List<GenPolynomial<C>> factorsRadical(GenPolynomial<C> P)`
GenPolynomial factorization ignoring multiplicities.
Parameters:
`P` - GenPolynomial.
Returns:
[p_1, ..., p_k] with P = prod_{i=1,...,k} p_i**{e_i} for some e_i.
• #### squarefreePart

`GenPolynomial<C> squarefreePart(GenPolynomial<C> P)`
GenPolynomial greatest squarefree divisor.
Parameters:
`P` - GenPolynomial.
Returns:
squarefree(P).
• #### squarefreeFactors

`SortedMap<GenPolynomial<C>,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,                      List<GenPolynomial<C>> F)`
GenPolynomial is 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,                      SortedMap<GenPolynomial<C>,Long> F)`
GenPolynomial is 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.