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>
,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.
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionBoolean closure, compute idempotent(ldcf(A)) A.booleanClosure
(List<GenPolynomial<C>> F) Boolean closure, compute BC(A) for all A in F.Boolean remainder, compute idemComplement(ldcf(A)) A.boolean
criterion4
(GenPolynomial<C> A, GenPolynomial<C> B) GB criterium 4.boolean
criterion4
(GenPolynomial<C> A, GenPolynomial<C> B, ExpVector e) GB criterium 4.irreducibleSet
(List<GenPolynomial<C>> Pp) Irreducible set.boolean
Is boolean closed, test if A == idempotent(ldcf(A)) A.boolean
Is boolean closed, test if all A in F are boolean closed.boolean
isNormalform
(List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap) Is in Normalform.boolean
Is reduced boolean closed, test if all A in F are boolean closed or br(A) reduces to zero.boolean
isStrongTopReducible
(List<GenPolynomial<C>> P, GenPolynomial<C> A) Is strong top reducible.boolean
isTopReducible
(List<GenPolynomial<C>> P, GenPolynomial<C> A) Is top reducible.normalform
(List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap) Normalform using r-reduction.normalform
(List<GenPolynomial<C>> row, List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap) Normalform with recording.Reduced boolean closure, compute BC(A) for all A in F.reducedBooleanClosure
(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
-
Field Details
-
logger
private static final org.apache.logging.log4j.Logger logger -
debug
private static final boolean debug
-
-
Constructor Details
-
RReductionSeq
public RReductionSeq()Constructor.
-
-
Method Details
-
isTopReducible
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:
isTopReducible
in interfaceReduction<C extends RegularRingElem<C>>
- Overrides:
isTopReducible
in classReductionAbstract<C extends RegularRingElem<C>>
- Parameters:
P
- polynomial list.A
- polynomial.- Returns:
- true if A is top reducible with respect to P.
-
isStrongTopReducible
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:
isStrongTopReducible
in interfaceRReduction<C extends RegularRingElem<C>>
- Parameters:
P
- polynomial list.A
- polynomial.- Returns:
- true if A is string top reducible with respect to P.
-
isNormalform
Is in Normalform.- Specified by:
isNormalform
in interfaceReduction<C extends RegularRingElem<C>>
- Overrides:
isNormalform
in classReductionAbstract<C extends RegularRingElem<C>>
- Parameters:
Pp
- polynomial list.Ap
- polynomial.- Returns:
- true if Ap is in normalform with respect to Pp.
-
normalform
Normalform using r-reduction.- Specified by:
normalform
in interfaceReduction<C extends RegularRingElem<C>>
- Parameters:
Pp
- polynomial list.Ap
- polynomial.- Returns:
- r-nf(Ap) with respect to Pp.
-
criterion4
GB criterium 4. Use only for commutative polynomial rings. Note: Experimental version for r-Groebner bases.- Specified by:
criterion4
in interfaceReduction<C extends RegularRingElem<C>>
- Overrides:
criterion4
in 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
GB criterium 4. Use only for commutative polynomial rings. Note: Experimental version for r-Groebner bases.- Specified by:
criterion4
in interfaceReduction<C extends RegularRingElem<C>>
- Overrides:
criterion4
in 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(List<GenPolynomial<C>> row, List<GenPolynomial<C>> Pp, GenPolynomial<C> Ap) Normalform with recording.- Specified by:
normalform
in 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
Irreducible set. May not be boolean closed.- Specified by:
irreducibleSet
in interfaceReduction<C extends RegularRingElem<C>>
- Overrides:
irreducibleSet
in classReductionAbstract<C extends RegularRingElem<C>>
- Parameters:
Pp
- polynomial list.- Returns:
- a list P of polynomials which are in normalform wrt. P.
-
isBooleanClosed
Is boolean closed, test if A == idempotent(ldcf(A)) A.- Specified by:
isBooleanClosed
in interfaceRReduction<C extends RegularRingElem<C>>
- Parameters:
A
- polynomial.- Returns:
- true if A is boolean closed, else false.
-
isBooleanClosed
Is boolean closed, test if all A in F are boolean closed.- Specified by:
isBooleanClosed
in interfaceRReduction<C extends RegularRingElem<C>>
- Parameters:
F
- polynomial list.- Returns:
- true if F is boolean closed, else false.
-
isReducedBooleanClosed
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
Boolean closure, compute idempotent(ldcf(A)) A.- Specified by:
booleanClosure
in interfaceRReduction<C extends RegularRingElem<C>>
- Parameters:
A
- polynomial.- Returns:
- bc(A).
-
booleanRemainder
Boolean remainder, compute idemComplement(ldcf(A)) A.- Specified by:
booleanRemainder
in interfaceRReduction<C extends RegularRingElem<C>>
- Parameters:
A
- polynomial.- Returns:
- br(A).
-
booleanClosure
Boolean closure, compute BC(A) for all A in F.- Parameters:
F
- polynomial list.- Returns:
- bc(F).
-
reducedBooleanClosure
Reduced boolean closure, compute BC(A) for all A in F.- Specified by:
reducedBooleanClosure
in interfaceRReduction<C extends RegularRingElem<C>>
- Parameters:
F
- polynomial list.- Returns:
- red(bc(F)) = bc(red(F)).
-
reducedBooleanClosure
Reduced boolean closure, compute BC(A) modulo F.- Specified by:
reducedBooleanClosure
in interfaceRReduction<C extends RegularRingElem<C>>
- Parameters:
F
- polynomial list.A
- polynomial.- Returns:
- red(bc(A)).
-