Gerhard Niklasch on Mon, 29 Jun 1998 16:54:47 +0200 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: 2.0.9 comments/bugs |
In response to: > Message-Id: <5520.199806291430@omega.ex.ac.uk.maths.exeter.ac.uk> > Date: Mon, 29 Jun 1998 16:30:07 +0200 > From: "John Cremona (Maths)" <cremona@noether.ex.ac.uk> Thanks for the feedback! (It's been eerily quiet on this list all the last week...) > 1. "make" in examples gives compiler warning and the executable > crashes: Found also by Willy Susilo, fixed for 2.0.10. If you don't want to wait for it (I only have to code another 300 lines or so in the factoring driver :^), apply this one-liner: bash$ diff -u src/language/anal.c.orig src/language/anal.c --- src/language/anal.c.orig Mon Jun 22 11:49:27 1998 +++ src/language/anal.c Mon Jun 22 12:20:42 1998 @@ -174,7 +174,7 @@ GEN x; strcpy(tmp,t); filtre(tmp, f_INIT | f_REG); - x = lisseq0(tmp,0); free(tmp); + x = lisseq0(tmp, expr); free(tmp); return x; } 2.0.10 will also include a _much_ cleaner matexp.c example, and a library function to read a gp expression from stdin and return the resulting GEN (created on the stack). > 3. factorint(2^128+1) causes > > *** segmentation fault: bug in GP (please report) Known and fixed for 2.0.10 -- Karim, any objections against me posting your first patch to the list, or do you want to do it yourself, or shall we just wait until 2.0.10 is wrapped up? Another problem with the factoring-related code is that currently, after dividing off small primes, it does essentially while (f isn't prime) <replace f with a proper factor of f>; and whereas this used to work fine with ellfacteur() as the factoring engine (because ellfacteur() tends to return one of the smallest prime factors of its argument), it behaves horribly with the new mpqs() (which returns just _some_ nontrivial factor) when there are 3 or more large prime factors. This is why I'm working heavily on a replacement for the above loops... (There are a few further issues, eg that mpqs() cannot factor prime powers, that a Pollard rho stage should run first for a limited span of time, etc. All this is being heavily worked on, and to a certain extent already working.) > The alpha has the following benchmarks: > > alpha21164 533Mhz Linux 2.0.34 gcc X11 ?dl2? 6511 6685 2.0.9 > > (I don't know the answer to the dl2 question...) If you got a [BUG] in the static bench output but not in the dynamic column, it's dl, if you got a [BUG] in both, it's nothing, and if you got no [BUG], it's dl2. Thanks again! Enjoy, Gerhard