Karim BELABAS on Sun, 30 Nov 2003 21:11:11 +0100

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

Re: Computing a system of fundamental units

On Sun, 30 Nov 2003, McLaughlin, James wrote:
> I have an irreducible polynomial in Z[x], P say, of degree 31 or higher
> and I want to compute a system of fundamental units for the number filed K
> defined by this polynomial over Q.
> I know that
>   bnfinit(P,1)[8][5]
> will output a set of fundamental units

bnfinit(P, 1).fu looks nicer.

And will not break when the representation changes [ as it should since some
of the data inside bnf structure is obsolete and nowadays unused ]

> but I am wondering if there is a more efficient/less time-consuming way to
> do it, since I do not need any of the other information that bnfinit
> generates about K.
> Can anyone suggest some more efficient code?

If you happen to know the regulator in advance, then shortcuts are available.
Esp. if the fundamental units have small height.

Is it the case, or do you require a general purpose algorithm ? (in the
latter case, this looks hopeless).

Note that the CVS version is much more efficient for these computations than
any of the released versions. (Especially if the units are huge.)

In case of trouble with the CVS version, you can send me your polynomial of
degree 31.


Karim Belabas                     Tel: (+33) (0)1 69 15 57 48
Dép. de Mathématiques, Bât. 425   Fax: (+33) (0)1 69 15 60 19
Université Paris-Sud              http://www.math.u-psud.fr/~belabas/
F-91405 Orsay (France)            http://pari.math.u-bordeaux.fr/  [PARI/GP]