Package edu.jas.gbufd
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.Logger
final List
<GenPolynomial<C>> Data structure.final GenPolynomialRing
<C> Polynomial ring factory. -
Constructor Summary
ConstructorsModifierConstructorDescriptionMultiplicativeSet
(GenPolynomialRing<C> ring) MultiplicativeSet constructor.protected
MultiplicativeSet
(GenPolynomialRing<C> ring, List<GenPolynomial<C>> ms) MultiplicativeSet constructor. -
Method Summary
Modifier and TypeMethodDescriptionadd
(GenPolynomial<C> cc) Add polynomial to mset.boolean
contains
(GenPolynomial<C> c) Test if a polynomial is contained in this multiplicative set.boolean
contains
(List<GenPolynomial<C>> L) Test if a list of polynomials is contained in multiplicative set.boolean
Equals.int
hashCode()
Hash code for this condition.boolean
isEmpty()
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
toString. -
equals
Equals. -
hashCode
public int hashCode()Hash code for this condition. -
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.
-