| Bill Allombert on Thu, 04 Jan 2024 01:12:47 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| PARI 2.16.1 |
Dear PARI developers,
In anticipation of the PARI atelier next week at Lyon,
I have released a snapshot of the development branch 2.16 as pari 2.16.1.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.16.1 (released 04/01/2024):
Fixed
BA 1- lfunan(lfunetaquo([12,1;13*12,1]),1) -> stack overflow [#2457]
BA 2- FpM_intersect could return a Flm [#2459]
3- ifactor_sign: ifac_isprime could be called on input with tiny divisors
BA 4- nfcompositum could return non-monic polynomials [#2461]
BA 5- gammamellininvinit(vector(9,i,1)) -> SEGV
6- incorrect sanity check in rnfeltdown ("not in base field") [#2464]
HC 7- precision loss in gammamellininv [#2462]
BA 8- [pthread] parselect could crash
BA 9- rare infinite loop in ellsaturation
BA 10- quadunitindex(8461,2)->1 instead of 3 [#2466]
BA 11- chinese(Mod(1,3)*(x^2+x+2),Mod(1,5)*(x-1)) -> incorrect leading term
BA 12- lindep([0,x]) -> SEGV
BA 13- [libpari] RgX_div_by_X_x: wrong variable number
14- incorrect results in bnrisprincipal if bitprecision too low [#2474]
MS 15- hyperellratpoints(2*x^3+x^2-x,1000) -> wrong result [#2475]
BA 16- ellisogeny over a nf -> inconsistent variables error
BA 17- w=3;quadgen(5) -> print x instead of w [#2477]
BA 18- FpX_convol: wrong result for mixed degree
LGr 19- parsum was inefficient
20- mateigen(,1): eigenvalues were given as t_VEC or t_COL. Use t_COL.
BA 21- ellcard over small finite field: potential oo-loop [#2483]
BA 22- ellisomat/nf could miss isogenies of degree dividing the conductor
23- mfcoef(mftwist(f,D), ...) wrong result [#2484]
24- sumeulerrat / prodeulerrat: slow if s not an integer [#2433]
25- 'path' broken when initial or trailing ':'
26- snfrank([1],0) -> 1 [instead of 0].
27- snfrank(vector of polynomials, 0) -> error
28- division of t_POLs with compatible domains Mod(1,2)/(2*x+1) -> Mod(1,2)
29- strjoin([1]) -> memory corruption
30- qfbclassno(684) -> oo loop [#2491]
31- gcd(x-1,(x-1)/x) -> 1/x
PMo 32- mftonew was wrong on oldspace -> remove mfbd layer
BA 33- rnf.p did not work
34- expm1(tiny negative t_REAL) -> stack overflow [#2494]
35- expm1(huge t_REAL) -> junk [#2494]
BA 36- hyperellratpoints(9*x^2,3) -> SEGV
37- lambertw for 2-adics (also fix documentation)
BA 38- plotbox, plotrbox did not clip properly
BA 39- ellheight for non-minimal curve over a number field -> wrong result
40- for x >= 0, x^(a/b) was using (x^(1/b))^a instead of x^q*x^(r/b),
with a = qb + r.
41- hypergeom(t_POL parameters, z) -> type error [#2515]
42- polrootsreal(0E10*x + 0E10) -> SEGV [#2516]
BA 43- memory leak when using member functions and ~ arguments.
44- idealstar(nf,id,,MOD).cyc was not reduced modulo MOD
45- changed qfbred to use standard normalization (same as qfbredsl2)
Changed
HC 1- dirpowerssum: allow functions with t_VEC output
HC 2- dirpowerssum: add optional flag 'both' [also in library mode]
BA 3- [libpari] RgX_halfgcd now only return the matrix. Use RgX_halfgcd_all
BA 4- [libpari] ec_bmodel, ec_phi2 now take a variable number
BA 5- ellisomat: when E/nf has CM by an quadratic order included in nf,
return the discriminant of the order instead of an error [#2231]
BA 6- ZX_compositum_disjoint: renamed to ZX_composedsum
7- allow t_INTMOD Mod(m,N) as a Conrey label for the character m mod N
8- nfroots: return a t_COL instead of a t_VEC (same as other 'roots' fun)
9- qfbsolve: call qfbcornacchia when the argument is prime (and disc < 0)
BA 10- [libpari] rename qfb_apply_ZM -> qfb_ZM_apply,
qf_apply_RgM -> qf_RgM_apply,
qf_apply_ZM -> qf_ZM_apply
11- rnfinit(nf, [T,lim]); try to fix maximal order if wrong [#2494]
BA 12- [libpari] change prec to be a number of bits, instead of lg
BA 13- [libpari] suminf_bitprec, intnumromb_bitprec: use suminf, intnumromb
ellL1_bitprec, ellanalyticrank_bitprec: use ellL1, ellanalyticrank
Added
1- [libpari] nfeltembed_i
BA 2- [libpari] Flx_extresultant_pre, FlxqX_resultant_pre
BA 3- [libpari] gc_stoi, gc_utoi, gc_utoipos
BA 4- [libpari] F2xX_shift
BA 5- [libpari] Flx_Fl_mul_pre
BA 6- [libpari] Flx_halfgcd_all, Flx_halfgcd_all_pre, FpX_halfgcd_all,
FlxqX_halfgcd_all, FlxqX_halfgcd_all_pre, FpXQX_halfgcd_all,
F2xqX_halfgcd_all, FFX_halfgcd_all, RgX_halfgcd_all
7- [libpari] modRr_i
BA 8- [libpari] random_Fq
9- [libpari] maxprimelim
BA 10- [libpari] FlxqX_div_by_X_x, FlxqX_div_by_X_x_pre
BA 11- [libpari] Fl_2gener_pre_i, Fp_2gener_i, Fl2_sqrt_pre, Flxq_sqrt_pre
BA 12- [libpari] Fq_elljissupersingular
BA 13- [libpari] FpXQ_ellcard_supersingular, Fq_ellcard_supersingular
BA 14- [libpari] Fp_ellj_to_a4a6
BA 15- [libpari] ec_half_deriv_2divpol
BA 16- New GP functions polisclass, elliscm
BA 17- [libpari] elljsupersingular_FpXQ
BA 18- New GP function ellsupersingularj
BA 19- [libpari] Flx_composedsum, FlxV_composedsum
FpX_composedsum, FpXV_composedsum FlxqX_composedsum
BA 20- [libpari] Flx_convol, Flx_composedprod, FpX_composedprod
BA 21- [libpari] RgV_F2v_extract_shallow
22- [libpari] Fp_double
23- [libpari] convenience function veclast
24- allow snfrank(D,0) for snfrank(D)
25- [libpari] dbg_fill_stack() [#2361]
26- allow erfc(t_SER)
27- allow hypergeom(N,D,t_PADIC)
BA 28- n#: primorial of n
29- allow bernpol(k, a) [ = B_k(a) ]
BA 30- allow Qfb(a*x^2+b*x+c) and Qfb([a,b0;b1,c])
BA 31- New GP function parforstep
BA 32- New GP function polfromroots
BA 33- digits: support for negative bases but positive digits.
AP 34- alginit: new flag value for lazy factorization
BA 35- [libpari] F2xqXV_prod, F2xqV_roots_to_pol, FFV_roots_to_pol
BA 36- [libpari] RgM_div
BA 37- [libpari] ZV_max_expi, ZM_max_expi
BA 38- [libpari] ZM_merge_factor
BA 39- [libpari] RgM_Cholesky
BA 40- [libpari] hash_keys_GEN
41- support kB or KB, MB, GB and TB as units for memory sizes (2^10,
2^20, 2^30 and 2^40 bytes)
BA 42- [libpari] lg2prec, prec2lg
BA 43- New GP function ellisisom
BA 44- allow qfsolve([Q,F]) where F factorization of disc(Q)
BA 45- New GP function plotell
Removed
1- [graphic] support for Qt4