Opened 10 years ago
Closed 8 years ago
#509 closed bug (fixed)
bug in radicalZ
Reported by: | Owned by: | pfister | |
---|---|---|---|
Priority: | minor | Milestone: | Release 4-0-0 |
Component: | singular-libs | Version: | spielwiese |
Keywords: | zeroRad simplify infinite loop radicalZ | Cc: |
Description
Following example leads to an infinite loop in spielwiese (and also master branch), while not in 3.1.6.
LIB("primdecint.lib"); ring rng = integer,(a,b,c),dp; ideal i = a*a*b*b*b*b + c*c-1,4*a*a*b*b*b; radicalZ(i);
The infinite loop does not occur, when in primdec.lib::zeroRad the line
I=simplify(I,1);
is removed.
However, I do not understand the algoritm or the implications of this change and found the cause by comparing primdec.lib versions.
Jakob
Change History (5)
comment:1 Changed 10 years ago by
Owner: | changed from somebody to pfister |
---|
comment:2 follow-up: 3 Changed 10 years ago by
Patchvorschlag für Singular-spielwiese erstellt:
(https://github.com/Singular/Sources/pull/382) Grüße,
Jakob
comment:3 Changed 10 years ago by
Hmm,
Entschuldigung, Kommentar ungültig - gehört zum anderen Ticket (Namenskonflikt in zeroRad) Kann man Kommentare löschen?
Replying to anonymous:
Patchvorschlag für Singular-spielwiese erstellt:
(https://github.com/Singular/Sources/pull/382) Grüße,
Jakob
comment:4 Changed 10 years ago by
Anne hat sich das Problem angeschaut und ist zu folgendem Schluss gelangt:
Der Fehler wird durch die Kombination von 'simplify' und 'imap' in der Routine 'zeroRad' verursacht. Dabei bildet 'imap' sowohl in spielwiese als auch in dem master-Zweig Terme nicht korrekt ab (zumindest nicht so wie man es vielleicht erwarten würde), sobald im Nenner Parameternamen auftauchen.
Minimalbeispiel:
ring R = (2,a,c),(b),(C,dp(1)); ideal I= b^2+(c+1)/a; ring S = (2),(b,a,c),(dp(3)); ideal I = imap(R,I); I; // spielwiese: // I[1]=b2+c+1 // master, 3.1.6: // I[1]=b2
erster Lösungsvorschlag: Verzicht auf die simplify-Anweisung in 'zeroRad'.
comment:5 Changed 8 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
cannot reproduce it with 4-0-1
Gerhard, koenntest Du das bitte mal anschauen?