Hello,
I have a system of 11 quadratic equations over GF(2) in 8 variables. I
compute it's groebner basis. The ideal generated by it has dimension 0
so I compute its variety. It results in 16 solutions (16 possible sets
of values for the 8 variables). I take one of the solutions and then i
replace half of the variables of my system (ie. 4 variables) with
their respective values from the taken solution. This results in a new
system of equations of 4 variables.
The dimension of the ideal of the groebner basis of the new system is
4 and not 0? Why?
I would like to compute the variety of the new system and I would
expect to find the solution of the other half of the variables.
However the dimension of the ideal is 4 and i cannot compute the
variety. Why the ideal dimension is 4, when it was 0 in the very
beginning? Does ideal dimension 4 mean that i have infinite number of
solutions? If yes, how is it possible when i see that there are
exactly 16 solutions?
Please see next for a specific example:
I define
P = PolynomialRing(GF(2), N, 'x',order='lex')
I have a system of 11 quadratic equations over GF(2) in 8 variables.
sage: e
[x0*x4 + x0*x5 + x0*x7 + x0 + x1*x4 + x1*x5 + x1 + x2*x4 + x2*x7 +
x3*x6 + x3*x7 + x3,
x0*x4 + x0*x5 + x0*x6 + x1*x4 + x1*x5 + x1*x7 + x1 + x2*x4 + x2*x5 +
x2 + x3*x4 + x3*x7,
x0*x5 + x0*x6 + x0*x7 + x1*x4 + x1*x5 + x1*x6 + x2*x4 + x2*x5 + x2*x7
+ x2 + x3*x4 + x3*x5 + x3,
x0*x4 + x0*x6 + x0*x7 + x1*x4 + x1*x5 + x1*x6 + x2*x4 + x2*x5 + x2 +
x3*x6 + x3*x7 + x3,
x0*x4 + x0*x5 + x0*x7 + x0 + x1*x4 + x1*x7 + x1 + x2*x7 + x3*x4 +
x3*x6 + x3,
x0*x4 + x0*x5 + x0*x6 + x1*x4 + x1*x5 + x1 + x2*x6 + x2*x7 + x3*x5 +
x3*x7 + x3,
x0*x5 + x0*x6 + x0*x7 + x1*x4 + x1*x5 + x1*x7 + x1 + x2*x4 + x2*x7 +
x3*x7 + x3,
x0*x5 + x0*x7 + x0 + x1*x5 + x1*x6 + x1*x7 + x2*x4 + x2*x6 + x2 +
x3*x4 + x3*x5 + x3*x6 + x4 + x6 + x7 + 1,
x0*x4 + x0*x5 + x0*x6 + x1*x6 + x1 + x2*x4 + x2*x5 + x2*x7 + x2 +
x3*x5 + x3 + x4 + x5 + x7 + 1,
x0*x4 + x0*x6 + x0 + x1*x4 + x1*x5 + x1*x6 + x2*x6 + x2 + x3*x4 +
x3*x5 + x3*x7 + x3 + x4 + x5 + x6,
x0*x5 + x0*x6 + x0*x7 + x1*x4 + x1*x6 + x1 + x2*x4 + x2*x5 + x2*x6 +
x3*x6 + x3 + x5 + x6 + x7]
sage:
The ideal generated by the polynomials in e has dimension 0:
sage: I = ideal(e)
sage: I.dimension()
0
sage:
The ideal of the groebner basis of I has also dimension 0:
sage: G=I.groebner_basis()
sage: I2=ideal(G)
sage: I2.dimension()
0
sage:
So i compute the variety V of I2:
sage: V=I2.variety()
sage: V
[{x1: 1, x0: 0, x3: 1, x2: 1, x5: 0, x4: 0, x7: 0, x6: 0}, {x1: 0, x0:
1, x3: 1, x2: 1, x5: 0, x4: 1, x7: 0, x6: 0}, {x1: 0, x0: 0, x3: 0,
x2: 1, x5: 1, x4: 0, x7: 0, x6: 0}, {x1: 0, x0: 0, x3: 1, x2: 1, x5:
1, x4: 1, x7: 0, x6: 0}, {x1: 1, x0: 1, x3: 0, x2: 0, x5: 0, x4: 0,
x7: 0, x6: 1}, {x1: 1, x0: 0, x3: 0, x2: 0, x5: 0, x4: 1, x7: 0, x6:
1}, {x1: 0, x0: 0, x3: 0, x2: 0, x5: 1, x4: 0, x7: 0, x6: 1}, {x1: 1,
x0: 0, x3: 0, x2: 1, x5: 1, x4: 1, x7: 0, x6: 1}, {x1: 1, x0: 1, x3:
1, x2: 1, x5: 0, x4: 0, x7: 1, x6: 0}, {x1: 0, x0: 0, x3: 1, x2: 0,
x5: 0, x4: 1, x7: 1, x6: 0}, {x1: 1, x0: 1, x3: 0, x2: 1, x5: 1, x4:
0, x7: 1, x6: 0}, {x1: 0, x0: 1, x3: 0, x2: 0, x5: 1, x4: 1, x7: 1,
x6: 0}, {x1: 1, x0: 1, x3: 1, x2: 0, x5: 0, x4: 0, x7: 1, x6: 1}, {x1:
0, x0: 1, x3: 1, x2: 0, x5: 0, x4: 1, x7: 1, x6: 1}, {x1: 0, x0: 1,
x3: 0, x2: 1, x5: 1, x4: 0, x7: 1, x6: 1}, {x1: 1, x0: 0, x3: 1, x2:
0, x5: 1, x4: 1, x7: 1, x6: 1}]
sage:
What i do next i set:
x[0]=P(0)
x[1]=P(1)
x[4]=P(1)
x[5]=P(0)
Then my new system is:
sage: e
[x2*x7 + x2 + x3*x6 + x3*x7 + x3,
x3*x7 + x3 + x7,
x2*x7 + x6 + 1,
x3*x6 + x3*x7 + x3 + x6 + 1,
x2*x7 + x3*x6 + x7,
x2*x6 + x2*x7 + x3*x7 + x3,
x2*x7 + x2 + x3*x7 + x3 + x7,
x2*x6 + x3*x6 + x3,
x2*x7 + x3 + x6 + x7 + 1,
x2*x6 + x2 + x3*x7,
x2*x6 + x2 + x3*x6 + x3 + x7]
sage:
Its ideals dimension is 4:
sage: I=ideal(e)
sage: I.dimension()
4
sage:
Its groebner basis is:
sage: G=I.groebner_basis()
sage: G
[x7, x6 + 1, x3, x2 + x3*x6 + x3*x7 + x3]
sage:
The dimension of the ideal generated by G is also 4 and i cannot
compute the variety:
sage: I2=ideal(G)
sage: I2.dimension()
4
sage: V=I2.variety()
---------------------------------------------------------------------------
TypeError Traceback (most recent call
last)
/home/vvesseli/sage/sage-3.1.2/<ipython console> in <module>()
/home/vvesseli/sage/sage-3.1.2/local/lib/python2.5/site-packages/sage/
rings/polynomial/multi_polynomial_ideal.py in variety(self, ring)
1465 P = self.ring()
1466 if ring is not None: P = P.change_ring(ring)
-> 1467 T =
self.triangular_decomposition('singular:triangLfak')
1468
1469 V = []
/home/vvesseli/sage/sage-3.1.2/local/lib/python2.5/site-packages/sage/
rings/polynomial/multi_polynomial_ideal.py in
triangular_decomposition(self, algorithm, singular)
702
703 if I.dimension() != 0:
--> 704 raise TypeError, "dimension must be zero"
705
706 Ibar = I._singular_()
TypeError: dimension must be zero
sage:
How can i solve e for the rest of the variables? It is obvious that G
has a unique solution:
sage: G
[x7, x6 + 1, x3, x2 + x3*x6 + x3*x7 + x3]
sage:
Why can't I find it with I2.variety()?
Thanks for your help!
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---