Bill Allombert on Sat, 04 Jan 2025 18:45:10 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
PARI 2.18.0 |
Dear PARI developers, In anticipation of the PARI atelier next week in Paris, I have released a snapshot of the development branch 2.18 as pari 2.18.0.alpha, see <https://pari.math.u-bordeaux.fr/download.html> Cheers, Bill P.S.: the changelog: Bug numbers refer to the BTS at http://pari.math.u-bordeaux.fr/Bugs/ Done for version 2.18.0 (released 04/01/2025): Fixed BA 1- incorrect GP proto for ellpadicfrobenius, mftocoset, qfcvp [#2575] AP 2- fix idealismaximal for ideal p*ZK [Sage issue 38766] AP 3- segfault in algsubalg when input is linearly dependent AP 4- fix alglatinter trivial intersection (misuse of matkermod(,1)) BA 5- ellrank could try many more curves than requested by effort [#2577] 6- wrong result in issquare(Mod(a, composite)) [#2578] 7- gener_FpXQ_local(t_POL of degre 1) -> oo loop [#2581] 8- GC error when squaring integer 2x2 matrices [#2582] AP 9- algebras: fix splitting field for CSA, algtomatrix / algnorm / algtrace / algcharpoly were sometimes wrong by an automorphism of the center. BA 10- paridecl.h could conflict with complex.h [#2583] 11- forprime(p=524288,1048576,1) -> crash [#2584] forprime(p=1048607,1048617,1) -> oo loop 12- printf("%10.6f", tiny rational) -> undefined result [#2576] AP 13- alginit(nf,[a,b]) was only allowing a,b integral over the power basis instead of arbitrary algebraic integers. HC 14- zeta not continous around 1/2+3000*I [#2585] 15- missing type checks for change of variables in ellchangecurve, ellchangepoint, ellchangepointinv BA 16- control-C could lead to segfault later [#2496] 17- nfmodpr at deg 1 prime: "wrong" invisible variable in t_FFELT [#2580] 18- [libpari] missing normalization in FpX_mulu (when p is not prime) HC 19- mfsymboleval could return wrong sign [#2586] 20- missing type checks in factorback [#2590] BA 21- charpoly(Mod(x,x^20+1/2)) -> crash [#2591] 22- psi(x close to a nonpositive integer) -> error 23- rnf functions which assume polynomial with integral coeffs (rnfinit, rnfpseudobasis, rnfdisc, rnfdedekind) were missing relevant sanity checks BA 24- polresultant(t_POL with RFRAC coeffs) could be incorrect [#2588] BA 25- qflll(non-maximal rank) -> potential oo-loop [#2587] Added AP 1- new GP function algnewprec BA 2- [loongarch64] add loongarch64 assembly kernel BA 3- [libpari] closuretoinl BA 4- [libpari] using closuretoinl, closures can be made usable with E/I GP prototype codes BA 5- quadclassunit now uses MPQS for negative discriminants. AP 6- [libpari] FqC_red, FqM_red, FqC_to_FFC, FqM_to_FFM 7- [libpari] pr_anti_uniformizer AP 8- new GP functions algeltfromnf, algmodprinit, algmodpr, algmodprlift, algeichlerbasis 9- [libpari] checkellpt_i AP 10- new GP functions algquattobasis, algbasistoquat, algisquatalg BA 11- new GP functions ellchangecompose, ellchangeinvert HC 12- zetahurwitz(t_PADIC,,d): use dth-power of the Teichmuller character BA 13- [libpari] ZVV_nv_mod_tree, ZVV_to_FlvV MTB 14- gen_order: implement faster recursive algorithm MTB 15- FpXQ_sqrt: implement fast algorithm BA 16- [libpari] F2xqX_Frobenius, F2xqX_nbroots, FF_nbroots 17- core, ispowerfu, moebius: implement fast trial division AP 18- new GP function alginvol Changed BA 1- idealfactorback, rnfisnorminit: flag is now a long to match GP proto. 2- polsturm obsolete undocumented form polsturm(pol, a, b) where a or b could be omitted is now disabled. Use polsturm(pol, [a,b]), where a = -oo and b = +oo can be used instead of an omitted argument. 3- undocumented deprecated 3-arguments form of deprecated function polred is now disabled. Use polredbest ! 4- [libpari] deprecated function polred0 implementing deprecated polred function now accepts only two arguments: the 3 argument form polred0(x, flag, fa = NULL) is no longer possible. Use polred0(mkvec2(x, gel(fa,1)), flag) instead. And preferably polredbest! AP 5- allow algpoleval(al, basis form, relative polynomial). AP 6- alginit: construction from Hasse invariants now allows a shortcut in the quaternion case, giving only the ramification set. AP 7- alginit(nf,[a,b]) now allows a to be a square in nf. 8- nfmodpr now returns a t_INTMOD when the residue field is Z/pZ 9- [libpari] oncurve renamed ellisoncurve_i 10- ellchangepoint / ellchangepointinv: now require the elliptic curve as first argument (to indicate the domain over which the transformation is performed); backward compatibility is maintained for now: ellchangepoint(P, urst) still works when it used to do; but ellchangepoint(E, P, urst) now works also when E, P, urst are defined over a number field with components in basis form 11- renamed ZC_hnfremdiv -> ZC_hnfdivrem 12- factorint: after trial division, never use rho first. Start by squfof then rho. Removed BA 1- GP function trap, use iferr instead. BA 2- GP functions listcreate, listkill, use L = List() instead.