Opened 13 years ago

Closed 13 years ago

#195 closed bug (fixed)

zero coefficients after differentiation in positive characteristic

Reported by: Forum Owned by: hannes
Priority: minor Milestone: 3-1-1
Component: dontKnow Version: 3-1-0
Keywords: diff Cc:


Hello all,

this seems to be a bug in the second variant of diff. Consider:

ring r=2,(x),dp; print(diff(x2,x)); -> 0 print(diff(ideal(x),ideal(x2))); BUG: 0x print(diff(ideal(x),ideal(x2+x,x4+x))); BUG: 0x+1,0x3+1

It seems to forget to check the resulting coefficient to be zero. Must be easy to fix by looking at the 1st variant.

Sincerely Yours,

Oleksandr Motsak

On Tue, Jan 12, 2010 at 8:37 PM, <owner-singular-team@…> wrote:


Alexander kedlaya

Post subject: Differentiation in positive characteristic

Posted: Tue Jan 12, 2010 6:42 pm

I believe I have found a bug in the command "diff", when working in positive characteristic.

The command "diff" can be used in two different ways. One is to differentiate with respect to a single variable at a time, and this seems to work fine also in positive characteristic.

ring r=0,(x,y),dp; print(diff(x2,x));


ring r=2,(x,y),dp; print(diff(x2,x));


The other is to differentiate several polynomials with respect to several variables, and this seems to have trouble in positive characteristic. (Note that the syntax is reversed in this usage, with the variables coming first. I find that odd, but it's not the issue at hand.)

ring r=0,(x,y),dp; ideal H = x,y; ideal I = x2,y2; print(diff(H,I));

2x,0, 0, 2y

ring r=2,(x,y),dp; ideal H = x,y; ideal I = x2,y2; print(diff(H,I));

0x,0, 0, 0y

The trouble is that the diagonal entries are supposed to be zero. Their coefficients have been reduced modulo 2, but the resulting zeroes have not been removed. In fact, they are not recognized as being equal to zero!

print(diff(H,I)[1,1] != 0);

1 -- Dr. rer. nat. Dipl.-Math. Alexander Dreyer

Abteilung "Systemanalyse, Prognose und Regelung" Fraunhofer Institut für Techno- und Wirtschaftsmathematik (ITWM) Fraunhofer-Platz 1 67663 Kaiserslautern

Telefon +49 (0) 631-31600-4318 Fax +49 (0) 631-31600-1099 E-Mail alexander.dreyer@… Internet

Change History (2)

comment:1 Changed 13 years ago by hannes

Owner: changed from somebody to hannes

comment:2 Changed 13 years ago by hannes

Resolution: fixed
Status: newclosed

fixed, test file added

Note: See TracTickets for help on using tickets.