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

java.lang.Object
  extended by edu.jas.application.CReductionSeq<C>
Type Parameters:
C - coefficient type

public class CReductionSeq<C extends GcdRingElem<C>>
extends java.lang.Object

Polynomial parametric ring reduction sequential use algorithm. Implements normalform, condition construction and polynomial determination.

Author:
Heinz Kredel

Field Summary
protected  RingFactory<C> cofac
          Polynomial coefficient ring factory.
protected  GreatestCommonDivisor<C> engine
          Greatest common divisor engine.
protected  boolean top
          Flag if top-reduction only should be used.
 
Constructor Summary
CReductionSeq(RingFactory<C> rf)
          Constructor.
 
Method Summary
 java.util.List<Condition<C>> caseDistinction(Condition<C> cond, GenPolynomial<GenPolynomial<C>> A)
          Case distinction conditions of parametric polynomial list.
 java.util.List<Condition<C>> caseDistinction(java.util.List<Condition<C>> cd, GenPolynomial<GenPolynomial<C>> A)
          Case distinction conditions of parametric polynomial list.
 java.util.List<Condition<C>> caseDistinction(java.util.List<GenPolynomial<GenPolynomial<C>>> L)
          Case distinction conditions of parametric polynomial list.
 java.util.List<ColoredSystem<C>> determine(java.util.List<Condition<C>> cd, java.util.List<GenPolynomial<GenPolynomial<C>>> H)
          Determine polynomial list.
 java.util.List<ColoredSystem<C>> determine(java.util.List<GenPolynomial<GenPolynomial<C>>> H)
          Determine polynomial list.
 boolean isNormalform(java.util.List<ColorPolynomial<C>> Pp)
          Is in Normalform.
 boolean isNormalform(java.util.List<ColorPolynomial<C>> Pp, ColorPolynomial<C> Ap)
          Is in Normalform.
 boolean isReducible(java.util.List<ColorPolynomial<C>> Pp, ColorPolynomial<C> Ap)
          Is reducible.
 boolean isTopReducible(java.util.List<ColorPolynomial<C>> P, ColorPolynomial<C> A)
          Is top reducible.
 ColorPolynomial<C> normalform(Condition<C> cond, java.util.List<ColorPolynomial<C>> Pp, ColorPolynomial<C> Ap)
          Normalform.
 ColorPolynomial<C> SPolynomial(ColorPolynomial<C> Ap, ColorPolynomial<C> Bp)
          S-Polynomial.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

engine

protected final GreatestCommonDivisor<C extends GcdRingElem<C>> engine
Greatest common divisor engine.


cofac

protected final RingFactory<C extends GcdRingElem<C>> cofac
Polynomial coefficient ring factory.


top

protected boolean top
Flag if top-reduction only should be used.

Constructor Detail

CReductionSeq

public CReductionSeq(RingFactory<C> rf)
Constructor.

Parameters:
rf - coefficient factory.
Method Detail

SPolynomial

public ColorPolynomial<C> SPolynomial(ColorPolynomial<C> Ap,
                                      ColorPolynomial<C> Bp)
S-Polynomial.

Parameters:
Ap - polynomial.
Bp - polynomial.
Returns:
spol(Ap,Bp) the S-polynomial of Ap and Bp.

isTopReducible

public boolean isTopReducible(java.util.List<ColorPolynomial<C>> P,
                              ColorPolynomial<C> A)
Is top reducible.

Parameters:
A - polynomial.
P - polynomial list.
Returns:
true if A is top reducible with respect to P.

isReducible

public boolean isReducible(java.util.List<ColorPolynomial<C>> Pp,
                           ColorPolynomial<C> Ap)
Is reducible.

Parameters:
Ap - polynomial.
Pp - polynomial list.
Returns:
true if Ap is reducible with respect to Pp.

isNormalform

public boolean isNormalform(java.util.List<ColorPolynomial<C>> Pp,
                            ColorPolynomial<C> Ap)
Is in Normalform.

Parameters:
Ap - polynomial.
Pp - polynomial list.
Returns:
true if Ap is in normalform with respect to Pp.

isNormalform

public boolean isNormalform(java.util.List<ColorPolynomial<C>> Pp)
Is in Normalform.

Parameters:
Pp - polynomial list.
Returns:
true if each Ap in Pp is in normalform with respect to Pp\{Ap}.

normalform

public ColorPolynomial<C> normalform(Condition<C> cond,
                                     java.util.List<ColorPolynomial<C>> Pp,
                                     ColorPolynomial<C> Ap)
Normalform.

Parameters:
Ap - polynomial.
Pp - polynomial list.
cond - condition for these polynomials.
Returns:
nf(Ap) with respect to Pp.

caseDistinction

public java.util.List<Condition<C>> caseDistinction(java.util.List<GenPolynomial<GenPolynomial<C>>> L)
Case distinction conditions of parametric polynomial list. The returned condition determines the polynomial list.

Parameters:
L - list of parametric polynomials.
Returns:
list of conditions as case distinction.

caseDistinction

public java.util.List<Condition<C>> caseDistinction(java.util.List<Condition<C>> cd,
                                                    GenPolynomial<GenPolynomial<C>> A)
Case distinction conditions of parametric polynomial list.

Parameters:
cd - a list of conditions.
A - a parametric polynomial.
Returns:
list of conditions as case distinction extending the conditions in cd.

caseDistinction

public java.util.List<Condition<C>> caseDistinction(Condition<C> cond,
                                                    GenPolynomial<GenPolynomial<C>> A)
Case distinction conditions of parametric polynomial list.

Parameters:
A - a parametric polynomial.
cond - a condition.
Returns:
list of case distinction conditions.

determine

public java.util.List<ColoredSystem<C>> determine(java.util.List<GenPolynomial<GenPolynomial<C>>> H)
Determine polynomial list.

Parameters:
H - polynomial list.
Returns:
new determined list of colored systems.

determine

public java.util.List<ColoredSystem<C>> determine(java.util.List<Condition<C>> cd,
                                                  java.util.List<GenPolynomial<GenPolynomial<C>>> H)
Determine polynomial list.

Parameters:
H - polynomial list.
cd - case distiction, a condition list.
Returns:
new determined list of colored systems.