Karim BELABAS on Fri, 21 May 1999 20:38:41 +0200 (MET DST)

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


Hi all,

  a new update (pari-2.0.15.beta) can be found at the address


It consists mostly in bug fixes (some of them important), and cosmetic
improvements (eg: ?? tutorial, ?? refcard). It includes Ilya's recent 
patches (not yet the extended prime tables).

The logic in the LLL engine, [rnf]polredabs and bnfisprincipal has changed
a little and should be a bit more efficient (a lot more in tough cases).

New algorithms:
  subgrouplist    : Birkhoff's algorithm replaces search for HNF divisors
  nfgaloisconj(,4): Allombert's algorithm replaces Kluners's
  polresultant(,2): Ducos's algorithm

It is a beta version, but I'll wait before releasing it on pari-announce,
in case some configuration problems show up. I'll try to compile a DOS
binary early next week.

Have fun!


P.S: The Changelog:

Done for version 2.0.15.beta (released 21/05/99):

    1- ?? (TeX mode) didn't work anymore
    2- rl_save_prompt incorrectly detected on a.out systems
    3- allow extra_relation() (bnfclassunit) to abort.
    4- allow cbach to double once more before triggering PLEASE REPORT
       (introduced in 2.0.14)
    5- check for non-monic pol in smallbuchinit
    6- vecex<TAB> --> SEGV on some Linux systems (typo in match_concat)
    7- exceedingly rare but possible overflow in forvec(, flag == 1)
    8- factorff(x^7-3,3,y^3+2) --> SEGV
DC  9- ghpelp doesn't exit when problems arise in TeX processing
   10- made idealprimedec random again (also use det_mod_P_n to compute norm)
   11- inefficiencies in nfeltval (computing norm is a waste of time)
   12- did same prime twice when collecting garbage in modulargcd (=> error)
   13- ffinit(huge prime,) output a weird error message
   14- highly inefficient memory use in nfsubfields
IS 15- [cygwin] typo in Makefile generation
   16- file leak in mpqs (COMB)
   17- allow prime_to_ideal to be called with a t_INT argument (for quadray)
   18- typo in nf_shanks (calling Fp_shanks with wrong parameters)
   19- polun (possibly) destroyed in bnrstark
IS 20- keep logfile in synch with screen output
   21- reset DEBUGLEVEL correctly on ^C (was sometimes set to 0)
   22- bnrstark does not require anymore the modulus to be the conductor
   23- check bnrstark's arguments in the right order (bnrstark(1,0) --> SEGV)
   24- inefficiencies in idealval (removed element_mulh)
   25- idealadd unsuitable for gerepileupto
HC 26- quadray should work in all cases now and give better polynomials
XR 27- bnrstark should return smaller polynomials
   28- very inefficient pseudo-remainder routine (psres)
   29- forstep(x=a,b, 1/2, ...) --> SEGV (signe -> gsigne)
IS 30- [Cygwin] Configure fix (use $HOSTTYPE instead of uname -m)
   31- polcoeff(a*x^-1*y^-1+O(x^2)+O(y^2),-1,y) --> 0
HC 32- (false) accuracy problem in mpsc1 ("truncation error")
   33- don't use mpqs_diffptr in mpqs_find_k, set it in mpqs_create_FB
   34- (very rare) "precision loss in truncation" in buchall
   35- C-long overflow in zarchstar
   36- C-long overflow in zprimestar
   37- (old versions of) GNU as not recognized correctly
BA 38- ?? in TeX mode could not process some sections (missing macros)
   39- factor(polynomial with t_PADIC coeffs) didn't work (factorpadic
       assumed coeffs were integers)
   40- T=[1,x; x,1]; charpoly(T,Z) produced object with wrong variable
   41- polrootsmod(x^n,p) could corrupt the stack
   42- Warnings/errors from HPUX and AIX native compilers
OR 43- many problems in the emacs interface pari.el (introduced in 2.0.14)
   44- factorpadic treated only monic polynomials
   45- gphelp TeX mode (use general macros instead of a specific file)
   46- under readline, input lines of length > 2048 could trigger SEGV
   47- more thorough check in checkbid (accepted prime ideals->SEGV)
GH 48- possible stack corruption in thueinit(totally real field)
XR 49- various problems in bnrstark (infinite loop in fincke_pohst)
   50- in doc/Makefile: removed GNU-style make macros + put a missing TAB
   51- sloppy garbage collecting in hnfperm
   52- HPUX+cc: work around a compiler bug (wr_float)
   53- warnings in make_emacs_tags (perl5.005)
   54- Configure --static should not disable install()
   55- in rare cases reduction not complete in lllgramall (off-by-1 error)
   56- addshiftw (polynomial case) could produce non-normalized polynomials
   57- take content into account in modulargcd as in srgcd (not normalized)
