Karim Belabas on Mon, 19 Aug 2002 14:32:32 +0200 (CEST)


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: bnrL1() bug


[Xavier]
> did I miss the email about the fix for this bug:

Hi,

  I have temporarily lost access to my main accounts (ssh misconfigured,
presumably) and I've done a lot of work with CVS from my home machine, before
noticing I couldn't announce my changes [ I'm stealing an email account for
this answer, I saw your message by checking the pari-dev archive. I've no
access to my mailbox... ].

Quick list (hopefully, I'll be able to elaborate in a few days):

* bnrL1(bnrinit(bnfinit(y^2+6),1,1),0) --> fixed

* Ilya's mneumonic patch --> fixed a typo (no-xxx didn't work) + commited and
documented [ cf ploth, log, and the beginning of Chapter 3. ]

* setrand(1);rnfkummer(bnrinit(bnfinit(y^4-52*y^2+26),3,1),Mat(5));
  ***   impossible inverse modulo: Mod(231823679907682208641, 110164365510974367531382734601).

--> not a bug but incredible lack of luck (using lazy factorization, with a
dummy "prime" actually being detected!). I've trapped the "impossible
inverse" error in allbase() [ = ROUND 4 ] to add new primes to the
factorization as they are found and go on. So the problem is fixed.

* setrand(1);rnfkummer(bnrinit(bnfinit(quadpoly(4760,y)),23,1),matdiagonal([3,1,1])) --> 0

--> very tough bug. It's the first recorded instance of bnfinit actually
giving a wrong answer because we cheat on Bach's constant [ should be 12
log^2 D under GRH, we use 0.3 log^2 D ]. Namely:

setrand(3); bnfinit(y^4 + 1190*y^2 + 1416100).cyc
  --> [8, 2, 2, 2] \\ WRONG

setrand(3); bnfinit(y^4 + 1190*y^2 + 1416100,,[0.6]).cyc,,[0.6]).cyc
  --> [8, 4, 2] \\ OK

Trivial to correct [ use correct bound! ], BUT would slow down immensely most
bnfinit computations ! Certifying the result (bnfcertify) is not an option
either.


--
Karim Belabas                    Tel: (+33) (0)1 69 15 57 48
Dép. de Mathematiques, Bat. 425  Fax: (+33) (0)1 69 15 60 19
Université Paris-Sud             Email: Karim.Belabas@math.u-psud.fr
F-91405 Orsay (France)           http://www.math.u-psud.fr/~belabas/
--
PARI/GP Home Page: http://www.parigp-home.de/