Processing math: 100%

First time here? Check out the FAQ!

Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

answered 6 years ago

dan_fulea gravatar image

I will start an answer, but the question is not clear to me at all.

First of all, what i understand.

Let R be the ring R=F2[x,y,z] fixed once for all times here to have an easy typing. Now we consider a submodule of a free module over R. It is not clear for me, if we work with the submodule L=[R R R][0001+x+y+xy1+y+z+yz1+x+z+xz1+z1+x000001+x1+y000] of the "free row module" [R R R R R R]=R6, or rather with the submodule M=[0001+x+y+xy1+y+z+yz1+x+z+xz1+z1+x000001+x1+y000][RRRRRR] of the "free column module" [RRR]=R3, but in both cases we can do the same with the corresponding module Rn. (Here, n is either 3 or 6.) The wiki page Gröbner basis tells us to look at the ring RRn, with the one from R0 and so that multiplying two elements of 0Rn we get zero. In sage, we can use for this the ring Q from

sage: R.<x,y,z,E1,E2,E3> = PolynomialRing(GF(2))
sage: R
Multivariate Polynomial Ring in x, y, z, E1, E2, E3 over Finite Field of size 2
sage: Q = R.quotient( [e*ee for e in [E1,E2,E3] for ee in [E1,E2,E3]] ) 
sage: Q
Quotient of Multivariate Polynomial Ring in x, y, z, E1, E2, E3 
over Finite Field of size 2 
by the ideal (E1^2, E1*E2, E1*E3, E1*E2, E2^2, E2*E3, E1*E3, E2*E3, E3^2)

Above, i took n=3 and there were also some manual rearrangements of output....

We now "only have to implement the generators" of RRn correspondingly, and ask for the Gröbner basis. So here is the one possibility with n=6, if i correctly understood the submodule.

Then one can try:

sage: R.<x,y,z,E1,E2,E3,E4,E5,E6> = PolynomialRing(GF(2))
sage: E_List = [E1, E2, E3, E4, E5, E6]
sage: A = matrix(R, 3, 6, 
....:     [0,0,0,(1+x)*(1+y),(1+y)*(1+z),(1+z)*(1+x),
....:      1+z,1+x,0,0,0,0,
....:      0,1+x,1+y,0,0,0])
sage: gens = [e*ee for e in E_List for ee in E_List] + list(A*vector(R, E_List))
sage: Q = R.quotient(gens)
sage: J = R*gens
sage: J.groebner_basis()
Polynomial Sequence with 24 Polynomials in 9 Variables

(I have to submit... loosing connection soon...)