Igor Schein on Tue, 10 Sep 2002 18:55:40 -0400 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: bnfisnorm() broken again |
On Tue, Sep 10, 2002 at 04:49:58PM +0200, Karim BELABAS wrote: > On Mon, 9 Sep 2002, Igor Schein wrote: > > On Tue, Sep 10, 2002 at 03:38:40AM +0200, Karim BELABAS wrote: > > > On Mon, 9 Sep 2002, Igor Schein wrote: > > > > ? bnfisnorm(bnfinit(x^3-2),5) > > > > *** division by zero in dvmdii > > > > > > A few oversights in the new implementation of rnfisnorm in the non-Galois > > > case [had forgotten to test it over Q except for quadratic fields...] > > > > > > Fixed. > > > > How about this: > > > > ? bnfisnorm(bnfinit(x^3-x-1),13) > > *** incorrect type in lift. > > Right, the special case where the solution is trivial (rnfisnorm(x) --> [1,x]). > The code over Q in bnfisnorm() did not handle it properly. > > Note: in the CVS code, bnfisnorm is quite useless [ it used to be justified > by the weird input format for rnfisnorm ]. > > N = rnfisnorminit(y, x^3-x-1); [ or rnfisnorminit(y, bnf) if you wish ] > rnfisnorm(N, 13); > > works just as well. And is faster since bnfisnorm is a trivial wrapper for > the above code anyway [ N is (a little) costly to compute, esp. if you give > bnfisnorm a bnf which is Galois over Q, and do not use the right flag to > mention that fact ]. ? rnfisnorm(rnfisnorminit(y^2 + 29*y + 21,x^3 - 10*x^2 - 3*x - 5),2) *** precision too low in isunit. Looks like internal precision is used to compute units, and user cannot influence it. Also, I can't figure out which flags to use to speed up rnfisnorminit() in the example above. Thanks Igor