Opened 12 years ago

# [with patch, needs review] a bug in polynomial() for PolynomialRing(GF(5),2) — at Version 3

Reported by: Owned by: klee Somebody minor sage-4.0 basic arithmetic

This works:

```sage: R.<x,y>=PolynomialRing(QQ,2)
sage: a=x^2+x*y+y
sage: a.polynomial(x)
x^2 + y*x + y

But this does not work:

sage: R.<x,y>=PolynomialRing(GF(5),2)
sage: a=x^2+x*y+y
sage: a.polynomial(x)
Traceback (most recent call last):
...
TypeError: 'tuple' object cannot be interpreted as an index
```

I traced this bug, and found that

```sage: B=QQ[x]
sage: print B({0:1,1:2})
2*x + 1
sage: print B({(0,):1,(1,):2})
2*x + 1
sage: B=GF(5)[x]
sage: print B({0:1,1:2})
2*x + 1
sage: print B({(0,):1,(1,):2})
Traceback (most recent call last):
...
TypeError: 'tuple' object cannot be interpreted as an index
```

I think the second form is not acceptable. Then the function remove_from_tuple() in sage.rings.polynomial.multi_polynomial.pyx should be revised as it output (1,) from (1,2) for example.

### comment:1 Changed 12 years ago by mabshoff

• Component changed from algebra to basic arithmetic
• Milestone changed from sage-4.0 to sage-4.0.1
• Summary changed from a bug in polynomial() to a bug in polynomial() for PolynomialRing(GF(5),2)

### comment:2 Changed 12 years ago by klee

• Description modified (diff)
• Summary changed from a bug in polynomial() for PolynomialRing(GF(5),2) to [with patch, needs review] a bug in polynomial() for PolynomialRing(GF(5),2)

### comment:3 Changed 12 years ago by klee

• Description modified (diff)

### Changed 12 years ago by mhansen

Note: See TracTickets for help on using tickets.