edu.jas.gbmod
Class SolvableSyzygyAbstract<C extends RingElem<C>>
- java.lang.Object
-
- edu.jas.gbmod.SolvableSyzygyAbstract<C>
-
- Type Parameters:
C- coefficient type
- All Implemented Interfaces:
- SolvableSyzygy<C>, java.io.Serializable
public class SolvableSyzygyAbstract<C extends RingElem<C>> extends java.lang.Object implements SolvableSyzygy<C>
Syzygy class for solvable polynomials. Implements Syzygy computations and tests.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field and Description SolvableReduction<C>sredSolvable reduction engine.
-
Constructor Summary
Constructors Constructor and Description SolvableSyzygyAbstract()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description intcompare(GenSolvablePolynomial<C> num, GenSolvablePolynomial<C> den, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d)Comparison like SolvableLocal or SolvableQuotient.booleanisLeftOreCond(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b, GenSolvablePolynomial<C>[] oc)Test left Ore condition.booleanisLeftZeroRelation(java.util.List<java.util.List<GenSolvablePolynomial<C>>> Z, java.util.List<GenSolvablePolynomial<C>> F)Test if left syzygy.booleanisLeftZeroRelation(ModuleList<C> Z, ModuleList<C> F)Test if left sysygy of modulesbooleanisRightOreCond(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b, GenSolvablePolynomial<C>[] oc)Test right Ore condition.booleanisRightZeroRelation(java.util.List<java.util.List<GenSolvablePolynomial<C>>> Z, java.util.List<GenSolvablePolynomial<C>> F)Test if right syzygy.booleanisRightZeroRelation(ModuleList<C> Z, ModuleList<C> F)Test if right sysygy of modulesGenSolvablePolynomial<C>[]leftOreCond(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b)Left Ore condition.GenSolvablePolynomial<C>[]leftSimplifier(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b)Left simplifier.java.util.List<java.util.List<GenSolvablePolynomial<C>>>leftZeroRelations(int modv, java.util.List<GenSolvablePolynomial<C>> F)Left syzygy for left Groebner base.java.util.List<java.util.List<GenSolvablePolynomial<C>>>leftZeroRelations(java.util.List<GenSolvablePolynomial<C>> F)Left syzygy for left Groebner base.ModuleList<C>leftZeroRelations(ModuleList<C> M)Left syzygy for left module Groebner base.java.util.List<java.util.List<GenSolvablePolynomial<C>>>leftZeroRelationsArbitrary(int modv, java.util.List<GenSolvablePolynomial<C>> F)Left syzygy module from arbitrary base.java.util.List<java.util.List<GenSolvablePolynomial<C>>>leftZeroRelationsArbitrary(java.util.List<GenSolvablePolynomial<C>> F)Left syzygy module from arbitrary base.ModuleList<C>leftZeroRelationsArbitrary(ModuleList<C> M)Left syzygy for arbitrary left module base.java.util.List<edu.jas.gbmod.SolvResPart<C>>resolution(ModuleList<C> M)Resolution of a module.java.util.Listresolution(PolynomialList<C> F)Resolution of a polynomial list.java.util.List<edu.jas.gbmod.SolvResPart<C>>resolutionArbitrary(ModuleList<C> M)Resolution of a module.java.util.ListresolutionArbitrary(PolynomialList<C> F)Resolution of a polynomial list.GenSolvablePolynomial<C>[]rightOreCond(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b)Right Ore condition.java.util.List<java.util.List<GenSolvablePolynomial<C>>>rightZeroRelationsArbitrary(int modv, java.util.List<GenSolvablePolynomial<C>> F)Right syzygy module from arbitrary base.java.util.List<java.util.List<GenSolvablePolynomial<C>>>rightZeroRelationsArbitrary(java.util.List<GenSolvablePolynomial<C>> F)Right syzygy module from arbitrary base.
-
-
-
Field Detail
-
sred
public final SolvableReduction<C extends RingElem<C>> sred
Solvable reduction engine.
-
-
Method Detail
-
leftZeroRelations
public java.util.List<java.util.List<GenSolvablePolynomial<C>>> leftZeroRelations(java.util.List<GenSolvablePolynomial<C>> F)
Left syzygy for left Groebner base.- Specified by:
leftZeroRelationsin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
F- a Groebner base.- Returns:
- leftSyz(F), a basis for the left module of syzygies for F.
-
leftZeroRelations
public java.util.List<java.util.List<GenSolvablePolynomial<C>>> leftZeroRelations(int modv, java.util.List<GenSolvablePolynomial<C>> F)
Left syzygy for left Groebner base.- Specified by:
leftZeroRelationsin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
modv- number of module variables.F- a Groebner base.- Returns:
- leftSyz(F), a basis for the left module of syzygies for F.
-
leftZeroRelations
public ModuleList<C> leftZeroRelations(ModuleList<C> M)
Left syzygy for left module Groebner base.- Specified by:
leftZeroRelationsin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
M- a Groebner base.- Returns:
- leftSyz(M), a basis for the left module of syzygies for M.
-
isLeftZeroRelation
public boolean isLeftZeroRelation(java.util.List<java.util.List<GenSolvablePolynomial<C>>> Z, java.util.List<GenSolvablePolynomial<C>> F)
Test if left syzygy.- Specified by:
isLeftZeroRelationin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
Z- list of sysygies.F- a polynomial list.- Returns:
- true, if Z is a list of left syzygies for F, else false.
-
isRightZeroRelation
public boolean isRightZeroRelation(java.util.List<java.util.List<GenSolvablePolynomial<C>>> Z, java.util.List<GenSolvablePolynomial<C>> F)
Test if right syzygy.- Specified by:
isRightZeroRelationin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
Z- list of sysygies.F- a polynomial list.- Returns:
- true, if Z is a list of right syzygies for F, else false.
-
isLeftZeroRelation
public boolean isLeftZeroRelation(ModuleList<C> Z, ModuleList<C> F)
Test if left sysygy of modules- Specified by:
isLeftZeroRelationin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
Z- list of sysygies.F- a module list.- Returns:
- true, if Z is a list of left syzygies for F, else false.
-
isRightZeroRelation
public boolean isRightZeroRelation(ModuleList<C> Z, ModuleList<C> F)
Test if right sysygy of modules- Specified by:
isRightZeroRelationin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
Z- list of sysygies.F- a module list.- Returns:
- true, if Z is a list of right syzygies for F, else false.
-
resolution
public java.util.List<edu.jas.gbmod.SolvResPart<C>> resolution(ModuleList<C> M)
Resolution of a module. Only with direct GBs.- Specified by:
resolutionin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
M- a module list of a Groebner basis.- Returns:
- a resolution of M.
-
resolution
public java.util.List resolution(PolynomialList<C> F)
Resolution of a polynomial list. Only with direct GBs.- Specified by:
resolutionin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
F- a polynomial list of a Groebner basis.- Returns:
- a resolution of F.
-
resolutionArbitrary
public java.util.List<edu.jas.gbmod.SolvResPart<C>> resolutionArbitrary(ModuleList<C> M)
Resolution of a module.- Specified by:
resolutionArbitraryin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
M- a module list of an arbitrary basis.- Returns:
- a resolution of M.
-
resolutionArbitrary
public java.util.List resolutionArbitrary(PolynomialList<C> F)
Resolution of a polynomial list.- Specified by:
resolutionArbitraryin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
F- a polynomial list of an arbitrary basis.- Returns:
- a resolution of F.
-
leftZeroRelationsArbitrary
public java.util.List<java.util.List<GenSolvablePolynomial<C>>> leftZeroRelationsArbitrary(java.util.List<GenSolvablePolynomial<C>> F)
Left syzygy module from arbitrary base.- Specified by:
leftZeroRelationsArbitraryin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
F- a solvable polynomial list.- Returns:
- syz(F), a basis for the module of left syzygies for F.
-
leftZeroRelationsArbitrary
public java.util.List<java.util.List<GenSolvablePolynomial<C>>> leftZeroRelationsArbitrary(int modv, java.util.List<GenSolvablePolynomial<C>> F)
Left syzygy module from arbitrary base.- Specified by:
leftZeroRelationsArbitraryin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
modv- number of module variables.F- a solvable polynomial list.- Returns:
- syz(F), a basis for the module of left syzygies for F.
-
leftZeroRelationsArbitrary
public ModuleList<C> leftZeroRelationsArbitrary(ModuleList<C> M)
Left syzygy for arbitrary left module base.- Specified by:
leftZeroRelationsArbitraryin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
M- an arbitrary base.- Returns:
- leftSyz(M), a basis for the left module of syzygies for M.
-
rightZeroRelationsArbitrary
public java.util.List<java.util.List<GenSolvablePolynomial<C>>> rightZeroRelationsArbitrary(java.util.List<GenSolvablePolynomial<C>> F)
Right syzygy module from arbitrary base.- Specified by:
rightZeroRelationsArbitraryin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
F- a solvable polynomial list.- Returns:
- syz(F), a basis for the module of right syzygies for F.
-
rightZeroRelationsArbitrary
public java.util.List<java.util.List<GenSolvablePolynomial<C>>> rightZeroRelationsArbitrary(int modv, java.util.List<GenSolvablePolynomial<C>> F)
Right syzygy module from arbitrary base.- Specified by:
rightZeroRelationsArbitraryin interfaceSolvableSyzygy<C extends RingElem<C>>- Parameters:
modv- number of module variables.F- a solvable polynomial list.- Returns:
- syz(F), a basis for the module of right syzygies for F.
-
isLeftOreCond
public boolean isLeftOreCond(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b, GenSolvablePolynomial<C>[] oc)
Test left Ore condition.- Parameters:
a- solvable polynomialb- solvable polynomialoc- = [p,q] two solvable polynomials- Returns:
- true if p*a = q*b, else false
-
isRightOreCond
public boolean isRightOreCond(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b, GenSolvablePolynomial<C>[] oc)
Test right Ore condition.- Parameters:
a- solvable polynomialb- solvable polynomialoc- = [p,q] two solvable polynomials- Returns:
- true if a*p = b*q, else false
-
leftOreCond
public GenSolvablePolynomial<C>[] leftOreCond(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b)
Left Ore condition. Generators for the left Ore condition of two solvable polynomials.- Parameters:
a- solvable polynomialb- solvable polynomial- Returns:
- [p,q] with p*a = q*b
-
rightOreCond
public GenSolvablePolynomial<C>[] rightOreCond(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b)
Right Ore condition. Generators for the right Ore condition of two solvable polynomials.- Parameters:
a- solvable polynomialb- solvable polynomial- Returns:
- [p,q] with a*p = b*q
-
leftSimplifier
public GenSolvablePolynomial<C>[] leftSimplifier(GenSolvablePolynomial<C> a, GenSolvablePolynomial<C> b)
Left simplifier. Method of Apel & Lassner (1987).- Parameters:
a- solvable polynomialb- solvable polynomial- Returns:
- [p,q] with a/b = p/q and q is minimal and monic
-
compare
public int compare(GenSolvablePolynomial<C> num, GenSolvablePolynomial<C> den, GenSolvablePolynomial<C> n, GenSolvablePolynomial<C> d)
Comparison like SolvableLocal or SolvableQuotient.- Parameters:
num- SolvablePolynomial.den- SolvablePolynomial.n- SolvablePolynomial.d- SolvablePolynomial.- Returns:
- sign((num/den)-(n/d)).
-
-
DMelt 3.0 © DataMelt by jWork.ORG