Karim Belabas on Tue, 16 Aug 2016 11:26:23 +0200

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

Re: Making idealmoddivisor_aux public

* Karim Belabas [2016-08-16 10:59]:
> * Robert Harron [2016-08-16 05:30]:
> > I'm writing code for computing ray class groups and Hecke characters in Sage
> > mostly by wrapping the functions in the pari c library. One particular
> > function I've had to write myself is the one that takes an ideal I and
> > returns a 'small' ideal equivalent I modulo the given modulus (Algorithm
> > 4.3.4 of Henri Cohen's Advanced topics book). I did however find that there
> > is a function in the pari source code that does this: idealmoddivisor_aux in
> > the file buch3.c. I was wondering if it would be possible to make a public
> > version of this function in the pari library, perhaps just adding a modulus
> > argument to idealred. It's pretty essential for making efficient
> > computations in the ray class group and I'm sure the pari library version
> > would be quicker than what I've written!
> This function is certainly not essential; in fact, it was implemented as
> a proof of concept then discarded for uselessness: it's a red herring.
> The documentation of idealmoddivisor(), the public function doing what
> you require, comments as follows: "a proof-of-concept implementation,
> useless in practice".
> I agree that all this should be better documented :-)

Of course, in order to "compute in ray class groups", the simplest (and
usually best) solution is to directly use bnrisprincipal() and express
everything in terms of discrete logs. That's how Hecke characters
(currently of finite order) are implemented in PARI.

In short, we'll need to know more about what you actually need, and why.


Karim Belabas, IMB (UMR 5251)  Tel: (+33) (0)5 40 00 26 17
Universite de Bordeaux         Fax: (+33) (0)5 40 00 69 50
351, cours de la Liberation    http://www.math.u-bordeaux.fr/~kbelabas/
F-33405 Talence (France)       http://pari.math.u-bordeaux.fr/  [PARI/GP]