Package edu.jas.gb
Class SolvableReductionAbstract<C extends RingElem<C>>
- java.lang.Object
-
- edu.jas.gb.SolvableReductionAbstract<C>
-
- Type Parameters:
C- coefficient type
- All Implemented Interfaces:
SolvableReduction<C>,java.io.Serializable
- Direct Known Subclasses:
SolvablePseudoReductionSeq,SolvableReductionPar,SolvableReductionSeq
public abstract class SolvableReductionAbstract<C extends RingElem<C>> extends java.lang.Object implements SolvableReduction<C>
Solvable polynomial Reduction abstract class. Implements common left, right S-Polynomial, left normalform and left irreducible set.- Author:
- Heinz Kredel
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SolvableReductionAbstract()Constructor.
-
Method Summary
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface edu.jas.gb.SolvableReduction
leftNormalform, leftNormalform, rightNormalform, rightNormalform
-
-
-
-
Constructor Detail
-
SolvableReductionAbstract
public SolvableReductionAbstract()
Constructor.
-
-
Method Detail
-
leftSPolynomial
public GenSolvablePolynomial<C> leftSPolynomial(GenSolvablePolynomial<C> Ap, GenSolvablePolynomial<C> Bp)
Left S-Polynomial.- Specified by:
leftSPolynomialin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
Ap- solvable polynomial.Bp- solvable polynomial.- Returns:
- left-spol(Ap,Bp) the left S-polynomial of Ap and Bp.
-
leftSPolynomial
public GenSolvablePolynomial<C> leftSPolynomial(java.util.List<GenSolvablePolynomial<C>> S, int i, GenSolvablePolynomial<C> Ap, int j, GenSolvablePolynomial<C> Bp)
S-Polynomial with recording.- Specified by:
leftSPolynomialin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
S- recording matrix, is modified.i- index of Ap in basis list.Ap- a polynomial.j- index of Bp in basis list.Bp- a polynomial.- Returns:
- leftSpol(Ap, Bp), the left S-Polynomial for Ap and Bp.
-
leftNormalform
public java.util.List<GenSolvablePolynomial<C>> leftNormalform(java.util.List<GenSolvablePolynomial<C>> Pp, java.util.List<GenSolvablePolynomial<C>> Ap)
Left Normalform Set.- Specified by:
leftNormalformin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
Ap- solvable polynomial list.Pp- solvable polynomial list.- Returns:
- list of left-nf(a) with respect to Pp for all a in Ap.
-
leftNormalform
public ModuleList<C> leftNormalform(ModuleList<C> Pp, ModuleList<C> Ap)
Module left normalform set.- Parameters:
Ap- module list.Pp- module list.- Returns:
- list of left-nf(a) with respect to Pp for all a in Ap.
-
leftNormalform
public ModuleList<C> leftNormalform(ModuleList<C> Pp, ModuleList<C> Ap, boolean top)
Module left normalform set.- Parameters:
Ap- module list.Pp- module list.top- true for TOP term order, false for POT term order.- Returns:
- list of left-nf(a) with respect to Pp for all a in Ap.
-
leftIrreducibleSet
public java.util.List<GenSolvablePolynomial<C>> leftIrreducibleSet(java.util.List<GenSolvablePolynomial<C>> Pp)
Left irreducible set.- Specified by:
leftIrreducibleSetin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
Pp- solvable polynomial list.- Returns:
- a list P of solvable polynomials which are in normalform wrt. P.
-
isLeftReductionNF
public boolean isLeftReductionNF(java.util.List<GenSolvablePolynomial<C>> row, java.util.List<GenSolvablePolynomial<C>> Pp, GenSolvablePolynomial<C> Ap, GenSolvablePolynomial<C> Np)
Is reduction of normal form.- Specified by:
isLeftReductionNFin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
row- recording matrix.Pp- a solvable polynomial list for reduction.Ap- a solvable polynomial.Np- nf(Pp,Ap), a left normal form of Ap wrt. Pp.- Returns:
- true, if Np + sum( row[i]*Pp[i] ) == Ap, else false.
-
rightSPolynomial
public GenSolvablePolynomial<C> rightSPolynomial(GenSolvablePolynomial<C> Ap, GenSolvablePolynomial<C> Bp)
Right S-Polynomial.- Specified by:
rightSPolynomialin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
Ap- solvable polynomial.Bp- solvable polynomial.- Returns:
- right-spol(Ap,Bp) the right S-polynomial of Ap and Bp.
-
isTopReducible
public boolean isTopReducible(java.util.List<GenSolvablePolynomial<C>> P, GenSolvablePolynomial<C> A)
Is top reducible. Is left right symmetric.- Specified by:
isTopReduciblein interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
A- solvable polynomial.P- solvable polynomial list.- Returns:
- true if A is top reducible with respect to P.
-
isReducible
public boolean isReducible(java.util.List<GenSolvablePolynomial<C>> Pp, GenSolvablePolynomial<C> Ap)
Is reducible. Is left right symmetric.- Specified by:
isReduciblein interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
Ap- solvable polynomial.Pp- solvable polynomial list.- Returns:
- true if Ap is reducible with respect to Pp.
-
isNormalform
public boolean isNormalform(java.util.List<GenSolvablePolynomial<C>> Pp, GenSolvablePolynomial<C> Ap)
Is in Normalform. Is left right symmetric.- Specified by:
isNormalformin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
Ap- polynomial.Pp- polynomial list.- Returns:
- true if Ap is in normalform with respect to Pp.
-
isRightReductionNF
public boolean isRightReductionNF(java.util.List<GenSolvablePolynomial<C>> row, java.util.List<GenSolvablePolynomial<C>> Pp, GenSolvablePolynomial<C> Ap, GenSolvablePolynomial<C> Np)
Is right reduction of normal form.- Specified by:
isRightReductionNFin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
row- recording matrix.Pp- a solvable polynomial list for reduction.Ap- a solvable polynomial.Np- nf(Pp,Ap), a left normal form of Ap wrt. Pp.- Returns:
- true, if Np + sum( Pp[i]*row[i] ) == Ap, else false.
-
normalform
public GenSolvablePolynomial<C> normalform(java.util.List<GenSolvablePolynomial<C>> Pp, GenSolvablePolynomial<C> Ap)
Two-sided Normalform.- Specified by:
normalformin interfaceSolvableReduction<C extends RingElem<C>>- Parameters:
Ap- solvable polynomial.Pp- solvable polynomial list.- Returns:
- two-sided-nf(Ap) with respect to Pp.
-
-