Package edu.jas.ufd
Class FactorComplex<C extends GcdRingElem<C>>
- java.lang.Object
-
- edu.jas.ufd.FactorAbstract<C>
-
- edu.jas.ufd.FactorAbsolute<Complex<C>>
-
- edu.jas.ufd.FactorComplex<C>
-
- Type Parameters:
C
- coefficient type
- All Implemented Interfaces:
Factorization<Complex<C>>
,java.io.Serializable
public class FactorComplex<C extends GcdRingElem<C>> extends FactorAbsolute<Complex<C>>
Complex coefficients factorization algorithms. This class implements factorization methods for polynomials over Complex numbers via the algebraic number C(i) over rational numbers or over (prime) modular integers. Note: Decomposition to linear factors is only via absolute factorization since Complex are not the analytic complex numbers.- Author:
- Heinz Kredel
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description AlgebraicNumberRing<C>
afac
Complex algebraic factory.FactorAbstract<AlgebraicNumber<C>>
factorAlgeb
Factorization engine for algebraic coefficients.-
Fields inherited from class edu.jas.ufd.FactorAbstract
engine, sengine
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
FactorComplex()
No argument constructor.FactorComplex(ComplexRing<C> fac)
Constructor.FactorComplex(ComplexRing<C> fac, FactorAbstract<AlgebraicNumber<C>> factorAlgeb)
Constructor.FactorComplex(RingFactory<Complex<C>> fac)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<GenPolynomial<Complex<C>>>
baseFactorsSquarefree(GenPolynomial<Complex<C>> P)
GenPolynomial base factorization of a squarefree polynomial.java.util.List<GenPolynomial<Complex<C>>>
factorsSquarefree(GenPolynomial<Complex<C>> P)
GenPolynomial factorization of a squarefree polynomial.-
Methods inherited from class edu.jas.ufd.FactorAbsolute
baseAlgebraicPartialFraction, baseAlgebraicPartialFractionIrreducibleAbsolute, baseFactorsAbsolute, baseFactorsAbsoluteIrreducible, baseFactorsAbsoluteSquarefree, factorsAbsolute, factorsAbsoluteIrreducible, factorsAbsoluteSquarefree, isAbsoluteFactorization, isAbsoluteFactorization, isAbsoluteFactorization, isAbsoluteIrreducible, toString
-
Methods inherited from class edu.jas.ufd.FactorAbstract
baseFactors, baseFactorsRadical, basePrimitivePart, factors, factorsDegree, factorsRadical, factorsRadical, factorsSquarefreeKronecker, factorsSquarefreeOptimize, isFactorization, isFactorization, isIrreducible, isRecursiveFactorization, isReducible, isSquarefree, normalizeFactorization, primitivePart, recursiveFactors, recursiveFactorsSquarefree, squarefreeFactors, squarefreePart
-
-
-
-
Field Detail
-
factorAlgeb
public final FactorAbstract<AlgebraicNumber<C extends GcdRingElem<C>>> factorAlgeb
Factorization engine for algebraic coefficients.
-
afac
public final AlgebraicNumberRing<C extends GcdRingElem<C>> afac
Complex algebraic factory.
-
-
Constructor Detail
-
FactorComplex
protected FactorComplex()
No argument constructor. Note: can't use this constructor.
-
FactorComplex
public FactorComplex(RingFactory<Complex<C>> fac)
Constructor.- Parameters:
fac
- complex number factory.
-
FactorComplex
public FactorComplex(ComplexRing<C> fac)
Constructor.- Parameters:
fac
- complex number factory.
-
FactorComplex
public FactorComplex(ComplexRing<C> fac, FactorAbstract<AlgebraicNumber<C>> factorAlgeb)
Constructor.- Parameters:
fac
- complex number factory.factorAlgeb
- factorization engine for polynomials over algebraic coefficients.
-
-
Method Detail
-
baseFactorsSquarefree
public java.util.List<GenPolynomial<Complex<C>>> baseFactorsSquarefree(GenPolynomial<Complex<C>> P)
GenPolynomial base factorization of a squarefree polynomial.- Specified by:
baseFactorsSquarefree
in classFactorAbstract<Complex<C extends GcdRingElem<C>>>
- Parameters:
P
- squarefree GenPolynomial<AlgebraicNumber<C>>.- Returns:
- [p_1,...,p_k] with P = prod_{i=1, ..., k} p_i.
-
factorsSquarefree
public java.util.List<GenPolynomial<Complex<C>>> factorsSquarefree(GenPolynomial<Complex<C>> P)
GenPolynomial factorization of a squarefree polynomial.- Specified by:
factorsSquarefree
in interfaceFactorization<C extends GcdRingElem<C>>
- Overrides:
factorsSquarefree
in classFactorAbstract<Complex<C extends GcdRingElem<C>>>
- Parameters:
P
- squarefree GenPolynomial<AlgebraicNumber<C>>.- Returns:
- [p_1,...,p_k] with P = prod_{i=1, ..., k} p_i.
-
-