GH 58- uninitialized variable in poldisc0 (purify warning)
   59- inefficiencies in round 4: modular computations [more needed!]
       (starting from a patch by DF+XR)
GN 60- lllintpartial did not output the right matrix
   61- huge memory leaks in bnrstark
   62- signed int overflow in allocatemem 
   63- parisize (local to gp/gp.c) not updated properly
   64- *sol not properly initialized in subresall
   65- in idealpowred, check whether |n| < 16, not n < 16 (would slow down
       bnfinit a lot when class number is large)
   66- polrootsmod(x^6-10,25) --> SEGV (now error message)
   67- SEGV when renormalizing zero series in gdiv
XR 68- unify precision choice in bnrstark (4 different formulae used...)
GN 69- infinite loop in mpqs (64bits machines + harsh compiler) when more
       factors were found than were hoped for (1 <--> 1L)
GN 70- SIGFPE in buchall (double didn't fit in 32-bit integer)
   71- also check sign in real0 (internal: called by gauss_pivot)
   72- use current realprecision in plot() (was fixed: 28 digits)
   73- memory use in subgrouplist(bnr)
   74- in bnfcertify: "Too many iterations in isprincipal"
   75- auto detect precision in quadhilbertimag ("overflow in I+R")
   76- error message numbers in src/kernel/m68k/mp.s
   77- polroots(x^3-x-422!) --> "impossible R-> dbl conversion"
   78- not enough modular reductions in buchrayall (bnrinit)
   79- technical argument in quadclassunit not read correctly.
   80- factor(x^3-1 + 0.*I) --> gerepile error
GN 81- gp -p (close to a p^2) --> p possibly missing in the prime table
   82- until narrow class group in quadclassunit is implemented, non-zero
       flag raises an error.
IZ 83- some code numbers in functions_basic (for Math::Pari).
   84- precision problem in initell (AGM)
   85- "impossible assignment I-->S" in ellrootno
   86- missing break in poltype (factor)

    1- ?? (no arguments) opens the users'manual in xdvi
    2- print readline version in header on startup
    3- compute multiplication table first in element_mulvec[row]
    4- nf[5][7] is now stored in two-element form (faster ideal inversion)
    5- install gphelp in BINDIR, not MISCDIR
    6- simplified output of trivial matrices
    7- replaced square_free_factorization by mysquare_free_factorization
    8- call LLL before using idealtwoelt
GH  9- choose random elements in idealtwoelt, and allow bigger ones in two_elt
   10- cleaned up lllgramall/lllgramintern + give quality ratio as argument
   11- in rnflllgram, try to survive lllgram errors (findmin)
   12- simplified rnfpolredabs (simple interface to polredabs). Should be
       much more efficient
   13- replace many gdiv by 1 ginv + many gmul in sqred1intern
   14- optimized polredabs (always do the initial polred now: it is for free)
   15- more efficient ideal multiplication in random_relation (bnfinit)
   16- library names nfhermite[mod|basis] <--> nfhnf[mod|basis]
   17- subgrouplist function (use Birkhoff algorithm)
   18- improve recovery in lllgramintern
   19- improved checkgenerator in polredabs (look directly for double roots)
   20- for consistency, return S-units in t_POL format (as fundamental units)
IZ 21- revamp gnuplot autodetection by Configure
BA 22- nfgaloisconj(nf, 4) uses Allombert's algorithm instead of Kluners's.

    1- install-doc target
    2- make install makes a symlink pari.1 --> gp.1
    3- ??tutorial/refcard opens tutorial/refcard.dvi in xdvi
    4- posibility to extract the complement in vecextract
HC  5- Ducos's subresultant algorithm (polresultant(,,2))
HC  6- accept a "vector of steps" in forstep
    7- examples/classno.gp
XR  8- new function bnrL1
    9- new function gdivexact (used in subresultant, Gauss-Bareiss...)
   10- new function bnfnewprec
   11- optional argument to \l and \e shortcut
   12- nfinit,polred[abs] accept input of the form [pol, HNF basis fro Z_K]
   13- q-Pascal triangle (matpascal(n,q))
   14- file src/basemath/subgroup.c, new function forsubgroup()
IZ 15- function plotclip
IZ 16- new file examples/taylor.gp (nice example for plotclip)
BA 17- new file galconj.c
Karim Belabas                    email: Karim.Belabas@math.u-psud.fr
Dep. de Mathematiques, Bat. 425
Universite Paris-Sud             Tel: (00 33) 1 69 15 57 48
F-91405 Orsay (France)           Fax: (00 33) 1 69 15 60 19
PARI/GP Home Page: http://hasse.mathematik.tu-muenchen.de/ntsw/pari/