#terminate();
#sys.exit();

from edu.jas.poly   import ModuleList;
from edu.jas.gbufd  import SolvableSyzygySeq;
from edu.jas.gb     import SolvableGroebnerBaseSeq;
from edu.jas.gb     import SolvableGroebnerBaseParallel;
from edu.jas.poly   import TermOrderOptimization;
from edu.jas.poly   import GenSolvablePolynomialRing;
from edu.jas.ufd    import PolyUfdUtil;
from edu.jas.ufd    import QuotientRing;
from java.lang      import System;


t = System.currentTimeMillis();
s = SolvableSyzygySeq(f.ring.ring.coFac).rightZeroRelationsArbitrary( f.list );
t = System.currentTimeMillis() - t;
print "executed in %s ms" % t; 
sr = ModuleList(f.ring.ring, s);

print "rightSyzygy for f:\n" + str(sr.toScript());
print "#rightSyzygy for f = " + str(s.size());
print "#rightSyzygy[0] for f = " + str(s[0].size());
print;

#for p in sr.list:
#   print "p = " + str( [ str(pc.toScript()) for pc in p] );
#print

# optional:
ir = GenSolvablePolynomialRing(sr.ring.coFac.ring,sr.ring);
Example #2
0
     (
       ( e3 ), ( e1 ), ( e1 e3 - e1 ),
       ( e3 ), ( e2 ), ( e2 e3 - e2 )
     )
""";

r = SolvableRing( rs );
print "SolvableRing: " + str(r);
print;

ps = """
(
 ( e1 e3^3 + e2^10 - a ),
 ( e1^3 e2^2 + e3 ),
 ( e3^3 + e3^2 - b )
)
""";

f = r.ideal( ps );
print "SolvIdeal: " + str(f);
print;

from edu.jas.gbufd import SolvableSyzygySeq;

R = SolvableSyzygySeq(r.ring.coFac).resolution( f.pset );

for i in range(0,R.size()): 
   print "\n %s. resolution" % (i+1);
   print "\n", R[i];

Example #3
0
print "SolvableRing: " + str(r)
print

ps = """
(
 ( e1 e3^3 + e2^10 - a ),
 ( e1^3 e2^2 + e3 ),
 ( e3^3 + e3^2 - b )
)
"""

f = r.ideal(ps)
print "SolvableIdeal: " + str(f)
print

Z = SolvableSyzygySeq(r.ring.coFac).leftZeroRelationsArbitrary(f.list)
Zp = ModuleList(r.ring, Z)
print "seq left syz Output:", Zp
print
if SolvableSyzygySeq(r.ring.coFac).isLeftZeroRelation(Zp.list, f.list):
    print "is left syzygy"
else:
    print "is not left syzygy"

Zr = SolvableSyzygySeq(r.ring.coFac).rightZeroRelationsArbitrary(f.list)
Zpr = ModuleList(r.ring, Zr)
print "seq right syz Output:", Zpr
print
if SolvableSyzygySeq(r.ring.coFac).isRightZeroRelation(Zpr.list, f.list):
    print "is right syzygy"
else:
Example #4
0
     RelationTable
     (
       ( e3 ), ( e1 ), ( e1 e3 - e1 ),
       ( e3 ), ( e2 ), ( e2 e3 - e2 )
     )
"""

r = SolvableRing(rs)
print "SolvableRing: " + str(r)
print

ps = """
(
 ( e1 e3^3 + e2^10 - a ),
 ( e1^3 e2^2 + e3 ),
 ( e3^3 + e3^2 - b )
)
"""

f = r.ideal(ps)
print "SolvIdeal: " + str(f)
print

from edu.jas.gbufd import SolvableSyzygySeq

R = SolvableSyzygySeq(r.ring.coFac).resolution(f.pset)

for i in range(0, R.size()):
    print "\n %s. resolution" % (i + 1)
    print "\n", R[i]
# ( ( y^3 x^2 ) )
# ( ( x + 1 ) ),
# ( ( x + 1 ), ( y ) ),
# ( ( x y ), ( 0 ) )

f = SolvableSubModule(r, ps)
print "SolvableSubModule: " + str(f)
print

#flg = f.leftGB();
#print "seq left GB Output:", flg;
#print;

ftg = f.twosidedGB()
print "seq twosided GB Output:", ftg
print

from edu.jas.gbufd import SolvableSyzygySeq
#from edu.jas.gbmod  import ModSolvableGroebnerBase;

s = SolvableSyzygySeq(r.ring.coFac).leftZeroRelations(ftg.mset)
#sl = ModuleList(f.pset.vars,f.pset.tord,s,f.pset.table);

print "leftSyzygy:", s
print

if SolvableSyzygySeq(r.ring.coFac).isLeftZeroRelation(s, ftg.mset):
    print "is Syzygy"
else:
    print "is not Syzygy"