Project

General

Profile

Bug #1064

Bug in MinPolyModular (ugly prime)

Added by Anna Maria Bigatti about 7 years ago. Updated over 6 years ago.

Status:
Closed
Priority:
Normal
Category:
Improving
Target version:
Start date:
10 May 2017
Due date:
% Done:

100%

Estimated time:
6.01 h
Spent time:

Description

The (rare) error thrown by apply for an ugly prime in MinPolyModular was not caught.
I fixed one, but look around for similar cases.

This was the example:

use R ::= QQ[X0,X1,X2,X3,X4,X5,X6];
I := ideal(X3^3 +X0*X3*X4 +X4^3,
  -1161*X0*X1*X3 -2780*X0*X2*X3 +2211*X0*X4^2 -2211*X1*X4^2 +1923*X0*X3*X5 +X3*X5^2,
  -1600*X0^6*X1*X3 -3654*X0^6*X2*X3 +1289*X0^6*X4^2 -7734*X0^5*X2*X4^2 +19335*X0^4*X2^2*X4^2 -25780*X0^3*X2^3*X4^2 +19335*X0^2*X2^4*X4^2 -7734*X0*X2^5*X4^2 +1289*X2^6*X4^2 -2491*X0^6*X3*X6 +X3*X6^7,
   2953*X0 -2053*X1 +748*X2 -2764*X3 +4076*X4 -2852*X5 -3210*X6,
  -4139*X0 -3398*X1 -3183*X2 -2475*X3 -595*X4 +544*X5 -3770*X6,
  3722*X0 -353*X1 +1144*X2 -2464*X3 +3447*X4 -2680*X5 +3980*X6,
  4072*X0 -1053*X1 +3763*X2 +3453*X3 -775*X4 -1300*X5 -1041*X6,
  3852*X0 +3828*X1 +3671*X2 -1933*X3 +1713*X4 -3022*X5 -148*X6);
IsRadical(I); --> error


Related issues

Related to CoCoA-5 - Bug #1062: IsRadical bug?Closed2017-05-09

Related to CoCoALib - Design #1065: Design: should we allow an ideal to change ring?Closed2017-05-11

History

#1 Updated by Anna Maria Bigatti about 7 years ago

#3 Updated by Anna Maria Bigatti about 7 years ago

and add test!

#4 Updated by John Abbott about 7 years ago

  • Status changed from New to In Progress

The following fails for me:

use QQ[X0,X1,X2,X3];
J := ideal(X2^3 +X0*X1*X3 +X3^3,  -3*X0*X2*X3 +X2^2*X3,  7*X0 +3*X1 +X2 -9*X3,  -X0 +6*X1 +3*X2 +3*X3);
IsRadical(J);

#5 Updated by Anna Maria Bigatti about 7 years ago

I have some trouble writing a bit of code because I cannot redefine an ideal in another ring.
Should we allow that, as we did for RingElem?
Making new issue.

#6 Updated by Anna Maria Bigatti about 7 years ago

  • Related to Design #1065: Design: should we allow an ideal to change ring? added

#7 Updated by Anna Maria Bigatti about 7 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 10 to 80

fixed, cvs-ed

#8 Updated by Anna Maria Bigatti about 7 years ago

Added the error ERR::CannotReconstruct and cleaned up the code accordingly (also for similar try/catch code in Implicit).

#9 Updated by Anna Maria Bigatti about 7 years ago

  • Status changed from Resolved to Feedback
  • % Done changed from 80 to 90

Completed similar checks for implicit as well.
Cleaned up, added tests for implicit.

#10 Updated by Anna Maria Bigatti about 7 years ago

  • Estimated time set to 5.01 h

#11 Updated by Anna Maria Bigatti about 7 years ago

  • Estimated time changed from 5.01 h to 6.01 h

Changed the code so that ugly primes are detected cleanly from checking divisibility, instead of using try/catch. Added cocoa-5 test in anna.cocoa5.
Modified implicit accordingly.

#12 Updated by John Abbott about 7 years ago

  • Status changed from Feedback to In Progress
  • % Done changed from 90 to 70

The following example gives SEGV on the latest internal version of CoCoA:

use R ::= QQ[X0,X1,X2,X3,X4,X5,X6];
I := ideal(X3^3 +X0*X3*X4 +X4^3,  X0*X1*X3 +X3*X5^2,  -X0^6*X1*X3 +X3*X6^7,
           X0 -X1 -X2 -X3 -X5 -X6,  -X2 +X5 +X6,  -X0 -X5 -X6,  X1 -X2 +X3 -X6,  X1 -X2 +X3 -X5);

IsRadical(I);

UPDATE NOW it seems to be OK... not sure what happened!

#13 Updated by John Abbott about 7 years ago

  • Status changed from In Progress to Feedback
  • % Done changed from 70 to 90

#14 Updated by John Abbott over 6 years ago

  • Status changed from Feedback to Closed
  • % Done changed from 90 to 100

Also available in: Atom PDF