Class MultiplicativeSet<C extends GcdRingElem<C>>
java.lang.Object
edu.jas.gbufd.MultiplicativeSet<C>
- Type Parameters:
C- coefficient type
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
MultiplicativeSetCoPrime, MultiplicativeSetFactors, MultiplicativeSetSquarefree
Multiplicative set of polynomials. a, b in M implies a*b in M, 1 in M.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.apache.logging.log4j.Loggerfinal List<GenPolynomial<C>> Data structure.final GenPolynomialRing<C> Polynomial ring factory. -
Constructor Summary
ConstructorsModifierConstructorDescriptionMultiplicativeSet(GenPolynomialRing<C> ring) MultiplicativeSet constructor.protectedMultiplicativeSet(GenPolynomialRing<C> ring, List<GenPolynomial<C>> ms) MultiplicativeSet constructor. -
Method Summary
Modifier and TypeMethodDescriptionadd(GenPolynomial<C> cc) Add polynomial to mset.booleancontains(GenPolynomial<C> c) Test if a polynomial is contained in this multiplicative set.booleancontains(List<GenPolynomial<C>> L) Test if a list of polynomials is contained in multiplicative set.booleanEquals.inthashCode()Hash code for this condition.booleanisEmpty()Is set.removeFactors(GenPolynomial<C> cc) Remove factors by mset factors division.removeFactors(List<GenPolynomial<C>> L) Remove factors by mset factors division.replace(List<GenPolynomial<C>> L) Replace polynomial list of mset.toString()toString.
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
mset
Data structure. -
ring
Polynomial ring factory.
-
-
Constructor Details
-
MultiplicativeSet
MultiplicativeSet constructor. Constructs an empty multiplicative set.- Parameters:
ring- polynomial ring factory for coefficients.
-
MultiplicativeSet
MultiplicativeSet constructor.- Parameters:
ring- polynomial ring factory for coefficients.ms- a list of non-zero polynomials.
-
-
Method Details
-
toString
-
equals
-
hashCode
-
isEmpty
public boolean isEmpty()Is set.- Returns:
- true if this is the empty set, else false.
-
contains
Test if a polynomial is contained in this multiplicative set.- Parameters:
c- polynomial searched in mset.- Returns:
- true, if c = prod_{m in mset} m, else false
-
contains
Test if a list of polynomials is contained in multiplicative set.- Parameters:
L- list of polynomials to be searched in mset.- Returns:
- true, if all c in L are in mset, else false
-
add
Add polynomial to mset.- Parameters:
cc- polynomial to be added to mset.- Returns:
- new multiplicative set. Note: must be overridden in sub-classes.
-
replace
Replace polynomial list of mset.- Parameters:
L- polynomial list to replace mset.- Returns:
- new multiplicative set. Note: must be overridden in sub-classes.
-
removeFactors
Remove factors by mset factors division.- Parameters:
cc- polynomial to be removed factors from mset.- Returns:
- quotient polynomial.
-
removeFactors
Remove factors by mset factors division.- Parameters:
L- list of polynomial to be removed factors from mset.- Returns:
- quotient polynomial list.
-