Items tagged with groebner groebner Tagged Items Feed

I try to sort a polynomial using the graded reverse lexicograpic order. According to the Documentation this is achieved via tdeg.
So here is what i tried:


sort( x+y+z, order = tdeg(x,y,z));


sort(x+y+z, [x,y,z], tdeg);

In both cases maple returns "x+y+z" instead of the expected "z+y+x". What am i doing wrong?



computer a Gröbner basis for <f_[1] = x^2*y - 2*y*z + 1, f_[2] = x*y^2-z^2+ 2*x,  f_[3] = y^2*z - x^2+ 5 > belong to Q[x,y,z], using ≺= <_grlex with x≺y≺z. compare your output to the Gröbner basis the Maple computers with a different order.

how to basis this...

January 17 2014 rit 200

T := lexdeg([x1,x2,x3],[e1,e2,e3]);
GB := Basis([e1+.999987406876435, e2-.999919848203811],T):

Error, (in LinearAlgebra:-Basis) invalid input: LinearAlgebra:-Basis expects its 1st argument, V, to be of type {Vector, {set(Vector), list(Vector)}} but received [e1+HFloat(0.9999874068764352), e2-HFloat(0.9999198482038109)]

T := lexdeg([x1,x2,x3,x4,x5,x6,x7,x8],[e1,e2]);
GB := Basis([e1-x4*x2^3*x5/(x3*x1^4*x6), e2-x1*x8/(x3*x7)],T):

Error, (in LinearAlgebra:-Basis) invalid input: LinearAlgebra:-Basis expects its 1st argument, V, to be of type {Vector, {set(Vector), list(Vector)}} but received [e1-x4*x2^3*x5/(x3*x1^4*x6), e2-x1*x8/(x3*x7)]

T := lexdeg([x1,x2,x3],[e1,e2,e3]);
hello1 := proc(xx,yy)
return MatrixMatrixMultiply(xx,yy);
end proc:
hello2 := proc(xx,yy)
return xx+yy- MatrixMatrixMultiply(xx,yy);
end proc:
m1 := Matrix(3, 3, {(1, 1) = -.737663975994461+0.*I, (1, 2) = -.588973463383001+0.*I, (1, 3) = .330094104689369+0.*I, (2, 1) = -.588012653178741+0.*I, (2, 2) = .320157823261769+0.*I, (2, 3) = -.742792089286083+0.*I, (3, 1) = -.331802619371428+0.*I, (3, 2) = .742030476217061+0.*I, (3, 3) = .582492741708719+0.*I});
m2 := Matrix(3, 3, {(1, 1) = -.742269137704830+0.*I, (1, 2) = -.590598631673326+0.*I, (1, 3) = .316590877121441+0.*I, (2, 1) = -.593533033362923+0.*I, (2, 2) = .360143915024171+0.*I, (2, 3) = -.719732518911068+0.*I, (3, 1) = -.311054762892221+0.*I, (3, 2) = .722142379823161+0.*I, (3, 3) = .617863510611693+0.*I});
m3 := Matrix(3, 3, {(1, 1) = -.751491355856820+0.*I, (1, 2) = -.574908634018322+0.*I, (1, 3) = .323636840615627+0.*I, (2, 1) = -.575794245520782+0.*I, (2, 2) = .332066412772496+0.*I, (2, 3) = -.747123071744916+0.*I, (3, 1) = -.322058579916187+0.*I, (3, 2) = .747804760642505+0.*I, (3, 3) = .580574121936877+0.*I});
AA := hello1(m1, m2);
BB := hello2(m1, m2);
GB := Basis([e1- AA,e2- BB],T):
NormalForm(m3, GB, T);

Two questions:

The algortihms that Groebner[Basis] uses at each step computes some "tentative" or "pseudo-basis". The "tentative" basis is not a Groebner basis but it is in the ideal generated by the original system of polynomial eq.

1) Is this correct ? Provided this is correct, then

2) How can one retrive the last "tentative" basis?
 If I just use timelimit I can abort the computations but how can one retrive the last computation?


