Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Why does a message "// ** redefining ..." show up when computing the dimension of an ideal?

I was receiving these weird messages when running the following Sage code - but not every time: When I executed it again, it just went through without any messages.

S.<x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11> =PolynomialRing(GF(2),11)
dims=Set([])
s=0
for j in newdivs:
   s=s+1
   if mod(s,10)==0:
       print(s)
   aux=j
   sdivs=[]
   for k in aux:
      if k((0,0,0,0,0,0,0,0))==0:
          sdivs.append(k)
   sdivs.append(f1)
   sdivs.append(f2)
   sdivs.append(1+x9*(1+x3))
   sdivs.append(1+x10*(1+x6))
   sdivs.append(1+x11*(1+x4*x5))
   IS=S.ideal(sdivs)
   di=IS.dimension()
   if di>4:
       print di
   dims=dims.union(Set([di]))

(To understand the code: f1 and f2 are two very long polynomials in S, and newdivs contains 500 of the factors of the 2x2-minors of the Jacobian matrix of f1 and f2...) The first time I run it, I got this output:

// ** redefining # **
// ** redefining P **
// ** redefining i **
// ** redefining method **
// ** redefining Method **
// ** redefining k **
// ** redefining Minpoly **
// ** redefining was_minpoly **
// ** redefining Qideal **
// ** redefining was_qring **
// ** redefining BRlist **
// ** redefining ord_P **
// ** redefining ordstr_P **
// ** redefining nvars_P **
// ** redefining npars_P **
// ** redefining w **
// ** redefining neg **
// ** redefining opt **
// ** redefining s_opt **
// ** redefining p_opt **
// ** redefining algorithm **
// ** redefining conversion **
// ** redefining partovar **
// ** redefining order **
// ** redefining direct **
10
20
...

The second time, the messages with "// ** redefining" didn't show up anymore. But maybe it is important to not ignore those messages, so what do they mean?

Thanks in advance!

Why does a message "// ** redefining ..." show up when computing the dimension of an ideal?

I was receiving these weird messages when running the following Sage code - but not every time: When I executed it again, it just went through without any messages.

S.<x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11> =PolynomialRing(GF(2),11)
dims=Set([])
s=0
for j in newdivs:
   s=s+1
   if mod(s,10)==0:
       print(s)
   aux=j
   sdivs=[]
   for k in aux:
      if k((0,0,0,0,0,0,0,0))==0:
          sdivs.append(k)
   sdivs.append(f1)
   sdivs.append(f2)
   sdivs.append(1+x9*(1+x3))
   sdivs.append(1+x10*(1+x6))
   sdivs.append(1+x11*(1+x4*x5))
   IS=S.ideal(sdivs)
   di=IS.dimension()
   if di>4:
       print di
   dims=dims.union(Set([di]))

(To understand the code: f1 and f2 are two very long polynomials in S, and newdivs contains 500 of the factors of the 2x2-minors of the Jacobian matrix of f1 and f2...) The first time I run it, I got this output:

// ** redefining # **
// ** redefining P **
// ** redefining i **
// ** redefining method **
// ** redefining Method **
// ** redefining k **
// ** redefining Minpoly **
// ** redefining was_minpoly **
// ** redefining Qideal **
// ** redefining was_qring **
// ** redefining BRlist **
// ** redefining ord_P **
// ** redefining ordstr_P **
// ** redefining nvars_P **
// ** redefining npars_P **
// ** redefining w **
// ** redefining neg **
// ** redefining opt **
// ** redefining s_opt **
// ** redefining p_opt **
// ** redefining algorithm **
// ** redefining conversion **
// ** redefining partovar **
// ** redefining order **
// ** redefining direct **
10
20
...

The second time, the messages with "// ** redefining" didn't show up anymore. But maybe it is important to not ignore those messages, so what do they mean?

Thanks in advance!

Why does a message do messages "// ** redefining ..." show up when computing the dimension of an ideal?

I was receiving these weird messages when running the following Sage code - but not every time: When I executed it again, it just went through without any messages.

S.<x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11> =PolynomialRing(GF(2),11)
dims=Set([])
s=0
for j in newdivs:
   s=s+1
   if mod(s,10)==0:
       print(s)
   aux=j
   sdivs=[]
   for k in aux:
      if k((0,0,0,0,0,0,0,0))==0:
          sdivs.append(k)
   sdivs.append(f1)
   sdivs.append(f2)
   sdivs.append(1+x9*(1+x3))
   sdivs.append(1+x10*(1+x6))
   sdivs.append(1+x11*(1+x4*x5))
   IS=S.ideal(sdivs)
   di=IS.dimension()
   if di>4:
       print di
   dims=dims.union(Set([di]))

(To understand the code: f1 and f2 are two very long polynomials in S, and newdivs contains 500 of the factors of the 2x2-minors of the Jacobian matrix of f1 and f2...) The first time I run it, I got this output:

// ** redefining # **
// ** redefining P **
// ** redefining i **
// ** redefining method **
// ** redefining Method **
// ** redefining k **
// ** redefining Minpoly **
// ** redefining was_minpoly **
// ** redefining Qideal **
// ** redefining was_qring **
// ** redefining BRlist **
// ** redefining ord_P **
// ** redefining ordstr_P **
// ** redefining nvars_P **
// ** redefining npars_P **
// ** redefining w **
// ** redefining neg **
// ** redefining opt **
// ** redefining s_opt **
// ** redefining p_opt **
// ** redefining algorithm **
// ** redefining conversion **
// ** redefining partovar **
// ** redefining order **
// ** redefining direct **
10
20
...

The second time, the messages with "// ** redefining" didn't show up anymore. But maybe it is important to not ignore those messages, so what do they mean?

Thanks in advance!