Package edu.jas.gbufd
Class RReductionSeq<C extends RegularRingElem<C>>
- java.lang.Object
-
- edu.jas.gb.ReductionAbstract<C>
-
- edu.jas.gbufd.RReductionSeq<C>
-
- Type Parameters:
C- coefficient type
- All Implemented Interfaces:
Reduction<C>,RReduction<C>,java.io.Serializable
- Direct Known Subclasses:
RPseudoReductionSeq
public class RReductionSeq<C extends RegularRingElem<C>> extends ReductionAbstract<C> implements RReduction<C>
Polynomial Regular ring Reduction sequential use algorithm. Implements normalform and boolean closure stuff.- Author:
- Heinz Kredel
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description RReductionSeq()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GenPolynomial<C>booleanClosure(GenPolynomial<C> A)Boolean closure, compute idempotent(ldcf(A)) A.java.util.List<GenPolynomial<C>>booleanClosure(java.util.List<GenPolynomial<C>> F)Boolean closure, compute BC(A) for all A in F.GenPolynomial<C>booleanRemainder(GenPolynomial<C> A)Boolean remainder, compute idemComplement(ldcf(A)) A.booleancriterion4(GenPolynomial<C> A, GenPolynomial<C> B)GB criterium 4.booleancriterion4(GenPolynomial<C> A, GenPolynomial<C> B, ExpVector e)GB criterium 4.java.util.List<GenPolynomial<C>>irreducibleSet(java.util.List<GenPolynomial<C>> Pp)Irreducible set.booleanisBooleanClosed(GenPolynomial<C> A)Is boolean closed, test if A == idempotent(ldcf(A)) A.booleanisBooleanClosed(java.util.List<GenPolynomial<C>> F)Is boolean closed, test if all A in F are boolean closed.booleanisNormalform(java.util.List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap)Is in Normalform.booleanisReducedBooleanClosed(java.util.List<GenPolynomial<C>> F)Is reduced boolean closed, test if all A in F are boolean closed or br(A) reduces to zero.booleanisStrongTopReducible(java.util.List<GenPolynomial<C>> P, GenPolynomial<C> A)Is strong top reducible.booleanisTopReducible(java.util.List<GenPolynomial<C>> P, GenPolynomial<C> A)Is top reducible.GenPolynomial<C>normalform(java.util.List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap)Normalform using r-reduction.GenPolynomial<C>normalform(java.util.List<GenPolynomial<C>> row, java.util.List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap)Normalform with recording.java.util.List<GenPolynomial<C>>reducedBooleanClosure(java.util.List<GenPolynomial<C>> F)Reduced boolean closure, compute BC(A) for all A in F.java.util.List<GenPolynomial<C>>reducedBooleanClosure(java.util.List<GenPolynomial<C>> F, GenPolynomial<C> A)Reduced boolean closure, compute BC(A) modulo F.-
Methods inherited from class edu.jas.gb.ReductionAbstract
criterion4, isNormalform, isReducible, isReductionNF, moduleCriterion, moduleCriterion, normalform, normalform, normalform, normalformMarked, SPolynomial, SPolynomial
-
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.Reduction
criterion4, isNormalform, isReducible, isReductionNF, moduleCriterion, moduleCriterion, normalform, SPolynomial, SPolynomial
-
-
-
-
Constructor Detail
-
RReductionSeq
public RReductionSeq()
Constructor.
-
-
Method Detail
-
isTopReducible
public boolean isTopReducible(java.util.List<GenPolynomial<C>> P, GenPolynomial<C> A)
Is top reducible. Condition is a b != 0, for a=ldcf(A) and b=ldcf(B) and lt(B) | lt(A) for some B in F.- Specified by:
isTopReduciblein interfaceReduction<C extends RegularRingElem<C>>- Overrides:
isTopReduciblein classReductionAbstract<C extends RegularRingElem<C>>- Parameters:
A- polynomial.P- polynomial list.- Returns:
- true if A is top reducible with respect to P.
-
isStrongTopReducible
public boolean isStrongTopReducible(java.util.List<GenPolynomial<C>> P, GenPolynomial<C> A)
Is strong top reducible. Condition is idempotent(a) == idempotent(b), for a=ldcf(A) and b=ldcf(B) and lt(B) | lt(A) for some B in F.- Specified by:
isStrongTopReduciblein interfaceRReduction<C extends RegularRingElem<C>>- Parameters:
A- polynomial.P- polynomial list.- Returns:
- true if A is string top reducible with respect to P.
-
isNormalform
public boolean isNormalform(java.util.List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap)
Is in Normalform.- Specified by:
isNormalformin interfaceReduction<C extends RegularRingElem<C>>- Overrides:
isNormalformin classReductionAbstract<C extends RegularRingElem<C>>- Parameters:
Ap- polynomial.Pp- polynomial list.- Returns:
- true if Ap is in normalform with respect to Pp.
-
normalform
public GenPolynomial<C> normalform(java.util.List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap)
Normalform using r-reduction.- Specified by:
normalformin interfaceReduction<C extends RegularRingElem<C>>- Parameters:
Ap- polynomial.Pp- polynomial list.- Returns:
- r-nf(Ap) with respect to Pp.
-
criterion4
public boolean criterion4(GenPolynomial<C> A, GenPolynomial<C> B, ExpVector e)
GB criterium 4. Use only for commutative polynomial rings. Note: Experimental version for r-Groebner bases.- Specified by:
criterion4in interfaceReduction<C extends RegularRingElem<C>>- Overrides:
criterion4in classReductionAbstract<C extends RegularRingElem<C>>- Parameters:
A- polynomial.B- polynomial.e- = lcm(ht(A),ht(B))- Returns:
- true if the S-polynomial(i,j) is required, else false.
-
criterion4
public boolean criterion4(GenPolynomial<C> A, GenPolynomial<C> B)
GB criterium 4. Use only for commutative polynomial rings. Note: Experimental version for r-Groebner bases.- Specified by:
criterion4in interfaceReduction<C extends RegularRingElem<C>>- Overrides:
criterion4in classReductionAbstract<C extends RegularRingElem<C>>- Parameters:
A- polynomial.B- polynomial.- Returns:
- true if the S-polynomial(i,j) is required, else false.
-
normalform
public GenPolynomial<C> normalform(java.util.List<GenPolynomial<C>> row, java.util.List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap)
Normalform with recording.- Specified by:
normalformin interfaceReduction<C extends RegularRingElem<C>>- Parameters:
row- recording matrix, is modified.Pp- a polynomial list for reduction.Ap- a polynomial.- Returns:
- Ap - row*Pp = nf(Pp,Ap) , the normal form of Ap wrt. Pp.
-
irreducibleSet
public java.util.List<GenPolynomial<C>> irreducibleSet(java.util.List<GenPolynomial<C>> Pp)
Irreducible set. May not be boolean closed.- Specified by:
irreducibleSetin interfaceReduction<C extends RegularRingElem<C>>- Overrides:
irreducibleSetin classReductionAbstract<C extends RegularRingElem<C>>- Parameters:
Pp- polynomial list.- Returns:
- a list P of polynomials which are in normalform wrt. P.
-
isBooleanClosed
public boolean isBooleanClosed(GenPolynomial<C> A)
Is boolean closed, test if A == idempotent(ldcf(A)) A.- Specified by:
isBooleanClosedin interfaceRReduction<C extends RegularRingElem<C>>- Parameters:
A- polynomial.- Returns:
- true if A is boolean closed, else false.
-
isBooleanClosed
public boolean isBooleanClosed(java.util.List<GenPolynomial<C>> F)
Is boolean closed, test if all A in F are boolean closed.- Specified by:
isBooleanClosedin interfaceRReduction<C extends RegularRingElem<C>>- Parameters:
F- polynomial list.- Returns:
- true if F is boolean closed, else false.
-
isReducedBooleanClosed
public boolean isReducedBooleanClosed(java.util.List<GenPolynomial<C>> F)
Is reduced boolean closed, test if all A in F are boolean closed or br(A) reduces to zero.- Parameters:
F- polynomial list.- Returns:
- true if F is boolean closed, else false.
-
booleanClosure
public GenPolynomial<C> booleanClosure(GenPolynomial<C> A)
Boolean closure, compute idempotent(ldcf(A)) A.- Specified by:
booleanClosurein interfaceRReduction<C extends RegularRingElem<C>>- Parameters:
A- polynomial.- Returns:
- bc(A).
-
booleanRemainder
public GenPolynomial<C> booleanRemainder(GenPolynomial<C> A)
Boolean remainder, compute idemComplement(ldcf(A)) A.- Specified by:
booleanRemainderin interfaceRReduction<C extends RegularRingElem<C>>- Parameters:
A- polynomial.- Returns:
- br(A).
-
booleanClosure
public java.util.List<GenPolynomial<C>> booleanClosure(java.util.List<GenPolynomial<C>> F)
Boolean closure, compute BC(A) for all A in F.- Parameters:
F- polynomial list.- Returns:
- bc(F).
-
reducedBooleanClosure
public java.util.List<GenPolynomial<C>> reducedBooleanClosure(java.util.List<GenPolynomial<C>> F)
Reduced boolean closure, compute BC(A) for all A in F.- Specified by:
reducedBooleanClosurein interfaceRReduction<C extends RegularRingElem<C>>- Parameters:
F- polynomial list.- Returns:
- red(bc(F)) = bc(red(F)).
-
reducedBooleanClosure
public java.util.List<GenPolynomial<C>> reducedBooleanClosure(java.util.List<GenPolynomial<C>> F, GenPolynomial<C> A)
Reduced boolean closure, compute BC(A) modulo F.- Specified by:
reducedBooleanClosurein interfaceRReduction<C extends RegularRingElem<C>>- Parameters:
A- polynomial.F- polynomial list.- Returns:
- red(bc(A)).
-
-