Karim BELABAS on Fri, 6 Nov 1998 20:15:27 +0100 (MET) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
pari-2.0.12.alpha update |
Hi all, here is another update. Since (far too) many things changed since last update, this version has reverted to ALPHA status. I'll try to schedule some quick updates / patches to reach BETA status again. http://megrez.math.u-bordeaux.fr/pub/pari/pari.tar.gz This time I don't provide diffs with the previous update (too big...). If you're interested in Galois groups (degree < 12), fetch also http://megrez.math.u-bordeaux.fr/pub/pari/galdata.tgz and untar it in the "datadir" that was chosen at Configure time (or create a directory "data" in the main directory and untar galdata there before typing "make install"). I hope that the most obvious bugs have already been combed out (thx Igor!), but in any case, remember this is an ALPHA release, so be careful! I couldn't put together a decent DOS release for today. I'll have it ready on monday (hopefully). Enjoy! Karim. P.S1: I have had quite a lot of problems with the mail delivery system here, and I've probably lost many emails during the August and September. If you sent me something which you think is not addressed below (and never received a direct answer), please resend your message. P.S2: the (huge) Changelog: =========================================================================== Done for version 2.0.12 beta (released 06/11/98): Fixed 1- GNU as incorrectly treated by Configure. GN 2- various fixes in mpqs.c (incl. file descriptor leak) GN 3- [From 2.0.11- Fixed 14] floating point exponents: 1E1 --> possibly 0.1 4- 1 % Pol(2) still wasn't right [cf 2.0.11- Fixed 31] 5- src/test/dotest for DOS boxes (running sh) 6- removed unreachable err() in factor() 7- system() is defined under EMX, so make it available for DOS 8- possibly use / as path separator under EMX, check COMSPEC and EMXSHELL 9- compatible = 3 downcased all the following lines in gprc and caused incorrect behaviour of preprocessing statements. 10- unified default commands + better checks (e.g: default(log,0)->SEGV) 11- memory leak in gp_main_loop: bufferlisit wasn't reset on error 12- gptimer() not initialized properly if ^C was first command 13- extra space (sometimes) output by command line completion in DOS version 14- modifying histsize could corrupt the history stack 15- incorrect error messages in gsqr 16- not enough garbage collection in rootmod (polgcdnun) TP 17- compilation using cc -64 on 64-bit SGI IS+GN 18- "(hit return to continue)" message did not flush stdin GN 19- ECM rewrite 20- incorect absi_cmp in buch3.c 21- useless garbage collecting in sqred2 22- O(1)^(1/2) --> SEGV 23- forvec(i=[],...) --> SEGV GN 24- deriv(x*y, y) --> 0 GN 25- inefficient GC in ispseudoprime() 26- fixed some (not all) compiler warnings (char * --> unsigned char *) 27- exp(too large number) now gives a meaningful error message AW 28- getrusage still not detected on FreeBSD 2.2.5 GN 29- off by 1 error in initprimes() (--> not enough calculated primes) 30- inefficiencies in factor(t_POL) HC 31- bug in rnfelementabstorel for Mod(scalar, t_POL) HC 32- typo in gaussmoduloall 33- idealred(principal ideal) always returned an archimedean part HC 34- idealpowprime wrong for negative powers 35- typo in binomial(n,k) (wrong answer if n<=k) 36- online help for polinterpolate 37- incorrect garbage collecting in quickmulii/quicksqri 38- reformatted the output in test mode (gp -test) 39- polroots((x-7)*(x-8)*(x+16)) took far too much time 40- ellap assumed ell was given in characteristic 0. IZ 41- outlook of plot function (better labels, better choice of chars) RD 42- when factoring over a non prime finite field and found a p-th power, forgot about Frobenius GN 43- rare memory bug in ellfacteur 44- gscalmat was not suitable for gerepileupto 45- polredabs(,2) didn't handle non-monic polynomials 46- check for various overflows (x ^ 1000000, etc.) 47- printtex(I) --> missing closing brace 48- setisset() did not check that elements were strings 49- typo in gdiv(t_POLMOD, t_POLMOD) with different variables KO 50- missing ; in level1.h (Windows specific code) 51- forprime(p=0,10,) indeed started at p=0 52- (cf 2.0.11 Fixed-1) put back 3 cgeti in galois.c (were necessary) 53- factorpadic could overstate the precision of the result 54- (very) rare memory corruption in allhnfmod (when cleaning up) PM 55- prototypes in paridecl.h (fussy IRIX compiler), cc -64 in MACHINES 56- factormod implemented for all primes (p = 2 and p > 2^31 called factorcantor which was much slower) 57- check for unsuitable input in [factor|roots] (SEGV for multivar. pol) 58- polresultant sometimes gave the wrong sign 59- extraneous space in err(impl,"") (= "sorry,... not implemented") 60- aliases treated incorrectly during error recovery (--> obscure bugs) 61- obscure bug when normalizing rational functions with real coeffs (corrected content()) Changed 1- paricfg.h in dos and win32 extracted by Configure before the release (to get version number right) 2- GPRC logic: try $GPRC, then look in $HOME, /etc (/ and C:/ under EMX) 3- make sure the output of pari_unique_filename() doesn't exist already 4- use a stack of files to gracefully handle errors/interrupts without leaking file descriptors 5- replaced fixed-size buffers by dynamically allocated ones (es.c/gp.c) 6- rename INSTALL.QUICK --> INSTALL.DOC (updated) Changelog --> CHANGES (looks better under DOS) 7- mention ?12 in the header 8- use ; (instead of :) as PATH separator under DOS, OS/2 or Windows (for drive letter) GN 9- ECM tunings 10- check for overflow in cget* (instead of silent wraparound) 11- gp_main_loop cut into (improved) pieces. 13- simplified normalizepol 14- Warn when trying to replace an existing function with install (previously error) 15- new function mpcopy. replaced some inlined function (rcopy, absi, absr, negi, negr) by compatibility macros 16- gphelp now uses GPDOCDIR and GPTMPDIR. 17- improved rational arithmetic by computing smaller gcds (gredsp removed) GN 18- improvements in MPQS (use less memory, count relations precisely) 19- text-mode (non-TeX) extended help printed screen by screen 20- retuned integer multiplication, and made polkaramul the default polynomial multiplication. XR 21- stark.c rewritten IZ 22- updated the pariperl interface 23- improved handling of t_INTMODs (less GC) 24- improved (a lot) factoring/root finding for intmod polynomials 25- modified poldivres to avoid computing remainder when useless 26- removed inefficient shiftl/shiftlr from the kernel 27- from the same sources, Configure can now simultaneously run on different architectures 28- polynomial factorizer now sorts the factors (increasing degree). 29- ?an_obsolete_function now calls whatnow 30- .pol operates also on t_POLMOD 31- random() argument can have arbitrary length IZ 32- with gnuplot, pick a sensible terminal when X11 is not around IZ 33- change valences for use with Math::PARI IZ 34- various interface patches (new file highlvl.c, different prototype for foreignAutoload...) 35- optimized permute() 36- setrand, getrand, getstack, gettime return a C long, and not a GEN. 37- pari_randseed no longer global. Don't reset random number generator when entering certain functions 38- improved smallvectors() (correcting the "not enough storage" bug). 39- improved computation of special polynomials ([sub]cyclo,tchebi,legendre) 40- read() and extern() are timed as a whole now 41- check if LONG_IS_64BIT is correctly defined in pari_init (in case we include the wrong pari.h) GN 42- use Lehmer-Jebelean to compute inverse mod p (TODO: extended gcd) 43- moved subcyclo() to bibli2.c 44- improved polredabs, suppressed flag 8. 45- improved ground(), case t_REAL 46- modified the internal SMALL nf structure (add matrix M, for polredabs) Removed 1- doc/Makefile.SOS, since make should succeed even if Configure failed 2- many error messages from the analyzer (referer*, trucer1, matvecter...), better handled by talker2 3- obsolete test %_ in bench 4- polkaramul(), which is now the default multiplication. 5- factmoder error message 6- obsolete function polredabsfast Added 1- `pipes' for DOS running EMX, i.e extern() and extended help are available (perl needed for the latter). 2- file handling functions pari_fopen, pari_fclose, pari_unlink 3- new default `debugfiles' 4- file README.DOS IZ 5- target etags in top Makefile 6- target ctags IZ 7- gnuplot support HC 8- elliptic functions package (ellzeta, ellwp, ellsigma) HC 9- quadray function, extending quadhilbert 10- files src/basemath/polarit3.c and src/gp/highlvl.c 11- user-defined member functions 12- possibility to choose sizeof(long) at Configure time when the hardware suports it (eg. MIPS) -- 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://pari.home.ml.org