Karim BELABAS on Fri, 5 Mar 1999 19:54:35 +0100 (MET) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
pari-2.0.14 |
Hi all, pari-2.0.14.alpha is now available at ftp://megrez.math.u-bordeaux.fr/pub/pari/pari.tar.gz This should have been released long ago since 2.0.13.alpha suffered from a couple of severe bugs. But some alpha testers (kudos to Igor Schein, in particular) were a bit too successful, hence the TODO list grew out of proportion. All bugs known to me have now been cleared out (except an obscure one having to do with readline completion which I could not reproduce). This was supposed to be a bugfix release only, but : 1) gphelp has been improved in various ways, most useful being "apropos help", which is queried using ??? pattern under GP (and gphelp -k from the shell), which searches the whole manual to look for entries mentioning this topic (there's no indexing, just a simple pattern matching). E.g: (19:43) gp > ???GRH bnfcertify bnfclassunit bnfisintnorm bnfisnorm quadclassunit rnfisnorm thue thueinit See also: Functions related to general number fields (19:43) gp > ???reduction ellglobalred elllocalred idealpow idealred mathnf matkerint nfinit polred qfbcompraw qfbpowraw qfbred rnfpolredabs All such entries are accessible from the online help (e.g ??"Functions related to general number fields" will work now), and one can get help from different chapters in the manual: (19:48) gp > ???gerepile@ \\ @ = search all installed chapters Chapter 4: ========== Assignments Examples See also: A complete program PARI variables Some hints and tricks The calling interface from GP Why and how Chapter 5: ========== Memory allocation on the PARI stack (19:47) gp > ??Assignments@4 \\ search chapter 4 only Assignments: Firstly, if x and y are both declared as GEN (i.e. pointers to something), the ordinary C assignment y = x makes perfect sense: we are just moving a pointer around. [...] 2) while clearing out some problems related to local(), I introduced another scope declaration function: global(), to explicitly restrict the use of "globally declared" parameters (forbidden as loop index, local parameters, etc). 3) I added a function znlog (discrete log in F_p^*, using simple-minded baby-step/giant step) as per the gp script posted on pari-user . It's small, doesn't break existing code and performs orders of magnitude faster than the generic ideallog. =========================================================================== Done for version 2.0.14.alpha (released 05/03/99): Fixed 1- factormod(2*x+1, 2) --> "factor for general pol. not implemented" IK 2- gphelp could leak temporary files BD 3- for native Win32 build: buffer overflow in get_home, incomplete paricfg.h, typo in try_pipe (#endif misplaced) 4- nfsubfields: could miss subfields if index > 1 5- removed 3 useless setrand(1) in subfields.c 6- rare and obscure memory bug in inverseimage (lost pointers in gerepile) 7- memory bug in factorpadic4 (prime not copied before result) 8- memory consumption in round2 (allbase) GT 9- m68k version: duplicate symbols from mp.c IS 10- Cygwin: in mpqs.c, open files in binary mode (otherwise fseek goes crazy) 11- bnfisprincipal().gen gives the expected answer IZ 12- signatures for Math::Pari in highlvl.c / init.c + GNUPLOT set-output-file problem 13- if we think readline needs libiberty, check whether it's installed first DB 14- PowerMac: header inclusion in highlvl.c, lround def'd in system headers XR 15- rnfkummer makes sure to return an integer XR 16- rnfconductor accepts polynomials with rational coeffs. 17- polredabs + internal precision change --> nfnewprec forgets nf[5][1] 18- don't log lines twice when pariecho is set 19- glitches in content() (e.g content("a") --> SEGV) 20- get_sep(2) reacted incorrectly to empty strings. 21- rootmod could destroy its argument 22- Fp_pow_mod_pol(x, 1,...) should return gcopy(x), not x 23- galoisconj1 computed wrongly the precision needed (+ prototype change) IZ 24- remove __OPTIMIZE__ dependence (define GCC_INLINE instead) 25- off-by-1 error in apell1 26- misleading error message in minimalexponent() XR 27- in nffactor, forgot to update precision when increasing exponent (+ various typos) 28- sparc + non-gcc --> kernel2 possibly not included: compilation failure 29- when echo is set don't print prompt if line is empty 30- ellpointtoz sometimes return -x instead of x 31- gp -b 1 --> hangs gp DE 32- many glitches in manual 33- mathnf(x, 3) when x hasn't maximal rank (SEGV) 34- differences in buchall 32bit/64bit (PRECREG too high. bnfinit(x^13-6)) 35- various inefficiencies in nfshanks ("module too large in nfshanks") 36- memory leak in buchall (= bnf*) 37- "not a definite matrix in lllgram" after a call to bnf* 38- typo in factorff(x^3+2,3,y^2+1) --> SEGV 39- [internal] missing tags (e.g zprimestar) after make ctags 40- idealstar(*, big prime) --> cryptic error msg (more tolerant now) 41- have Mod(0,1)^-1 return Mod(0,1) (fixes znstar(prime)) 42- ginv(-1/2) --> 2 43- heap leak when using local() 44- overflow in addssmod 45- changed the syntax of round() 46- sqrt(1. + O(x)) --> infinite recursion IZ 47- don't create GP variables when expanding strings 48- internal variable 'parisize' not properly updated after allocatemem() IS 49- config/display didn't work properly with ActivePerl IS 50- Configure didn't handle most recent Cygwin 51- polinterpolate([],[]) --> SEGV 52- adapted gp_rl.c to readline 4.0 53- glitches in whatnow database (new file src/gp/whatnow.c) 54- all warnings from gcc 2.8.1 55- uninitialized tetpil in gscal() (bnfreg(x^2+1)) 56- precision problems in polgalois (degree > 7) 57- config/locatelib prompted a lot of useless work (returning too many libraries) and could pick up the wrong library. 58- very rare bug in nfbasis (discriminant ok, but wrong basis) 59- quadclassunit: make sure sub factor base is big enough (oo loop) 60- more flexible "colors" default (initial work IZ) Changed 1- x.fu outputs polynomials (as all bnf* functions), not polmods 2- improved mppgcd (including vali) 3- improved division vector/scalar 4- \x to print a * in front of out-of-stack moduli (t_[INT|POL]MOD) IZ 5- better commandline usage message 6- don't buffer log messages going to pari.log 7- accept [nf, t_POLMOD] where nf is expected 8- poldisc() and quadgen() accept an optional variable name 9- when defining user function check for duplicate variable names 10- [internal] is_entry always uses function_hash (use is_entry_intern) OR 11- pari.el updated (see emacs/pariemacs.txt) 12- removed shiftl from lgcdii 13- use roots_to_pol in polgalois 14- precision heuristic in gauss_get_prec 15- cleaned up lllall and lllgramall 16- sort the output of nffactor, nfroots, factorff and factornf 17- nfgaloisconj now guaranteed to find all conjugates (use nffactor) 18- Removed flag 1 in nfisisom/nfisincl: function checks its arguments, and uses the best algorithm (both guaranteed complete). Changed the names (nfiso/nfincl) in library mode to match GP usage. 19- gerepile(ltop,lbot,0) no longer returns ltop - lbot 20- improved floor and round(t_FRAC). 21- removed some duplicate code from nffactor 22- passing a pointer to GEN in a GP funciton now explicitly requires an & IZ 23- more verbose error messages for online help 24- increased a bit poltschirnaus's period 25- DOS version: don't use more for external help 26- cleaned up buchall code 27- removed unnecessary gres from polarit1.c:to_fq() Added 1- apropos command in gphelp (-k switch), ??? under GP 2- function global() 3- function gp_variable to use sums, etc in library mode 4- [internal] new functions mulmat_real 5- new functions gerepileupto[leaf|int] 6- function znlog() IZ 7- added default(color, "yes" / "no") 8- --static flag to Configure Removed 1- isinclfast/isisomfast 2- rounderror -- 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/