# Ore extension solvable polynomial example, Gomez-Torrecillas, 2003 pcz = PolyRing(QQ(),"x,y,z,t", PolyRing.lex); #is automatic: [one,x,y,z,t] = p.gens(); zrelations = [z, y, y * z + x, t, y, y * t + y, t, z, z * t - z ]; print "zrelations: = " + str( [ str(r) for r in zrelations ] ); print; pz = SolvPolyRing(QQ(), "x,y,z,t", PolyRing.lex, zrelations); print "SolvPolyRing: " + str(pz); print; pzq = SRF(pz); print "SolvableQuotientRing: " + str(pzq.ring.toScript); # + ", assoz: " + str(pzq::ring.isAssociative); #print "gens =" + str( [ str(r) for r in pzq.gens() ] ); print; pct = PolyRing(pzq,"u,v,w", PolyRing.lex); #is automatic: [one,x,y,z,t,u,v,w] = p.gens(); print "tgens = " + str( [ str(r) for r in pct.gens() ] ); print; relations = [#w, v, v * w - u, v, u, v * u + x,
import sys from jas import SolvableRing, SolvPolyRing, PolyRing, SolvableIdeal from jas import QQ, ZZ, GF, SRF, startLog, terminate # Iterated Ore extension solvable polynomial example, rc = PolyRing(QQ(), "x,y,z,t", PolyRing.lex) #is automatic: [one,x,y,z,t] = rc.gens(); crel = [z, y, y * z + x, t, y, y * t + y, t, z, z * t - z] print "crel: = " + str([str(r) for r in crel]) print rcs = SolvPolyRing(QQ(), "x,y,z,t", PolyRing.lex, crel) #exit(0) rm = PolyRing(rcs, "u,v,w", PolyRing.lex) #is automatic: [one,x,y,z,t,u,v,w] = rm.gens(); mrel = [v, u, u * v + x, w, v, v * w + y, w, u, u * w - z] print "mrel: = " + str([str(r) for r in mrel]) print rs = SolvPolyRing(rcs, "u,v,w", PolyRing.lex, mrel) #exit(0)
RF(PolyRing(coeff,"b1,c1",PolyRing.lex)), "E,D1,D2,D3",PolyRing.grad); print "PolyRing: " + str(p); print; relations = [ ( D3 ), ( D1 ), ( D1 * D3 - c1 * E + b1 * E ), ( D3 ), ( D2 ), ( D2 * D3 - E + E ), ( D2 ), ( D1 ), ( D1 * D2 - c1 * E + b1 * E ) ]; print "relations: = " + str([ str(f) for f in relations ]); print; rp = SolvPolyRing( RF(PolyRing(coeff,"b1,c1",PolyRing.lex)), "E,D1,D2,D3",PolyRing.grad,relations); print "SolvPolyRing: rp = " + str(rp); print; print "gens = " + str([ str(f) for f in rp.gens() ]); print; F = [ ( D1 - D2 * D3 ), ( D2 * D3 + D1 ), ( - D1 * D3 + D2 ) ]; print "F =" + str([ str(f) for f in F ]); print f = rp.ideal( list=F );
from jas import SolvableRing, SolvPolyRing, PolyRing, RingElem from jas import QQ, startLog, SLC, terminate # Ore extension solvable polynomial example, Gomez-Torrecillas, 2003 pcz = PolyRing(QQ(),"x,y,z"); #is automatic: [one,x,y,z] = pcz.gens(); zrelations = [z, y, y * z + x ]; print "zrelations: = " + str([ str(f) for f in zrelations ]); print; pz = SolvPolyRing(QQ(), "x,y,z", PolyRing.lex, zrelations); print "SolvPolyRing: " + str(pz); print; #startLog(); #fl = [ z**2 + y, y**2 + x]; fl = [ z**2 + y, x]; ff = pz.ideal("",fl); print "ideal ff: " + str(ff); print; ff = ff.twosidedGB(); print "ideal ff: " + str(ff); print;
from java.lang import System from jas import SolvableRing, SolvPolyRing, PolyRing, RingElem from jas import QQ, startLog, SLC, terminate # Ore extension solvable polynomial example, Gomez-Torrecillas, 2003 pcz = PolyRing(QQ(), "x,y,z") #is automatic: [one,x,y,z] = pcz.gens(); zrelations = [z, y, y * z + x] print "zrelations: = " + str([str(f) for f in zrelations]) print pz = SolvPolyRing(QQ(), "x,y,z", PolyRing.lex, zrelations) print "SolvPolyRing: " + str(pz) print #startLog(); #fl = [ z**2 + y, y**2 + x]; fl = [z**2 + y, x] ff = pz.ideal("", fl) print "ideal ff: " + str(ff) print ff = ff.twosidedGB() print "ideal ff: " + str(ff) print
for g in r.gens(): print "g = " + str(g); print; print "------- SolvPolyRing(QQ(),\"x,y,z\") ---------"; r = PolyRing(QQ(),"x,y,z",PolyRing.lex); print "r = " + str(r); [pone,px,py,pz] = r.gens(); print "pone = " + str(pone); print "px = " + str(px); print "py = " + str(py); print "pz = " + str(pz); rel = ( py, px, px * py - 1 , pz, py, py * pz - 1 ); #print "rel = " + str(rel); sr = SolvPolyRing(QQ(),"x,y,z",PolyRing.lex,rel); print "sr = " + str(sr); [one,x,y,z] = sr.gens(); print "one = " + str(one); print "x = " + str(x); print "y = " + str(y); print "z = " + str(z); print "one.factory() = " + str(one.factory()); s1 = QQ(1,2) + QQ(2,3) * x + QQ(2,5) * y + ( x + y + z )**2; print "s1 = " + str(s1); s2 = (1,2) + (2,3) * x + (2,5) * y + ( x + y + z )**2; print "s2 = " + str(s2); s3 = z**2 + 2 * y * z + 2 * x * z + y**2 + 2 * x * y + x**2 + (2,5) * y + (2,3) * x + (1,2); print "s3 = " + str(s3); s4 = s1 - s3; print "s4 = " + str(s4);
print "G = " + str(G) print "isGB(G) = " + str(G.isGB()) print # now as solvable polynomials p = PolyRing(QQ(), "a,b,e1,e2,e3") #is automatic: [one,a,b,e1,e2,e3] = p.gens(); relations = [e3, e1, e1 * e3 - e1, e3, e2, e2 * e3 - e2] print "relations: =", [str(f) for f in relations] print #rp = SolvPolyRing(QQ(), "a,b,e1,e2,e3", rel=relations); rp = SolvPolyRing(QQ(), "a,b,e1,e2,e3", PolyRing.lex, relations) print "SolvPolyRing: " + str(rp) print print "gens =", [str(f) for f in rp.gens()] #[one,a,b,e1,e2,e3] = rp.gens(); #[one,I,J,K,a,b,e1,e2,e3] = rp.gens(); f1 = e1 * e3**3 + e2**10 - a f2 = e1**3 * e2**2 + e3 f3 = e3**3 + e3**2 - b F = [f1, f2, f3] print "F =", [str(f) for f in F] print
from jas import QQ, startLog, SolvableModule, SolvableSubModule, terminate # Ore extension solvable polynomial example, modules rp = PolyRing(QQ(),"x,y,z,t",PolyRing.lex); #is automatic: [one,x,y,z,t] = rp.gens(); trel = [ z, y, y * z + x, t, y, y * t + y, t, z, z * t - z ]; print "trel: = " + str([ str(f) for f in trel ]); print; rs = SolvPolyRing(QQ(),"x,y,z,t",PolyRing.lex,trel); #exit(0) f = rs.ideal("",[t**2 + z**2 + x**2 + y**2 + 1]); print "f: " + str(f); tf = f.twosidedGB(); print "t: " + str(tf); print; #exit(0) r = SolvableModule("",rs); print "SolvableModule: " + str(r); print;
#from java.lang import Integer from jas import SolvableRing, SolvPolyRing, PolyRing from jas import QQ, startLog, SRC, SRF # Weyl coefficient field example r = PolyRing(QQ(), "p1,q1") #is automatic: [one,p1,q1] = p.gens(); relations = [q1, p1, p1 * q1 + 1] print "relations: = " + str([str(f) for f in relations]) print rp = SolvPolyRing(QQ(), "p1,q1", PolyRing.lex, relations) print "SolvPolyRing: " + str(rp) print print "gens =" + str([str(f) for f in rp.gens()]) #is automatic: one,p1,q1 = rp.gens(); scp = SRF(rp) print "scp = " + str(scp) r2 = PolyRing(scp, "p2,q2") #is automatic: [one,p1,q1,p2,q2] = r2.gens(); relations2 = [q2, p2, p2 * q2 + 1] print "relations: = " + str([str(f) for f in relations2])
from jas import SolvableRing, SolvPolyRing, PolyRing, RingElem from jas import QQ, startLog, SLR, terminate # Ore extension solvable polynomial example, roots pcz = PolyRing(QQ(),"x,y,z"); #is automatic: [one,x,y,z] = pcz.gens(); zrelations = [z, y, y * z + x ]; print "zrelations: = " + str([ str(f) for f in zrelations ]); print; pz = SolvPolyRing(QQ(), "x,y,z", PolyRing.lex, zrelations); print "SolvPolyRing: " + str(pz); print; #startLog(); #fl = [ z**2 + y, y**2 + x]; fl = [ z**2 + y, x]; ff = pz.ideal("",fl); print "ideal ff: " + str(ff); print; ff = ff.twosidedGB(); print "ideal ff: " + str(ff); print;
from jas import terminate # simple example for solvable comprehensive GB # integral/rational function coefficients rc = PolyRing( PolyRing(QQ(),"a,b",PolyRing.lex),"x1,x2,d1,d2", PolyRing.lex ); print "commutativ Ring: " + str(rc); print; rel = [d1, x1, x1 * d1 + 1, d2, x2, x2 * d2 + 1 ]; print "relations: = " + str([ str(f) for f in rel ]); print; r = SolvPolyRing( PolyRing(QQ(),"a,b",PolyRing.lex),"x1,x2,d1,d2", PolyRing.lex, rel); print "Ring: " + str(r); print; p1 = a * x1 * d1**2 * d2 + (a+1) * x1 * x2 * d2; p2 = x2**2 * d2 + b * x1; p3 = d1 * d2**2; f = r.paramideal( "", [p1,p2,p3] ); print "ParamIdeal: " + str(f); print; #exit(); #startLog(); gs = f.CGBsystem();
from jas import terminate # simple example for solvable comprehensive GB # integral/rational function coefficients rc = PolyRing( PolyRing(QQ(),"a,b",PolyRing.lex),"x,d", PolyRing.lex ); print "commutativ Ring: " + str(rc); print; rel = [d, x, x * d + 1 ]; print "relations: = " + str([ str(f) for f in rel ]); print; r = SolvPolyRing( PolyRing(QQ(),"a,b",PolyRing.lex),"x,d", PolyRing.lex, rel); print "Ring: " + str(r); print; p1 = 2 * x * d**2 + a * x * d; p2 = x * d**3 + b * x**2 * d - b * x; p3 = x * d**2 - a * x; f = r.paramideal( "", [p1,p2,p3] ); print "ParamIdeal: " + str(f); print; #exit(); #startLog(); gs = f.CGBsystem();
from jas import startLog from jas import terminate # simple example for comprehensive GB # integral/rational function coefficients rc = PolyRing( PolyRing(QQ(),"(u,v)",PolyRing.lex),"(x,y)", PolyRing.lex ); print "comm Ring: " + str(rc); print; rel = [y, x, x * y + 1]; print "relations: = " + str([ str(f) for f in rel ]); print; r = SolvPolyRing( PolyRing(QQ(),"(u,v)",PolyRing.lex),"(x,y)", PolyRing.lex, rel); print "Ring: " + str(r); print; p1 = v * x * y + x; p2 = u * y**2 + x**2; f = r.paramideal( "", [p1,p2] ); print "ParamIdeal: " + str(f); print; #sys.exit(); #startLog();
import sys from jas import PolyRing, SolvPolyRing, QQ from jas import startLog, terminate # Ore extension solvable polynomial example, Gomez-Torrecillas, 2003 p = PolyRing(QQ(), "x,y,z,t") #is automatic: [one,x,y,z,t] = p.gens(); relations = [z, y, y * z + x, t, y, y * t + y, t, z, z * t - z] print "relations: = " + str([str(f) for f in relations]) print rp = SolvPolyRing(QQ(), "x,y,z,t", PolyRing.lex, relations) print "SolvPolyRing: " + str(rp) print print "gens =" + str([str(f) for f in rp.gens()]) #is automatic: one,x,y,z,t = rp.gens(); #f1 = x**2 + y**2 + z**2 + t**2 + 1; #print "f1 = " +str(f1); ff = [x, y, z, t**2 - 1] print "ff = " + str([str(f) for f in ff]) print ii = rp.ideal("", ff) print "SolvableIdeal: " + str(ii)
print "r = " + str(r) for g in r.gens(): print "g = " + str(g) print print "------- SolvPolyRing(QQ(),\"x,y,z\") ---------" r = PolyRing(QQ(), "x,y,z", PolyRing.lex) print "r = " + str(r) [pone, px, py, pz] = r.gens() print "pone = " + str(pone) print "px = " + str(px) print "py = " + str(py) print "pz = " + str(pz) rel = (py, px, px * py - 1, pz, py, py * pz - 1) #print "rel = " + str(rel); sr = SolvPolyRing(QQ(), "x,y,z", PolyRing.lex, rel) print "sr = " + str(sr) [one, x, y, z] = sr.gens() print "one = " + str(one) print "x = " + str(x) print "y = " + str(y) print "z = " + str(z) print "one.factory() = " + str(one.factory()) s1 = QQ(1, 2) + QQ(2, 3) * x + QQ(2, 5) * y + (x + y + z)**2 print "s1 = " + str(s1) s2 = (1, 2) + (2, 3) * x + (2, 5) * y + (x + y + z)**2 print "s2 = " + str(s2) s3 = z**2 + 2 * y * z + 2 * x * z + y**2 + 2 * x * y + x**2 + (2, 5) * y + ( 2, 3) * x + (1, 2) print "s3 = " + str(s3) s4 = s1 - s3
from jas import SolvableRing, SolvPolyRing, PolyRing, SolvableIdeal from jas import QQ, Quat # WA_32 solvable polynomial example p = PolyRing(QQ(),"a,b,e1,e2,e3"); #is automatic: [one,a,b,e1,e2,e3] = p.gens(); relations = [e3, e1, e1*e3 - e1, e3, e2, e2*e3 - e2]; print "relations: =", [ str(f) for f in relations ]; print; #rp = SolvPolyRing(QQ(), "a,b,e1,e2,e3", rel=relations); rp = SolvPolyRing(QQ(), "a,b,e1,e2,e3", PolyRing.lex, relations); print "SolvPolyRing: " + str(rp); print; print "gens =", [ str(f) for f in rp.gens() ]; #[one,a,b,e1,e2,e3] = rp.gens(); #[one,I,J,K,a,b,e1,e2,e3] = rp.gens(); f1 = e1 * e3**3 + e2**10 - a; f2 = e1**3 * e2**2 + e3; f3 = e3**3 + e3**2 - b; f4 = ( e3**2 * e2**3 + e1 )**3; #print "f1 = ", f1; #print "f2 = ", f2;
from java.lang import System from jas import SolvableRing, SolvPolyRing, PolyRing, SRF from jas import QQ, startLog, SolvableModule, SolvableSubModule, terminate # Ore extension solvable polynomial example, modules rp = PolyRing(QQ(), "x,y,z,t", PolyRing.lex) #is automatic: [one,x,y,z,t] = rp.gens(); trel = [z, y, y * z + x, t, y, y * t + y, t, z, z * t - z] print "trel: = " + str([str(f) for f in trel]) print rs = SolvPolyRing(QQ(), "x,y,z,t", PolyRing.lex, trel) #exit(0) f = rs.ideal("", [t**2 + z**2 + x**2 + y**2 + 1]) print "f: " + str(f) tf = f.twosidedGB() print "t: " + str(tf) print #exit(0) r = SolvableModule("", rs) print "SolvableModule: " + str(r) print
from jas import SolvableRing, SolvPolyRing, PolyRing, RingElem from jas import QQ, startLog, SRC, SRF # Ore extension solvable polynomial example, Gomez-Torrecillas, 2003 pcz = PolyRing(QQ(),"x,y,z"); #is automatic: [one,x,y,z] = pcz.gens(); zrelations = [z, y, y * z + x ]; print "zrelations: = " + str([ str(f) for f in zrelations ]); print; pz = SolvPolyRing(QQ(), "x,y,z", PolyRing.lex, zrelations); print "SolvPolyRing: " + str(pz); print; #startLog(); fl = [ z**2 + y, y**2 + x]; ff = pz.ideal("",fl); print "ideal ff: " + str(ff); print; ff = ff.twosidedGB(); print "ideal ff: " + str(ff); print;
## 2 z_2+6ay_2+20 y_2^3+2c \& ## 3 z_1^2+y_1^2+b \& ## 3z_2^2+y_2^2+b \& ## \end{Equations} ## \end{PossoExample} #from java.lang import System from jas import WordRing, WordPolyRing, WordPolyIdeal, PolyRing, SolvPolyRing, RingElem from jas import terminate, startLog from jas import QQ, ZZ, GF, ZM, WRC # Hawes & Gibson example 2 # rational function coefficients r = SolvPolyRing( PolyRing(ZZ(),"a, c, b",PolyRing.lex), "y2, y1, z1, z2, x",PolyRing.grad); print "Ring: " + str(r); print; one,a,c,b,y2,y1,z1,z2,x = r.gens(); p1 = x + 2 * y1 * z1 + 3 * a * y1**2 + 5 * y1**4 + 2 * c * y1; p2 = x + 2 * y2 * z2 + 3 * a * y2**2 + 5 * y2**4 + 2 * c * y2; p3 = 2 * z2 + 6 * a * y2 + 20 * y2**3 + 2 * c; p4 = 3 * z1**2 + y1**2 + b; p5 = 3 * z2**2 + y2**2 + b; F = [p1,p2,p3,p4,p5]; g = r.ideal( "", F ); print "Ideal: " + str(g);
from java.lang import System from jas import SolvableRing, SolvPolyRing, PolyRing from jas import QQ, startLog, SRC, SRF # Ore extension solvable polynomial example, Gomez-Torrecillas, 2003 pcz = PolyRing(QQ(), "x,y,z") #is automatic: [one,x,y,z] = pcz.gens(); zrelations = [z, y, y * z + x] print "zrelations: = " + str([str(f) for f in zrelations]) print pz = SolvPolyRing(QQ(), "x,y,z", PolyRing.lex, zrelations) print "SolvPolyRing: " + str(pz) print pzq = SRF(pz) print "SolvableQuotientRing: " + str(pzq.ring.toScript()) # + ", assoz: " + str(pzq.ring.isAssociative()); #print "gens =" + str([ str(f) for f in pzq.ring.generators() ]); print pct = PolyRing(pzq, "t") #is automatic: [one,x,y,z,t] = p.gens(); trelations = [t, y, y * t + y, t, z, z * t - z] print "relations: = " + str([str(f) for f in trelations])
pzq = SRF(pz) print "SolvableQuotientRing: " + str(pzq.ring.toScript()) # + ", assoz: " + str(pzq.ring.isAssociative()); # print "gens =" + str([ str(f) for f in pzq.ring.generators() ]); print pct = PolyRing(pzq, "t") # is automatic: [one,x,y,z,t] = p.gens(); trelations = [t, y, y * t + y, t, z, z * t - z] print "relations: = " + str([str(f) for f in trelations]) print pt = SolvPolyRing(pzq, "t", PolyRing.lex, trelations) print "SolvPolyRing: " + str(pt) print print "gens =", [str(f) for f in pt.gens()] # print "t = " + str(t); # print "z = " + str(z); zi = 1 / z yi = 1 / y xi = 1 / x # startLog(); a = (t * zi) * y b = t * (zi * y) c = a - b
from jas import SolvableRing, SolvPolyRing, PolyRing from jas import QQ, startLog, SRC, SRF # Weyl coefficient field example r = PolyRing(QQ(),"p1,q1"); #is automatic: [one,p1,q1] = p.gens(); relations = [q1, p1, p1 * q1 + 1 ]; print "relations: = " + str([ str(f) for f in relations ]); print; rp = SolvPolyRing(QQ(), "p1,q1", PolyRing.lex, relations); print "SolvPolyRing: " + str(rp); print; print "gens =" + str([ str(f) for f in rp.gens() ]); #is automatic: one,p1,q1 = rp.gens(); scp = SRF(rp); print "scp = " + str(scp); r2 = PolyRing(scp,"p2,q2"); #is automatic: [one,p1,q1,p2,q2] = r2.gens(); relations2 = [q2, p2, p2 * q2 + 1
from java.lang import System from jas import SolvableRing, SolvPolyRing, PolyRing from jas import QQ, startLog, SRC, SRF, terminate # Ore extension solvable polynomial example, Gomez-Torrecillas, 2003 p = PolyRing(QQ(), "x,y,z,t") #is automatic: [one,x,y,z,t] = p.gens(); relations = [z, y, y * z + x, t, y, y * t + y, t, z, z * t - z] print "relations: = " + str([str(f) for f in relations]) print rp = SolvPolyRing(QQ(), "x,y,z,t", PolyRing.lex, relations) print "SolvPolyRing: " + str(rp) print print "gens =", [str(f) for f in rp.gens()] f1 = x**2 + y**2 + z**2 + t**2 + 1 print "f1 = ", f1 F = [f1] print "F =", [str(f) for f in F] print I = rp.ideal(list=F) print "SolvableIdeal: " + str(I) print