Package edu.jas.ufd
Class Factors<C extends GcdRingElem<C>>
java.lang.Object
edu.jas.ufd.Factors<C>
- Type Parameters:
C
- coefficient type
- All Implemented Interfaces:
Serializable
,Comparable<Factors<C>>
public class Factors<C extends GcdRingElem<C>>
extends Object
implements Comparable<Factors<C>>, Serializable
Container for the factors of absolute factorization.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionfinal AlgebraicNumberRing
<C> Algebraic field extension over C.final List
<GenPolynomial<AlgebraicNumber<C>>> List of factors with coefficients from AlgebraicNumberRing<C>.final GenPolynomial
<AlgebraicNumber<C>> Original polynomial to be factored with coefficients from AlgebraicNumberRing<C>.final List
<Factors<AlgebraicNumber<C>>> List of factors with coefficients from AlgebraicNumberRing<AlgebraicNumber<C>>.final GenPolynomial
<C> Original (irreducible) polynomial to be factored with coefficients from C. -
Constructor Summary
ConstructorsConstructorDescriptionFactors
(GenPolynomial<C> p) Constructor.Factors
(GenPolynomial<C> p, AlgebraicNumberRing<C> af, GenPolynomial<AlgebraicNumber<C>> ap, List<GenPolynomial<AlgebraicNumber<C>>> afact) Constructor.Factors
(GenPolynomial<C> p, AlgebraicNumberRing<C> af, GenPolynomial<AlgebraicNumber<C>> ap, List<GenPolynomial<AlgebraicNumber<C>>> afact, List<Factors<AlgebraicNumber<C>>> arfact) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionint
Comparison.boolean
Comparison with any other object.Find largest extension field.Get the factor for polynomial.Get the list of factors at one level.int
hashCode()
Hash code for this Factors.int
length()
Length.toScript()
Get a scripting compatible string representation.toString()
Get the String representation.
-
Field Details
-
poly
Original (irreducible) polynomial to be factored with coefficients from C. -
afac
Algebraic field extension over C. Should be null, if p is absolutely irreducible. -
apoly
Original polynomial to be factored with coefficients from AlgebraicNumberRing<C>. Should be null, if p is absolutely irreducible. -
afactors
List of factors with coefficients from AlgebraicNumberRing<C>. Should be null, if p is absolutely irreducible. -
arfactors
List of factors with coefficients from AlgebraicNumberRing<AlgebraicNumber<C>>. Should be null, if p is absolutely irreducible.
-
-
Constructor Details
-
Factors
Constructor.- Parameters:
p
- absolute irreducible GenPolynomial.
-
Factors
public Factors(GenPolynomial<C> p, AlgebraicNumberRing<C> af, GenPolynomial<AlgebraicNumber<C>> ap, List<GenPolynomial<AlgebraicNumber<C>>> afact) Constructor.- Parameters:
p
- irreducible GenPolynomial over C.af
- algebraic extension field of C where p has factors from afact.ap
- GenPolynomial p represented with coefficients from af.afact
- absolute irreducible factors of p with coefficients from af.
-
Factors
public Factors(GenPolynomial<C> p, AlgebraicNumberRing<C> af, GenPolynomial<AlgebraicNumber<C>> ap, List<GenPolynomial<AlgebraicNumber<C>>> afact, List<Factors<AlgebraicNumber<C>>> arfact) Constructor.- Parameters:
p
- irreducible GenPolynomial over C.af
- algebraic extension field of C where p has factors from afact.ap
- GenPolynomial p represented with coefficients from af.afact
- absolute irreducible factors of p with coefficients from af.arfact
- further absolute irreducible factors of p with coefficients from extensions of af.
-
-
Method Details
-
toString
Get the String representation. -
toScript
Get a scripting compatible string representation.- Returns:
- script compatible representation for this container.
- See Also:
-
length
public int length()Length. Number of factors.- Returns:
- number of factors.
-
hashCode
public int hashCode()Hash code for this Factors. -
equals
Comparison with any other object. -
compareTo
Comparison.- Specified by:
compareTo
in interfaceComparable<C extends GcdRingElem<C>>
- Parameters:
facs
- factors container.- Returns:
- sign(this.poly-facs.poly) lexicographic > sign(afac.modul-facs.afac.modul) lexicographic > afactors.compareTo(facs.afactors) lexicographic > arfactors[i].compareTo(facs.arfactors[i])
-
findExtensionField
Find largest extension field.- Returns:
- largest extension field or null if no extension field
-
getFactors
Get the list of factors at one level.- Returns:
- list of algebraic factors
-
getFactor
Get the factor for polynomial.- Returns:
- algebraic factor
-