I have been struggling (reading Ore/Weyl Algebra documentation) to understand how to input a PDE system with polynomial coeff. in Weyl algebra notation so I can compute a Groebner basis for it. I would be very grateful if someone could  show, using the simple example below, which differential operators in Ore_algebra[diff_algebra] should one declare to express the system in Weyl algebra notation. The systems I'm working are more complicated but all have many dependent variables, f and g functions in this example:

pdesys:= [ x*diff( f(x,y,z),x)- z*diff( g(x,y,z),y) = 0, (x^2-y)*diff( f(x,y,z),z)- y*diff( g(x,y,z),z) = 0 ]

DoExist := proc(tau, n)

if rtable_num_elems(tau) >= n then

        return tau[n];


        return 0;

end if;

end proc;


g1 := [0, y, x];

g2 := [0, y^2-x-y, 0];

g3 := [x, x+y, 0];

g4 := [y, -y, 0];

g5 := [0, x*y+x/2+y/2, 0];

g6 := [0, x^2-x/4-y/4, 0];


m1 := Basis(g1, tdeg...

g1 := Vector([1, 1]);g2 := Vector([x+y, 0]);g3 := Vector([y^2+1, 0]);g4 := Vector([0, y^3+y]);g5 := Vector([0, x-y]);

i pass and tdeg(x, y, h251, h252, h253, h254, h255) to Basis

failed in Maple 15

above link's comment said eliminate will NOT generate a polynomial in all cases

make me think that eliminate in above link can not return correct one.

what is the correct way to convert groebner basis of kernel into kernel?

the goal is to check kernel belong to image in Maple

K := {r-x^4,u-(x^3)*y,v-x*y^3,w-y^4};
G := Basis(K, 'tord', degrevlex(r,u,v,w));
R1 := eliminate(G, {r,u,v,w}); # eliminate is the reverse of Basis
Ga := Basis({a*G[1],a*G[2],a*G[3],a*G[4],a*G[5],a*G[6],a*G[7],a*G[8],a*G[9],a*G[10],a*G[11],a*G[12],a*G[13],a*G[14], (1-a)*K[1], (1-a)*K[2], (1-a)*K[3], (1-a)*K[4]}, 'tord', deglex(a,r,u,v,w));
Ga := remove(has, Ga, [x,y,a]);

below code is calculate basis of kernel and kernel

i guess basis of image is 

remove(has, Ga, [r,u,v,w]); if this correct, i eliminate this, i can get the image
however it include variable 'a'
is it correct? if not, how to calculate? 
my final goal is to make unexact sequence into exact sequence
g1 := x^2-w*y;
g2 := x*y-w*z;
g3 := y^2-x*z;
S13 := -y^3*w+x^3*z;
eq1:= S13 = h131*g1 + h132*g2 + h133*g3;

hsol := solve(identity(eq1, x), [h131, h132, h133]);
h131 should be x*z
h312 should be 0
h133 should be -y*w

3*rho1 - 2*rho2 + rho3 - rho4 = -1

4*rho1 +   rho2 - rho3        = 5

original without cost function:

K := {y1-(x1^3)*(x2^4),y2-(x2^(1+2))*(w^2),y3-(x1^(1+1))*(w^1),y4-(x2^1)*w,(y1^1000)*(y2^1)*(y3^1)*(y4^100)- x1*x2*w + 1};
G := Basis(K, plex(x1, x2, w, y1, y2, y3, y4));
Reduce((x2^(5+1))*(w^1), G, plex(x1, x2, w, y1, y2, y3, y4));

after have cost function 1000*rho1 + rho2...

Hello. I am trying to do a project. Howerver the following code is causing Windows 7(x64) to error.

First, I get a message from mserver.exe saying: mserver has stopped working.

I click "Close the program" and I get "Kernel connection has been lost."

This is happening when I calculate the Groebner Basis by the following code. It is all right when I calculate the Groebner Basis when the problem to be solved is simpler. The memory of my computer is...

1 2 Page 1 of 2