Karim BELABAS on Fri, 11 Jan 2002 02:00:44 +0100 (MET)

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

pari-2.2.2.alpha released


I've made a snapshot of my current sources as pari-2.2.2.alpha. You can find
it at


This in an ALPHA version, so the usual caveats apply: it is unstable, probably
contains severe bugs, and is not properly documented. It is definitely NOT
adequate for site-wide installations.

This snapshot fixes a number of bugs [some of which introduced in the
previous one], but nothing major. I'm releasing it because it contains no
critical bug I'm aware of, and the last snapshot is already about three
months old.

Have fun,


P.S: The Changelog:

Done for version 2.2.2 (released 10/01/2001):
    1- qfbred(Qfb(4, 17, 18)) --> SIGFPE
    2- broken compilation in arith.c when CC != gcc
    3- nfhilbert (local case pr | 2) expected POLMOD argument without check
    4- poldegree(P, t) slow when t != varn(P), and may not work in library mode
    5- polrootspadic only worked when leading coeff was a unit
    6- paddicappr was very slow (esp. when p was large)
    7- Configure: check for 'double endianness' [used for double --> t_REAL
       conversion]. Previous check was failing on ARM architecture.
    8- forsubgroup state not properly restored after ^C
    9- libpari.so included symbols from libc without linking it explicitly
       (Debian requirement, and cleaner anyway)
   10- recent pdftex failed to compile users.tex  (\pdfannotlink undefined)
   11- !nf.sign[1] was parsed as (!nf.sign)[1]
   12- matrix(0,1) --> "identical index variables in matrix" [from 2.2.1 F48]
   13- bnfinit could miss some relations in the "small norm" phase
   14- x % y incorrect when y < 0 inexact (2 % -3. --> -1.)
   15- typo in gcdreal (result < 0) [introduced in 2.2.1]
   16- some obscure problems in rnfkummer
   17- not enough GC in hnflll
   18- sqrt(25 + O(2^5))^2 - 25 = O(2^4)
   19- not enough GC when writing a t_PADIC
   20- user member functions were very slow (unnecessary copy)
   21- cd Oxxx; make -j4 bench ran things in the wrong order
   22- poltchebi, pollegendre gave bogus output for negative degrees
   23- possible SEGV or oo loop in polrootsmod when p not a prime
   24- nfnewprec(bnf) could change bnf.gen (due to round-off errors)
   25- SEGV in gcd(x,y) when operands have coeffs of the form Mod(t_INT,t_POL)
   26- not enough GC in poldivres (= t_POL % t_POL)
   27- issquare(Mod(3,27)) = 1  [from 2.2.1 C 10]
   28- [BUG] message in 'elliptic' bench [made polroots more canonical]

    1- allow compressing *.dvi files for the online help system
    2- index bound was restricted to MAXLONG in subgrouplist. Made it a GEN
    3- try to guess correct precision earlier in polgalois/polroots
    4- allow GP pointers to 'matrix components', e.g issquare(25,&x[i][j])
    5- changed assignment semantics to make it closer to C: x = y understood as
       (evaluate Y:=y, then set x:=Y), e.g i=0; i += (i=2) sets i to 4  (was 2)
    6- output VECSMALLs as 'Vecsmall([...])'
    7- more efficient polcoeff [also: made it independent of MAXVARN]
    8- retuned bnfinit (let subfactorbase increase further):
       setrand(1);bnfinit(x^4 + 1159*x^2 + 335241) would never finish.
    9- specified precisely lex() [see manual]. Now:
       lex([0,0],[0]) = 1 (was -1), lex(0,[0]) = -1 (was 0)
   10- allow factorback(x, e) for prod x[i]^e[i]
   11- don't store empty lines in history [cf 2.2.1 F57]
   12- extend x \ y, x \/ y and divrem(x,y)
XR 13- improvements in bnrstark (try harder to find modulus, need less memory)
   14- global(x): ignore if x already global (used to raise a warning)
BA 15- install: add RTLD_GLOBAL to dlopen flags [so that symbols can be used
       in other .so]
   16- removed hack in gp_init.c [used "constant default args" to call print0]

BA  1- New function 'vectorsmall'.
    2- allow setting variable in divrem
    3- GP operator #l for length(l)
    4- a warning in zsign ("increase precision?") when dubious result
    5- Montgomery reduction (only used in powmodulo() for now)
    6- [experimental] basic tuning utilities (src/test/tune.c) [make tune]

Karim Belabas                    Tel: (+33) (0)1 69 15 57 48
Dép. de Mathematiques, Bat. 425  Fax: (+33) (0)1 69 15 60 19
Université Paris-Sud             Email: Karim.Belabas@math.u-psud.fr
F-91405 Orsay (France)           http://www.math.u-psud.fr/~belabas
PARI/GP Home Page: http://www.parigp-home.de/