Karim Belabas on Mon, 01 Mar 2004 15:10:49 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: bnfsunit |
* Olivier Wittenberg [2004-03-01 14:54]: > bnfinit has an option (flag 1) to force the computation of a system of > fundamental units, but bnfsunit doesn't have one. I guess that's why > bnfsunit sometimes aborts with "missing units in bnfnewprec" (I'm > using Pari 2.2.7 alpha). Is there a good reason for this discrepancy ? > How can I otherwise force the computation of a system of fundamental > S-units ? bnfsunit's first argument is a bnf. When you get this message, just make sure that this bnf contains fundamental units. E.g bnf = bnfinit(pol, 1); bnfsunit(bnf, S) The units in exact form are a priori not needed for this computation. You get the error when the input is known to insufficient accuracy and some data needs to be recomputed to higher precision. For _this_ the exact units are needed. Note that computing fundamental units in exact form may be a very costly process ( a theorem of Lenstra says the units are generated by elements of small height, but the generators of a _minimal_ system have huge height if the regulator is large ) Cheers, Karim. -- Karim Belabas Tel: (+33) (0)1 69 15 57 48 Dep. de Mathematiques, Bat. 425 Fax: (+33) (0)1 69 15 60 19 Universite Paris-Sud http://www.math.u-psud.fr/~belabas/ F-91405 Orsay (France) http://pari.math.u-bordeaux.fr/ [PARI/GP]