Georgi Guninski on Tue, 06 May 2014 09:53:49 +0200 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: Strange results in lower bound for regulator in bnfcertify() |
KASH3 computes better lower bound for regulator, but appears much slower. On Tue, May 06, 2014 at 09:34:19AM +0200, Karim Belabas wrote: > * Georgi Guninski [2014-05-06 08:33]: > > 2.5.5 on linux x86_64. > > > > With debug info the lower bound for the regulator > > in bnfcertify() is greater than the regulator. > > > > Why so? > > This is due to an incorrect use of fudge factors in minimforunits(), > which returns > m := min_{u unit, not a root of 1} T_2(u). > > This is done using a variant of qfminim() which (since T_2 can in general > only be approximated and not computed exactly) actually computes, for > a know unit u_0, > > min_{T_2(u) < T_2(u_0) * (1 + epsilon), u unit} T_2(u) > > i.e. possibly > > m * (1 + epsilon). > > i.e. an upper bound for m (but very close to m). This was harmless in > our application since this is only used to approximate a rational > integer via rounding, and the epsilon cannot change that value. > > I just changed that code so that the routine returns an acctual lower > bound (but very close to m). > > Cheers, > > K.B. > > P.S. See also > > http://pari.math.u-bordeaux1.fr/archives/pari-dev-1207/msg00013.html > > This lower bound implementation should be rewritten, since the original > author no longer supports it, we have no written reference for it, and > the Magma implementation (for which there is a good published reference) > is quite a bit faster. Not enthusiastic about doing it myself: been > aware of the issue since 1995, postponed fixing it since then. I'll open > an issue in the BTS shortly. > > -- > Karim Belabas, IMB (UMR 5251) Tel: (+33) (0)5 40 00 26 17 > Universite Bordeaux 1 Fax: (+33) (0)5 40 00 69 50 > 351, cours de la Liberation http://www.math.u-bordeaux1.fr/~kbelabas/ > F-33405 Talence (France) http://pari.math.u-bordeaux1.fr/ [PARI/GP] > `