Karim BELABAS on Thu, 12 Sep 2002 23:49:25 +0200 (MEST) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
pari-2.2.4.alpha released |
Hi, I'm releasing a snapshot of my sources, which have stabilized again after a rather hectic summer. You can fetch them from ftp://megrez.math.u-bordeaux.fr/pub/pari/pari-alpha.tgz or from CVS as usual [ the tag is release-2-2-4 ]. 1) Lots of miscellaneous bug fixes, and invisible internal cleanup [ e.g. removal of global variables, unified use of the prime table diffptr ] 2) The following routines should be much better behaved: rnfkummer, nffactor, rnfisnorm [WARNING: input format changed] rnfpolredabs [try new flag 16] 3) I have cleaned up and documented the way trap() and break loops are handled by GP [ It has changed somewhat. Check out section 2.7 of the manual ], so that we can discuss the interface before freezing things for beta. 4) There is initial support for mnemonic flags (using symbolic litterals instead of meaningless integer constants). See p.53 and 54 of user's manual. Have fun, Karim. PS: The CHANGELOG Done for version 2.2.4 (released 12/09/2002): Fixed 1- add default 'new_galois_format' to make 2.2.3 C-22 optional (by default, old format will be used, preserving compatibility) BA 2- FreeBSD: DL_DFLT_NAME value was incorrect 3- Configure: TIOCGWINSZ not detected on Linux BA 4- FpV_roots_to_pol not reduced when applied to a singleton 5- (a.x = [a]); "a".x ---> [a] \\ should be ["a"] 6- (a.x = [a]); print("a".x) ---> a0.E-28x \\ should be ["a"] 7- (a.x = [a]); 1.x ---> error \\ should be [1] 8- wrong rnfidealnorm[rel | abs] (wrong result if O_L not free O_K-module) 9- gcd(x + 1, x + 1/2) --> 1 \\ should be 1/2 [introduced in 2.2.1] 10- gcd for multivariate polynomials over finite fields slower than in characteristic 0 11- [library:] typo in vpariputs: pariputsf("%Z%Z",x,y) did not work (prints x and address of y) IZ 12- [gnuplot + dynamic link:] allow building even when dlopen() not available 13- [CVS:] warnings about unknown files (added .cvsignore files) 14- f()=return \\ return "void" g()=return(f()) \\ return eval("void") = 0 now g() returns "void" also 15- f(x=11,y=x)=local(t=ff(),u=t);1 --> parse error 16- conjvec([[],[],[]]) --> SEGV 17- galoisisabelian(x) --> SEGV 18- nfeltreducemodpr(nfinit(x),1,1) --> SEGV 19- idealmul(nf, principal ideal, prime ideal) returned wrong result [introduced sometime in 2.2] 20- elltors(ellinit([...], 1)) --> SEGV 21- try to make sure life of GP variables is not too short. Was: v = [0,0]; v + [v=0,v=0] --> SEGV u = Mod(x*Mod(1,2),polcyclo(25)*Mod(1,2)); sum(i=1,4,u=u^32) --> SEGV 22- typo in to_Fp_simple [ bnfcertify(bnfinit(x^2-40!)) --> type error ] 23- memory leak in gp when handling '&' arguments 24- removed hack in gcopy [ did not reset the isclone() flag because gunclone checks isonstack(). But other routines may want to use it ]. 25- apparent oo loop in bnfcertify [when computing lower bound for regulator] 26- ideallistarch(nfinit(x),[1,1],0); --> SEGV [bad input] 27- factor(x-I) --> x - #<16382> 28- ellsigma(...,matid(1)) --> SEGV [bad input] 29- ideleprincipal([],1) --> SEGV [bad input] 30- factorback(matid(1),nfinit(x)) --> SEGV [bad input] 31- incomplete help message for vecsort 32- polredabs fails to reduce x^8-2*x^7-34*x^6+78*x^5+265*x^4-628*x^3-389*x^2+1237*x-449 [typo in chk_gen_init: skipfirst not initialized properly] MW 33- (recent) typo in localred (char 2) 34- 2.2.3-C20 had broken backward compatibility: restore [inefficient, useless] previous output of nfelt*modpr routines 35- idealappr(nfinit(y),matid(2),1) --> SEGV [bad input] 36- sqrtn(0,...) ---> error 37- galoisinit(x^4 + 5264*x^3 + 8034856*x^2 + 4205424384*x + 504485485632) --> weird error 38- qfsign([;]) --> SEGV MW 39- torsion group of [0,0,0,-6648,208633] reported as C2 instead of C6 40- bnfinit: very rare stack corruption 41- bnfinit: used too much memory when needing huge number of relations [when computing fundamental units] 42- bnrL1(bnr with conductor 1) --> SEGV 43- "impossible inverse modulo ..." when using addprimes() + ROUND 2 MSo44- [gp: \x] missing 'break' statement in escape() 45- wrong bound in nf_LLL_cmbf (nffactor) [no counter example to the old bound, but proof was wrong anyway...] 46- [gp:] memory leak when assigning to multidimensional arrays (x[i][j]=1) 47- added user-friendly error message if Configure not run properly + fix INSTALL.tex about make gp.dbg / gp.prf 48- matcompanion(x*y) --> weird error 49- typos in hilbert(), e.g hilbert(Mod(1,2), y) --> SEGV, hilbert(-1+O(2^3), 12 + O(2^3)) accepted wheras 2-adic precision too low to decide BA 50- [FreeBSD:] PORTOBJFORMAT undefined by the system --> Configure fails 51- rnfisnorm() [errors, SEGV]. Had to change the prototype. BA 52- Oxxx/Makefile was not compatible with BSD make. 53- errors in files read from .gprc, containing trap() --> SEGV 54- bezoutres(Pol(sin(x)+Pi),Pol(cos(x))) --> "bug in subresext" 55- nfsubfields had a different output format when using galoissubfieds 56- polcoeff(1/x, -3) --> SEGV 57- (-2/x)/(-1/x) --> -2/-1 BA 58- [GP internals:] trap() had an invalid prototype [DI,DI] 59- M[,2][1]=1 --> error; M[1,][2]=1 --> no effect [ now <==> M[1,2]=1 ] 60- [GP:] newline in multiline comments /* */ was not ignored 61- [GP:] when using default 'colors' for input at \gn>1, first debugging msg could be colored 62- [GP:] in break loop, trailing ; was ignored (all results were printed) XR 63- smarter precision increase in update_alpha() (ROUND 4) [stick to padics don't go over Z] Ex: factorpadic(polzagier(18,3), 2, 30) much faster than before. 64- E=ellinit([0,0,0,-10301051460877581926458079712219,-12725370882271967125361344545020920373899020890]); ellap(E,1167254453) --> wrong result 65- factor(x^2 + I*1.) --> SEGV 66- when printing x < 0 t_REAL, was rounded in the wrong direction 67- [WINCE port:] small and SID are already defined in windows.h Changed 1- remove most global variables from gp.c (put them in struct gp_data). 2- use better bounds for size of factors in nffactor() 3- tuning for van Hoeij's factorizer (factor + nffactor) nffactor: call factornf when deg(pol) << deg(nf) + remove a priori overlift for d-1/d-2 test [major overkill] 4- automatic concatenation for strings: use longest match for expression. print("a"[1]) is not valid since "a" is not a vector print("a", [1]) prints 'a[1]' IZ 5- [gphelp:] allow uninstalled operation from $TOPDIR or $TOPDIR/Oarch IZ 6- [gphelp:] better error messages in case TeX compilation fails 7- [development version:] add version number for this file to the gp header when using CVS IZ 8- [library:] unified access to diffptr (NEXT_PRIME_VIADIFF macro) 9- buchall: re-use the same random seed when doubling prec (for units) 10- major cleanup in thue / thueinit 11- major improvements in rnfkummer (use elements in factored form): much faster, give smaller elements, allow arbitrary prime degree 12- improved quadray(D < 0) when relative degree is huge 13- improved bnfisprincipal when class group large: use factorisation (+idealred) instead of arch. components (require much less precision) 14- [library:] allow trapping invmoder and recovering the offending INTMOD 15- improved factor over Z[X] for _huge_ degrees (factorizations mod p) 16- change in ordering for primedec output [use cmp_prime_over_p] 17- [library:] moved (formerly) gp-specific write* and print* to libpari 18- input format to rnfisnorm() [use rnfisnorminit] 19- [GP:] break loop prompt from '>' to 'break>' 20- [GP:] don't get out of break loop after \r 21- type f(x=1)=; twice ---> x = 1 22- [trap:] the way default error handlers operate, how to get out of break loops (see section 2.7 of manual) Added BA 1- Add PARI_VERSION and PARI_VERSION_CODE to paricfg.h BA 2- Add pari_release at top of dft.Config.in 3- rnfpolredabs: flag to use partial factorization 4- [gprc:] test against VERSION number in .gprc 5- [gprc:] multiline constructs IZ 6- mnemonics for flags 7- internal flag nf_GEN_IF_PRINCIPAL to bnfisprincipal [isprincipalall] 8- routine rnfisnorminit() BA 9- [Makefile:] bzdist target 10- [library:] CATCH / TRY mechanism [ encapsulate err_catch ] Removed 1- (useless, undocumented) macros buchgen*, buchinit* -- 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/