edu.jas.application
Class Condition<C extends GcdRingElem<C>>

java.lang.Object
  extended by edu.jas.application.Condition<C>
Type Parameters:
C - coefficient type
All Implemented Interfaces:
java.io.Serializable

public class Condition<C extends GcdRingElem<C>>
extends java.lang.Object
implements java.io.Serializable

Condition. An ideal of polynomials considered to be zero and a multiplicative set of polynomials considered to be non-zero.

Author:
Heinz Kredel.
See Also:
Serialized Form

Nested Class Summary
static class Condition.Color
          Colors.
 
Field Summary
 MultiplicativeSet<C> nonZero
          Data structure for condition non-zero.
 Ideal<C> zero
          Data structure for condition zero.
 
Constructor Summary
Condition(GenPolynomialRing<C> ring)
          Condition constructor.
Condition(Ideal<C> z)
          Condition constructor.
Condition(Ideal<C> z, MultiplicativeSet<C> nz)
          Condition constructor.
Condition(MultiplicativeSet<C> nz)
          Condition constructor.
 
Method Summary
 Condition.Color color(GenPolynomial<C> c)
          Determine color of polynomial.
 ColorPolynomial<C> determine(GenPolynomial<GenPolynomial<C>> A)
          Determine polynomial.
 java.util.List<ColorPolynomial<C>> determine(java.util.List<GenPolynomial<GenPolynomial<C>>> L)
          Determine list of polynomials.
 boolean equals(java.lang.Object ob)
          equals.
 Condition<C> extendNonZero(GenPolynomial<C> nz)
          Extend condition with non-zero polynomial.
 Condition<C> extendZero(GenPolynomial<C> z)
          Extend condition with zero polynomial.
 int hashCode()
          Hash code for this condition.
 boolean isContradictory()
          Is contradictory.
 boolean isDetermined(ColorPolynomial<C> s)
          Is determined colored polynomial.
 boolean isDetermined(java.util.List<ColorPolynomial<C>> S)
          Is determined list of colored polynomial.
 boolean isEmpty()
          Is empty condition.
 ColorPolynomial<C> reDetermine(ColorPolynomial<C> s)
          Re determine colored polynomial.
 java.util.List<ColorPolynomial<C>> reDetermine(java.util.List<ColorPolynomial<C>> S)
          Re determine list of colored polynomials.
 Condition<C> simplify()
          Simplify zero and non-zero polynomial conditions.
 java.lang.String toString()
          toString.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

zero

public final Ideal<C extends GcdRingElem<C>> zero
Data structure for condition zero.


nonZero

public final MultiplicativeSet<C extends GcdRingElem<C>> nonZero
Data structure for condition non-zero.

Constructor Detail

Condition

public Condition(GenPolynomialRing<C> ring)
Condition constructor. Constructs an empty condition with squarefree multiplicative set.

Parameters:
ring - polynomial ring factory for coefficients.

Condition

public Condition(Ideal<C> z)
Condition constructor. Constructs a condition with squarefree multiplicative set.

Parameters:
z - an ideal of zero polynomials.

Condition

public Condition(MultiplicativeSet<C> nz)
Condition constructor.

Parameters:
nz - a list of non-zero polynomials.

Condition

public Condition(Ideal<C> z,
                 MultiplicativeSet<C> nz)
Condition constructor.

Parameters:
z - an ideal of zero polynomials.
nz - a list of non-zero polynomials.
Method Detail

toString

public java.lang.String toString()
toString.

Overrides:
toString in class java.lang.Object
See Also:
Object.toString()

equals

public boolean equals(java.lang.Object ob)
equals.

Overrides:
equals in class java.lang.Object
Parameters:
ob - an Object.
Returns:
true if this is equal to o, else false.

hashCode

public int hashCode()
Hash code for this condition.

Overrides:
hashCode in class java.lang.Object
See Also:
Object.hashCode()

isEmpty

public boolean isEmpty()
Is empty condition.

Returns:
true if this is the empty condition, else false.

isContradictory

public boolean isContradictory()
Is contradictory.

Returns:
true if this condition is contradictory, else false.

extendZero

public Condition<C> extendZero(GenPolynomial<C> z)
Extend condition with zero polynomial.

Parameters:
z - a polynomial to be treated as zero.
Returns:
new condition.

extendNonZero

public Condition<C> extendNonZero(GenPolynomial<C> nz)
Extend condition with non-zero polynomial.

Parameters:
nz - a polynomial to be treated as non-zero.
Returns:
new condition.

simplify

public Condition<C> simplify()
Simplify zero and non-zero polynomial conditions.

Returns:
new simplified condition.

color

public Condition.Color color(GenPolynomial<C> c)
Determine color of polynomial.

Parameters:
c - polynomial to be colored.
Returns:
color of c.

determine

public ColorPolynomial<C> determine(GenPolynomial<GenPolynomial<C>> A)
Determine polynomial. If this condition does not determine the polynomial, then a run-time exception is thrown.

Parameters:
A - polynomial.
Returns:
new determined colored polynomial.

determine

public java.util.List<ColorPolynomial<C>> determine(java.util.List<GenPolynomial<GenPolynomial<C>>> L)
Determine list of polynomials. If this condition does not determine all polynomials, then a run-time exception is thrown. The returned list does not contain polynomials with all green terms.

Parameters:
L - list of polynomial.
Returns:
new determined list of colored polynomials.

reDetermine

public ColorPolynomial<C> reDetermine(ColorPolynomial<C> s)
Re determine colored polynomial.

Parameters:
s - colored polynomial.
Returns:
determined colored polynomial wrt. this.conditions.

reDetermine

public java.util.List<ColorPolynomial<C>> reDetermine(java.util.List<ColorPolynomial<C>> S)
Re determine list of colored polynomials.

Parameters:
S - list of colored polynomials.
Returns:
list of determined colored polynomials wrt. this.conditions.

isDetermined

public boolean isDetermined(ColorPolynomial<C> s)
Is determined colored polynomial.

Parameters:
s - colored polynomial.
Returns:
true if the colored polynomial is correctly determined wrt. this.condition.

isDetermined

public boolean isDetermined(java.util.List<ColorPolynomial<C>> S)
Is determined list of colored polynomial.

Parameters:
S - list of colored polynomials.
Returns:
true if the colored polynomials in S are correctly determined wrt. this.condition.