Opened 13 years ago

Closed 13 years ago

## #245 closed bug (fixed)

# slimgb bug over the integers

Reported by: | Simon King | Owned by: | hannes |
---|---|---|---|

Priority: | major | Milestone: | 3-1-2 and higher |

Component: | singular-kernel | Version: | 3-1-1 |

Keywords: | Cc: |

### Description

Apparently, Singular does not guarantee that slimgb works over the integers. Nevertheless, I think the following small example should work.

> ring R = integer, (x,y), dp; // ** You are using coefficient rings which are not fields. // ** Please note that only limited functionality is available // ** for these coefficients. // ** // ** The following commands are meant to work: // ** - basic polynomial arithmetic // ** - std // ** - syz // ** - lift // ** - reduce > ideal i = 4*x^2*y^2+2*x*y^3+3*x*y,2*x^2+x*y,2*y^2; > ideal G1 = std(i); G1; G1[1]=2y2 G1[2]=3xy G1[3]=2x2+xy G1[4]=xy2 G1[5]=x2y > ideal G2 = slimgb(i); G2; G2[1]=2y2 G2[2]=2x2+xy G2[3]=3xy

Why do I believe that std is right and slimgb is wrong?

> NF(G2,G1); _[1]=0 _[2]=0 _[3]=0 > NF(G1,G2); _[1]=0 _[2]=0 _[3]=0 _[4]=xy2 _[5]=x2y

Do `x*y^2`

and `x^2*y`

really belong to the ideal? Yes, they do!

> y*i[1] - 2*y^3*i[2] - x*i[3]; xy2 > -x*i[1] + 2*y*i[2] + (2*x^3+x^2*y-x)*i[3]; x2y

**Note:**See TracTickets for help on using tickets.

if the coefficient does not form a field, a different, at least extended algorithm has to be used - it is not only a question of the arithmetic. Therefore, calling slimgb in the case above yields (now) an error.