diff --git a/pari-2.11.0.changelog b/pari-2.11.0.changelog new file mode 100644 index 0000000..9d08259 --- /dev/null +++ b/pari-2.11.0.changelog @@ -0,0 +1,686 @@ +Bug numbers refer to the BTS at http://pari.math.u-bordeaux.fr/Bugs/ + +Done for version 2.11.0 (released 18/07/2018): + Fixed + 1- uninitialized memory reads in lgcdii and red_montgomery +BA 2- memory leaks on pari_close [s_dbginfo, s_frame, colormap/graphcolor] +BA 3- disallow generic operations that end up producing t_POLMOD modulo 0 + e.g. matker( [Mod(1,2); Mod(1,2*x)] ) + 4- Fp_powu(a,n,N) incorrect when a not reduced mod N +BA 5- Flm_adjoint: treat rectangular matrices correctly + +Done for version 2.10.1 (released 04/07/2018): + Fixed + 1- t_LIST corrupted on writebin / read [#2040] +BA 2- nfisincl() result uses wrong variable [#2041] + 3- polcompositum(,1) when one polynomial has degree 1 [#2045] + 4- Mod(0,3)*x + O(x^2) -> O(x^2) [instead of same] +AP 5- alginit(nf, hasse inv.) sometimes wrong degree or stack overflow + 6- factor(x/y) -> error + 7- factor(y/x) -> x^-1 [ instead of y^1 * x^-1 ] + 8- factor(x^2 + O(2^2)) -> x^2 [ instead of (x+O(2^2))^1 * (x+O(2^2))^1 ] + 9- mfeigenbasis(mfinit(71,1,71)) -> error [ full space in wt 1 ] + 10- make galoissubcyclo compatible with znstar(,1) + 11- idealfactor(nfinit(polcyclo(5)),2^4*[0,1,0,0]~,100) => SEGV + 12- idealredmodpower(nf,x,...) incorrect when x a t_INT or t_FRAC + 13- znchargauss(,,a != 1): wrong value (missing \bar{chi}(a)) + 14- factorpadic(): wrong results when p-adic accuracy too low + 15- elleisnum([1,I/2^100],4) -> exponent overflow + 16- galoischartable: wrong results + 17- factor(N, lim) was using primes <= lim instead of < lim as documented + 18- bnrinit(,m,1) could return generators not coprime to m (when 2 || Nm) + 19- genus2red(3*(4*x^6+6*x^5+3*x^4+8*x^3+9*x^2-3),3) -> bug in + litredp [#2053] + 20- missing type check in mfsymbol [ mfsymbol(mf,'f) -> SEGV ] + 21- incorrect values in ellzeta() [#2060] + 22- ((y^-3+O(y))*x+1)/x -> oo loop [#2063] + 23- mfslashexpansion: use Neururer-Brunault's theorem + 24- iferr(sqrt(x+1/y),E,E) -> SEGV [ typo in err_DOMAIN exception ] + 25- t_LIST corrupted on writebin / read [#2040] + 26- prevent diviiexact from creating invalid t_INT on bad input [#2064] + 27- Mod(*, constant polynomial) created invalid t_POLMODs + 28- rnfalgtobasis could create invalid t_POLMODs + 29- mftobasis(mf,f) could raise an exception when f was defined at a + larger level than its conductor + 30- incorrect values in ellsigma() [#2061] + 31- incorrect values for bnrL1 at large accuracy [#1877] + + Changed + 1- polcoeff is deprecated and renamed polcoef: it now only applies + to scalars, polynomials, series and rational functions; no longer to + vector/matrices or quadratic forms (use [] or "component"). + 2- [libpari] rename polcoeff0 -> polcoef, polcoeff_i -> polcoef_i, + truecoeff -> truecoef + 3- add optional argument to denominator/content/numerator to allow + better control over semantic. E.g. + No arg: denominator([1/2, 1/x, 1/y]) -> 2*y*x + denominator([1/2, 1/x, x/y]) -> 2*x + denominator([x/2, 1/x, 1/y]) -> y*x + With arg: denominator(,1) is 2 in all 3 cases + denominator(,x) is x in all 3 cases + denominator(,y) is y in all 3 cases + 4- factor(t_RFRAC): sort factors by increasing degree + 5- [libpari] rename constant LOG2 -> M_LN2 (from math.h if available) + 6- ellweilcurve: allow input in ellisomat form + 7- [libpari] rnf_get_nfzk / nf_nfzk / nfeltup interface (czknf was + useless, return and use nfzk) + 8- the rnf struct from rnfinit has changed, the new format is not + compatible with pari-2.9 + 9- improved eta(x^k) + 10- sinc(t_SER) more accurate + 11- in prettymatrix format, no longer print all 0 x n matrices as [;]: + use [;] iff n = 0 and matrix(0,n) otherwise + 12- bnrdisclist returned t_MATs whose columns were t_VECSMALL + 13- mateigen(m): fall back to qfjacobi when m close to symmetric [#2059] + + Added + 1- [libpari] denom_i, numer_i, conj_i +BA 2- [libpari] Fp_pow_init, Flxq_pow_init, F2xq_pow_init + Fp_pow_table, Flxq_pow_table, F2xq_pow_table + gen_pow_init, gen_pow_table + 3- new GP function serchop + 4- [libpari] serchop_i +BA 5- [libpari] hash_init_GEN, hash_haskey_long, hash_insert_long +BA 6- [libpari] FpX_ddf_degree, FpXQX_ddf_degree, FlxqX_ddf_degree + 7- [libpari] checkell_i + 8- new GP function ellisotree + 9- mspolygon: add graphical representations (LaTeX form) + 10- [libpari] idealprodval, rnfdisc_factored + 11- [libpari] eta_ZXn, eta_product_ZXn +BA 12- New GP functions galoisgetgroup, galoisgetname + 13- [libpari] cxtoreal, cxEk + 14- [libpari] gmin_shallow, gmax_shallow + +Done for version 2.10.0 (released 15/05/2018): + Fixed + 1- subst(1+x^3+O(x^6),x,x+O(x^4)) -> SEGV [#1865] +BA 2- lfunartin was using too much stack +BA 3- fflog in char 3 or 5 was slower than intended + 4- RgX_blocks only worked for t_INT or t_POL coeffs + 5- spurious bnrdlisclist entries (with negative number of real + places...) when modulus not a conductor +BA 6- modular algorithms could fail for very large input +BA 7- [mingw] writebin did not work +BA 8- forprime(N=2^100,oo,...) did not work + 9- mseval(W,s,p) did not check 'p' in weight 2 + 10- matrixqz(m, -1 or -2) was very slow + 11- ZG_normalize destroyed its input + 12- [install] prototype code D0,U, did not work +BA 13- use of complex default function argument could lead to stack error. + 14- factorpadic(2*x^4+x^2,2,2) -> division by 0 [#1876] + 15- incgam(110, I) very inaccurate +BA 16- ellinit over number field was not compatible with generic operations. +BA 17- [breakloop] dbg_up could confuse the breakloop. +HC 18- sumnummonieninit(,,a) + sumnummonien(n = a, ...) with a > 1 gave wrong + result + 19- sumnummonieninit([a,b], t_CLOSURE) => incorrect initialization + 20- lngamma(1+epsilon) much slower than in pari-2.7; eg. 10^-4 at \p200 +BA 21- lfun(...,t_SER,n>=1) returned a wrong result + 22- lfun(,, negative derivation order) => internal bug + 23- SEGV in sumnummonieninit when accuracy too low +BA 24- ellidentify: check curve is over Q + 25- gdivgs(t_RFRAC,s) could create invalid objects + 26- chareval(G,chi,x,[[...], o]) didn't work (off-by-1) + 27- polsturm(x^2-1,[-1,1]) -> SEGV [#1884] + 28- typo in description of "call" symbolic operator [ _(_) ] +PB 29- matinverseimage could find spurious solutions [#1888] + 30- ellsea could leak variables (=> "no more variables" error) + 31- ellsea leaked clones + 32- 1/x - 1/x returned gen_0 (instead of Pol(0)) + 33- printf("%d",factor(2*3*5*7)) => SEGV + 34- lfuninit: incorrect guess for root number depending on init domain + E = ellinit([0,-a,1,157*a-27,-90*a-543], nfinit(a^2-a+1)); + lfuninit(E,[0,20,10])[2][6] -> 1 (whereas rootno is -1) + 35- bnrinit(bnf,idealfactor(bnf,1)) -> SEGV [#1890] +BA 36- lfuncreate([1,0,[0],1,1,1,1]) -> SEGV (invalid input) + 37- thue(imaginary quadratic of disc -3f^2, n) could return half-integers +BA 38- [libpari] Z_ZV_mod caused gerepile error + 39- bestappr(1+0.*I) -> 1 + 0*I instead of 1 + 40- memory corruption in qfminim [#1894] + 41- polylog(x) used realprecision accuracy instead of precision(x) [#1895] + 42- exp or log(I*1.0) used realprecision accuracy instead of precision(x) + [#1896] +PB 43- M = ffgen(2017^3)*[0, 1; 0, 0]; M^-1 -> SEGV [#1887] +BA 44- lfun(lfungenus2(...),...) was much slower than intended +BA 45- nfsubfields(polcyclo(88), 20) -> wrong result [#1892] +BA 46- [mpi] dynamically linking with libpari did not work + 47- sin(1 + 1.0*I) used realprecision accuracy instead of precision(x); + same for cos, tan, arg, expm1, sinc. + 48- make idealstar(,N) an actual shortcut for ideal(nfinit(x), N) [#1900]; + it is recommended to use znstar instead. +HIL 49- polclass could access invalid memory + 50- K=bnfinit(x^2+2323); + P=idealprimedec(K,23)[1]; + bnfisprincipal(K,P); \\ oo loop + 51- nfvalrem() overflowed in case of negative valuation + 52- ellminimalmodel over number field fails with impossible inverse [#1899] + 53- incorrect GC in nfgcd [#1903] + 54- missing GC in rnfisabelian + 55- derivnum(x = a, ...) allowed t_POL a but not t_RFRAC + 56- missing GC in vectorsmall +BA 57- missing GC in idealramgroups +BA 58- ellweilpairing failed for supersingular curves in char. 2 [#1910] +BA 59- Mat()[1..0,1..0] -> SEGV +PB 60- galoissubcyclo(1,1,fl) ignored fl [#1914] + 61- PostScript plot: fix font scaling +EB 62- GP was incorrectly issuing fflush(NULL) [#1913] + 63- issquare(Mod(1,67)*x^4+Mod(14,67)*x^2+Mod(49,67)) -> SEGV [#1915] + 64- polroots(t_POL whose coeffs vary by a factor > 2^100000) -> SEGV + (or stack overflow) + 65- nfisincl(nf1, nf2) didn't work [#1921] + 66- setting sopath in gprc then calling install() -> SEGV [#1922] + 67- nfislocalpower did not accept a bnf in place of a nf + 68- subst(t_SER, x, 0 t_POL) [#1925], e.g + subst(x+O(x^2),x,0*x) -> 1 + O(x) [ instead of 0 ] + subst(x+O(x^2),x,Mod(0,3)*x) -> O(x^0) [ instead of Mod(0,3) ] + 69- valuation(Mod(0,3)*x,x) -> 0 [ instead of oo ] + 70- factor(x^2 * (1+O(5^2))) -> domain error + 71- for T in Q_p[X], factor (round then compute multiplicity) + and issquarefree (assume input is separable) did not agree. Now, + factor() repeats irreducible factors according to apparent + multiplicity (note that the multiplicity is not well defined for + inexact inputs, which are close to being inseparable, i.e. + v_p( disc(T) ) is large compared to the input accuracy). On the + other hand, factorpadic with exact input is able to compute + multiplicities reliably. + 72- Vecsmall(t_STR with extended (8-bit) ASCII) -> platform dependent + + can't be converted back with Strchr + 73- x^y: loss of accuracy when y >> 1 and x exact +BA 74- [pthread] do not use pthread when nbthreads=1 + 75- sumdiv(arg. in factored form, k < 0) => error or wrong result + 76- Mod(0,1)^0 -> invalid t_INTMOD + 77- gamma and lngamma inaccurate near negative integers, e.g. + gamma(-1+10^-16) +BA 78- nfisisom, nfisincl and factor were still using factornf +PB 79- nfinit(t_POL of deg 1, 3) => incorrect change of variable + 80- subst(t_SER, x, x+O(x^N)) was slow [ e.g. ellj(x+O(x^10000)) ] +BA 81- setrand(2);polclass(-5032,27) -> wrong result + 82- polredabs(non-monic t_POL, 1) => potentially wrong transformation map + 83- if 'a < 'b < 'c, charpoly(Mod(a, a^2 + Mod(b,b^2+1)), c) => 1 + [ now error: the result can't be repreѕented as a t_POL in 'c, only + as a t_POLMOD modulo b^2 whose coefficients are t_POL in 'c ] + 84- mathouseholder: missing sanity checks (SEGV, didn't accept t_COL) + 85- bestapprPade did not handle positive valuation correctly [#1945] +PB 86- subst(Mod(1/z, y), z, x) -> wrong answer [#1949] + 87- subst(1+x^2+O(x^3),x,y) -> 1 + y^2 + O(y^4) [#1950] +BA 88- [pthread] thread stacks could silently overflow +XR 89- padicfields(3,6) -> FPE [#1947] + 90- nfislocalpower could compute ZV_pval(0 vector,) -> oo loop [#1955] +BA 91- iferr(1/0,E,1,break()) -> SEGV + 92- missing roots in nfroots (when r2>0) [#1956,#1957] +BA 93- factormod(...,p,1) was incorrect for large p +BA 94- foo = vectorsmall(1);for(i=1,1, foo[1]); -> error [#1958] +BA 95- v=Vecsmall([2]); Fl_neg(v[1],3) when Fl_neg is installed [#1958] + 96- fincke_pohst with stockmax = -1 and non-zero CHECK (infinite + capacity + selection criterion) could lose some vectors + Affected polredabs [#1963] + 97- ellwp(,,1) returned \wp'/2 instead of \wp' + 98- inaccuracy in ellL1 / ellanalyticrank (usually last digit) + 99- nffactor factors could be non-monic [#1967] + 100- bestapprPade(,explicit B): wrong result [#1946] + 101- bestappr(Mod(10,307), 40) -> 10 (instead of 3/31) + 102- mathnf([x;1]) -> SEGV [#1971] +BA 103- ispower((x^3+ffgen([2^127-1,3])*x+1)^2,2,&r);r was wrong [#1976] + 104- factorpadic(3*x+O(2^5),2,5) -> division by 0 [#1982] + 105- vecmax(Vecsmall()) -> some random value [#1983] + 106- SEGV in install() when bad prototype supplied [#1977] + 107- ellzeta(., real number) possibly wrong result [#1981] +BA 108- sqrtn(Mod(9, 101), -2) -> wrong result + 109- multiplying t_SER with t_INTMOD entries (mod a composite) whose + leading term cancels -> SEGV [#1986] + 110- lambertw(t_SER) could create invalid t_FRACs + 111- matintersect did not always return a basis + 112- nfinit([T, listP]) could error out when a small prime + outside listP divided the index [#1993] + 113- lfuntheta(1,1e50) -> overflow + 114- nfrootsof1 could return a t_POL (always return \pm 1 or a t_COL) + 115- oo-loop in msfromell [#1906] + 116- memory leak due to cgetg_block / gunclone_deep usage + 117- memory leak in ellminimalmodel when e memoized periods/roots components +BA 118- [win32] plot colors were shifted by 1 + 119- RgX_translate(P,c) with c equal to \pm 1 (e.g. as t_REAL or t_PADIC) + incorrectly replaced c by its t_INT approximation [#1995] +BA 120- matsupplement(Mod(matrix(5,1),2)) --> SEGV [#1996] + 121- PostScript engine: missing 'stroke' in plotbox method => some + commands (e.g. colors) could be ignored + 122- sqrtnint(a,k) very inefficient for huge k [and huge a] + 123- powuu(0,1) -> SEGV + 124- mathnfmodid([;], t_VEC) did not correspond to specifications + (always returned [;]) + 125- matsolvemod([;],2,[]~) -> no solution [ instead of []~ ] + 126- a[1]=vector(10):a[1][1]=b;a[1]=vector(10); could leak memory [#1999] + 127- lcm(Pol(0),0) -> division by 0 + 128- QX_complex_roots(a*x^n,) => SEGV +BA 129- default(strictargs,1); my(a=2);(f(b,c)=123);f(1) => SEGV [#2004] + 130- factor(0.*x + 1) -> SEGV [#2005] + 131- sinh(x close to 0) -> loss of accuracy + 132- sinc(0.*I) -> division by 0 + 133- wrong result in bnfinit due to loss of accuracy and unsufficient + heuristics to detect it [#2007]. + {setrand(2);p=x^8-1661000*x^6+967427199776*x^4-230628391373468096*x^2 + +19278898978723566612544;bnfinit(p).cyc} + => [60,2,2,2,2,2,2,2,2,2] instead of [6,2] + 134- nffactor(y^8-y^6+y^4-y^2+1,x^4-1) -> concatenation error [#2009] + 135- vecsort / vecsearch: comparison function was required to assume + integral values; allow t_INT, t_FRAC or t_REAL + 136- mathess was very unstable, and so was charpoly(,,2) [#2010] + 137- memory corruption in nffactor [#2013] +BA 138- partitions(1,[0,5],[3,4]) -> incorrect result + 139- quadclassunit(-699,,[6,6]) -> SEGV [#2015] + 140- intnum would lose accuracy when using more control points, e.g. + intnum(x=0,1,x*cos(Pi*x), 2) at \p100 [#2014] + 141- polcoeff(t_SER) -> incorrect types and values + polcoeff(1/(1+x+y+O(y^2)+O(x^2)), 1,y) -> 2*x-1 [now -1+2*x+O(x^2)] + polcoeff(y+O(y^2), 0, x) -> 0 [now y+O(y^2)] + 142- ellperiods([1,0.1 + I/10^50]) -> division by 0 + 143- nfmodpr(nfinit(x),[],[]~) -> SEGV [#2020] + 144- nfisisom(nfinit(x^2+4),x^2+1) -> reverse isomorphism [#2022] + 145- forbid ellinit(E/Qp, prime != p or 1.0) + 146- elllocalred(non integral E/nf,p) -> wrong result + 147- ellorder(E/Q, P with t_FFELT entries) not accepted [ t_INTMOD was ] + 148- missing GC in lfuntheta + 149- implementation of newblock was incompatible with getheap(). Now we + always include the 'block' size in the header. + 150- gamma(0.0+1/2*x+O(x^2)) -> domain error in factorial + 151- affrr(0.0, x) did not reset the exponent correctly: use + min(expo(0.0), bit_accuracy(lg(x))) + 152- matkerint could be exponentially slow; guarantee polynomial time + (drawback: slows down some classes of matrices) [#2034] + 153- ellminimaltwist did not check that E is defined over Q + 154- padicappr('x,Mod(0,'t^2+1)+O(7^10)) -> SEGV [#2036] + 155- allow \r "foo bar" (quotes around file names are optional for + \l,\r, \w; they allow filenames with spaces) [#2035] + 156- memory leak in polclass() +AP 157- fix integrality condition in algsubalg/algquotient/algcentralproj + 158- factorpadic gave wrong results at low accuracy + + Added + 1- [libari] ZM_isidentity + 2- [libpari] rename buchnarrow -> bnfnarrow + 3- [libpari] ZX_radical +BA 4- [gmp] support for mpn_divexact_1 +BA 5- parallel fflog in characteristic at most 5 +BA 6- parallel znlog for large characteristic + 7- [libpari] u_chinese_coprime +BA 8- new GP function elltamagawa + 9- [libpari] RgX_rescale_to_int, RgM_rescale_to_int +BA 10- [libpari] Flx_digits/FlxV_Flx_fromdigits + 11- new argument (multiple derivation) in GP function derivnum + 12- allow matrix(n) for n x n matrices + 13- new GP functions nfeltsign, nfeltembed, nfpolsturm +HC 14- new GP functions sumnumap, sumnumapinit (Abel-Plana summation) +HC 15- new GP functions zetamultall, zetamultconvert + 16- allow t_VECSMALL for vecsort [already there but undocumented] and + vecsearch [already there but prevented by a typo] +CG 17- new GP function matpermanent [#1860] + 18- [libpari] hammingl, RgM_is_QM, vecsmall_prod, zm_permanent, + ZM_permanent + 19- lfuncreate: no longer assume Ramanujan-Petersson, allow specifying + an arbitrary growth rate a_n = O(n^(k_1 + eps)) +BA 20- new GP function vecprod + 21- new GP function znchar +VD 22- new GP functions forperm, forsubset +PB 23- [libpari] F2xqM_F2xqC_gauss F2xqM_F2xqC_invimage F2xqM_gauss F2xqM_invimage + FlxqM_FlxqC_invimage FlxqM_invimage + FqM_FqC_invimage FqM_invimage + gen_matcolinvimage gen_matinvimage + FFM_FFC_invimage FFM_FFC_gauss FFM_gauss FFM_invimage + 24- new GP function polrootsbound +HC 25- new GP functions prodeulerrat, sumeulerrat, sumnumrat, prodnumrat +HC 26- new GP function zetahurwitz + 27- [libpari] sqrtnr_abs + 28- binomial(x,k): allow omitting k [ => vecbinomial ] +VD 29- [libpari] forperm_init, forperm_next, forperm, forallsubset_init, + forallsubset_next, forksubset_init, forksubset_next, forsubset + 30- [libpari] lindep_bit +BA 31- new GP function ellbsd + 32- new GP function poldiscfactors + 33- [libpari] FpX_gcd_check + 34- [libpari] str_init, str_printf, str_putc, str_puts + 35- new GP function printp [ used to exist with a slightly different + meaning: pretty format vs prettymatrix ] + 36- new GP function sumnumlagrange, sumnulagrangeinit + 37- [libpari] int2um1 (for 2^n - 1) + 38- Fl_powu: special purpose code when base is 2 + 39- [libpari] vecpowuu, vecpowug + 40- [libpari] zerovec_block + 41- [libpari] Z_ZV_mod_tree + 42- [libpari] vecvecsmall_max, vecsmall_to_vec_inplace + 43- new GP function zetamultinit +BA 44- new GP functions permorder, permsign +BA 45- new GP function galoisconjclasses +AP 46- new GP functions galoischartable, alggroupcenter, algmakeintegral + 47- [libpari] Flxn_inv + 48- new GP function chargalois + 49- [libpari] expose znstar internal interface: znstar_get_N, + znstar_get_conreycyc, znstar_get_conreygen, znstar_get_faN, znstar_get_no, + znstar_get_pe, znstar_get_Ui, checkznstar_i + 50- [libpari] coreu_fact, moebiusu_fact + 51- [libpari] ZabM_ker, ZabM_indexrank, ZabM_inv, ZabM_pseudoinv, +BA 52- [libpari] stack_malloc_align +PB 53- [libpari] FFM_deplin, FFM_indexrank, FFM_suppl F2xqM_deplin, + F2xqM_indexrank, F2xqM_suppl FlxqM_deplin, FlxqM_indexrank, FlxqM_suppl + FqM_indexrank +JD 54- [plot] SVG support + 55- [libpari] upper_to_cx, cxredsl2, cxredsl2_i + 56- new GP function charpow + 57- [libpari] ZM_pseudoinv + 58- [libpari] ulogintall, ulogint, umuluu_or_0, QXQV_to_FpM, ZM_ZX_mul, + RgM_RgX_mul + 59- new GP function ellminimaldisc + 60- [libpari] rfracrecip_to_ser_absolute, RgV_to_ser + 61- new GP function znchardecompose, zncharconductor, znchartoprimitive +PB 62- [libpari] perm_sign +PB 63- [libpari] FlxC_neg FlxC_sub FlxM_neg FlxM_sub FlxqC_Flxq_mul + FlxqM_Flxq_mul zero_FlxC zero_FlxM +PB 64- asymptotically fast linear algebra using CUP decomposition + 65- [libpari] nf_get_zkden, nf_get_zkprimpart + 66- [libpari] idealprimedec_galois, idealprimedec_degrees + 67- [libpari] idealaddtoone_raw, ZM_hnfmodprime, pr_hnf +BA 68- new GP functions hyperellratpoints and ellratpoints based on + Michael Stoll ratpoints code. + 69- [libpari] Z_pollardbrent, Z_ECM + 70- [libpari] RgX_mulhigh_i + 71- GP function znchargauss + 72- Configure --graphic=svg + 73- GP function divisorslenstra (divisors in residue classes) + 74- [libpari] lg_increase, vecfactoru, vecfactoru_i, vecfactoroddu, + vecfactoroddu_i, vecfactorsquarefreeu +BA 75- ellheight for curves over number fields + 76- new GP function forfactored + 77- [libpari] ZV_sort_inplace +BA 78- ellrootno for curves over number fields + 79- optional flag to 'divisors' (add factorization) + 80- GP functions fordivfactored +BA 81- [libpari] ZXQM_mul, ZXQM_sqr, QXQM_mul, QXQM_sqr + 82- [libpari] ZX_z_unscale + 83- [libpari] Flxn_mul +BA 84- [libpari] FlxqX_is_squarefree, FlxqX_nbfact, RgX_to_FlxqX + 85- [libpari] RgX_addmulXn, RgX_addmulXn_shallow, RgX_addspec, + RgX_addspec_shallow +BA 86- GP functions galoischardet, galoischarpoly + 87- [libpari] mulcxpowIs +BA 88- [libpari] function RgXn_sqrt +KB+HC89- new package 'mf' for modular forms; new GP functions + getcache lfunmf mfDelta mfEH + mfEk mfTheta mfatkin mfatkineigenvalues + mfatkininit mfbasis mfbd mfbracket + mfcoef mfcoefs mfconductor mfcosets + mfcuspisregular mfcusps mfcuspval mfcuspwidth + mfderiv mfderivE2 mfdescribe mfdim + mfdiv mfeigenbasis mfeigensearch mfeisenstein + mfembed mfeval mffields mffromell + mffrometaquo mffromlfun mffromqf mfgaloistype + mfhecke mfheckemat mfinit mfisCM + mfisequal mfkohnenbasis mfkohnenbijection mfkohneneigenbasis + mflinear mfmanin mfmul mfnumcusps + mfparams mfperiodpol mfperiodpolbasis mfpetersson + mfpow mfsearch mfshift mfshimura + mfslashexpansion mfspace mfsplit mfsturm + mfsymbol mfsymboleval mftaylor mftobasis + mftocoset mftonew mftraceform mftwist + 90- [libpari] ZV_cba, Z_cba_extend + 91- [libpari] RgV_is_ZVpos, RgV_is_ZVnon0 +JA 92- GP functions primecert, primecertexport, primecertisvalid (ECPP). + 93- [libpari] ncharvecexpo + 94- [libpari] rootsof1q_cx, rootsof1powinit, rootsof1pow +BA 95- [libpari] RgX_digits + 96- [libpari] Q_content_safe +BA 97- ellisomat: support for curve over finite field without CM + 98- GP function: bestapprnf + 99- [libpari] vec_prepend, lindepfull_bit +BA 100- [libpari] QX_mul/QX_sqr/QX_ZX_rem, FFX_mul/FFX_sqr/FFX_rem, + RgX_mul_i/RgX_sqr_i, ZXQX_mul/ZXQX_sqr +BA 101- [libpari] Rg_type, RgX_type2, RgX_type3, + RgM_type, RgM_type2, RgM_RgC_type +BA 102- RgX_mul/RgX_sqr: support for coefficient ring detection +BA 103- [libpari] FlxqXQ_auttrace +BA 104- [libpari] F2xX_F2x_add, FlxX_Flx_sub, FqX_Fq_sub +BA 105- [libpari] F2x_get_red, get_F2x_mod, get_F2x_var, get_F2x_degree, + F2xqX_get_red, get_F2xqX_mod, get_F2xqX_var, get_F2xqX_degree + 106- [libpari] vecmoduu, quadclassno, mkfracss, sstoQ, Qtoss + 107- [libpari] znchar_quad +VD 108- [libpari] closure_func_err +BA 109- [libpari] F2xqX_extgcd, F2xqXQ_inv, F2xqXQ_invsafe, FFXQ_inv +BA 110- [libpari] ZV_nv_mod_tree, ZM_nv_mod_tree, ZXC_nv_mod_tree, + ZXM_nv_mod_tree +BA 111- [libpari] FF_gen, FF_map, FFX_preimage, FF_Frobenius +BA 112- New GP functions ffembed, ffmap, ffinvmap, ffcompomap, ffextend, + fffrobenius + 113- [libpari] cx_approx_equal +BA 114- [libpari] F2xqX_ispower, FlxqX_ispower, FpXQX_ispower, FFX_ispower, + FpX_ispower, FqX_to_mod, FqM_to_mod, RgC_to_FqC, RgM_to_FqM, + QXQC_to_mod_shallow, QXQM_to_mod_shallow +BA 115- [libpari] ZC_Q_mul, ZM_Q_mul, ZX_Q_mul, QM_mul, QM_det, QM_ker +BA 116- [libpari] Fl_log, Fl_log_pre, Fl_sqrtn, Fl_sqrtn_pre +BA 117- [libpari] Flc_Flv_mul, Flm_adjoint, Flm_powers + 118- New GP function exponent() +BA 119- [libpari] ZXM_init_CRT, ZXM_incremental_CRT + 120- [libpari] numdivu, numdivu_fact, gexpo_safe +BA 121- [libpari] FpXC_center, FpXM_center +BA 122- [libpari] nxV_chinese_center, nxCV_chinese_center, nxMV_chinese_center +AP 123- New GP functions matdetmod, matimagemod, matinvmod, matkermod +BA 124- [libpari] Z_content + 125- [libpari] checkMF, checkMF_i, checkmf_i, inv_content +BA 126- [libpari] F2xqXQ_inv, F2xqXQ_invsafe, F2xqX_invBarrett, Flc_Flv_mul + coprimes_zv + 127- New GP functions msdim, mslattice, mspetersson, mspolygon, + ellweilcurve, ellpadicbsd, ellpadicregulator +BA 128- New GP function lfuntwist + 129- [libpari] mkmat22, mkmat22s, Qp_agm2_sequence, Qp_ascending_Landen, + Qp_descending_Landen +BA 130- [libpari] famat_pows_shallow, famat_mulpows_shallow + 131- [libpari] QXQ_div_ratlift, ZM_equal0, QM_ImZ_hnfall, QM_ImQ_hnfall +BA 132- [libpari] ZXn_mul, ZXn_sqr, FpXn_mul, FpXn_sqr, RgXn_recip_shallow, + FpXn_exp, FpX_Newton, FpX_fromNewton, FpX_Laplace, FpX_invLaplace +BA 133- [libpari] FpX_integ, FpX_convol + 134- allow zeta(power series) + 135- New GP function laurentseries +LGr 136- default(echo): new value echo = 2 [ print as is, incl. whitespace ] +LGr 137- allow power series as limits for intnum() + 138- [libpari] uordinal +BA 139- [libpari] QM_gauss, QM_rank, QM_indexrank, QM_QC_mul +LGr 140- make TESTS="a b c" test-all to test only 'a' 'b' and 'c', e.g. + 'lfun', 'gamma' and 'lfuntype' (same for statest-all and dyntest-all) + 141- allow quaddisc(integer factorization matrix) + 142- New GP function forsquarefree + 143- allow matsolve(m,b) when m is only left-invertible +BA 144- [libpari] QXQ_mul, QXQ_sqr, FFXQ_mul, FFXQ_sqr + 145- New GP function idealispower +BA 146- New GP function idealredmodpower + 147- 'ms' modular symbol package: support N = 1 as well + 148- allow mssplit(M), splits msnew(M) by default +BA 149- [libpari] FpXQXn_mul, FpXQXn_sqr, FqXn_mul, FqXn_sqr + 150- New GP functions plothexport, plothrawexport, plotexport + 151- plotcolor(w, col) now allows color names (t_STR) or [R,G,B] values + 152- allow a t_STR composed of # + 6 hex digits for colour names + 153- isprime(,3): use ECPP + 154- new GP function log1p [#1829] +BA 155- qfisom: allow to give the automorphism group of the second lattice + 156- optional argument to idealfactor [limit factorization] + 157- [libpari] idealHNF_Z_factor_i, idealfactor_limit, famat_div_shallow, + Q_factor, Q_factor_limit, vecsquarefreeu, gprec_wensure + 158- vecsort / vecsearch: allow sort/search wrt to a "key" (closure with + arity 1) + 159- [libpari] forprimestep_init + 160- allow forstep(a,b, Mod(c,q), ...) + 161- new GP function forprimestep + 162- [libpari] RgX_sylvestermatrix + 163- [libpari] Rg_to_Fq, Fp_invgen +BA 164- [libpari] F2xqX_factor_squarefree, FlxqX_factor_squarefree, + FpXQX_factor_squarefree, FqX_factor_squarefree, FFX_factor_squarefree +BA 165- [libpari] FpXX_integ, FpXX_halve, FqX_halve, FpXQXn_exp, FqXn_exp, + FqX_integ + 166- new file Ser.c +BA 167- [libpari] FpXn_inv, FpXQXn_inv, FqXn_inv +BA 168- New file GP interface: fileclose fileextern fileflush fileopen + fileread filereadstr filewrite filewrite1 +BA 169- [libpari] Flx_ddf, F2x_ddf, FpX_ddf, F2xqX_ddf, FlxqX_ddf, FpXQX_ddf, + FqX_ddf, FFX_ddf + F2xqX_degfact, FlxqX_degfact, FpXQX_degfact, FqX_degfact, FFX_degfact + 170- new GP functions factormodSQF, factormodDDF + 171- [libpari] umuluu_le, ugcdiu, ugcdui, ulcm + 172- [libpari] Fp_center_i, FpX_center_i + 173- [libpari] hclassno6, hclassno6u +BA 174- New GP function lfunsympow +BA 175- nfsplitting: support for reducible polynomials +AP 176- new GP functions alglatadd, alglatcontains, alglatelement, alglathnf, + alglatindex, alglatinter, alglatlefttransporter, alglatmul, + alglatrighttransporter, alglatsubset +AP 177- new GP function algsplit + + Changed + 1- rewrite bnfnarrow + 2- the bid struct from idealstar has been changed, the new format is + not compatible with pari-2.9 + 3- bnrdisclist output is now an ordinary vector (not a vector of vectors) + 4- made nfsign() / nfsign_arch() reliable [ use algebraic method + besides floating point approximation to real embeddings ] + 5- support ??refcard-ell (or mf/nf/lfun) + 6- [libpari internals] bnrinit(,,1) [with generators] is no longer + necessary for bnrsurjection() + 7- bnrinit(,,1) is no longer necessary for bnrL1, bnrconductor, + bnrrootnumber, bnrstark, rnfkummer, galoissubcyclo + 8- msfromell: use a (much faster) modular algorithm, allow a vector + of isogenous curves + 9- mseval(W,s,p): allow 2x2 matrix for the path 'p' argument + 10- allow mseval(W, t_MAT, p) to evaluate many symbols simultaneously + 11- allow polrootsreal() and polsturm() with non-rational real polynomials + (input is rounded first) +BA 12- FlxX_shift did not support negative (left) shift. +BA 13- [libpari] rename FpX_fromdigits -> FpXV_FpX_fromdigits, + FpXQX_fromdigits -> FpXQXV_FpXQX_fromdigits + 14- made lngamma(t_COMPLEX) faster + 15- made sumnummonieninit(,1) faster +HC 16- sumnummonieninit(a) for [a,a] did not conform to documentation. + Change to sumnummonieninit(b) for [1,b] + 17- improve prime() and primepi() by adding more checkpoints [#1878] + 18- lfun(Dirichlet character): switch automatically to lfunchiquad + (Kronecker) if char has order <= 2 + 19- nfchecksigns: replace by rigorous algorithm + 20- asympnum: better tunings => usually finds more terms + 21- extended help: make ?? op work for ALL operators (=> GP operators@2) + 22- idealstar(,N) : always include generators, for all values of flag + [ this is cheap, allowing not to compute it doesn't make much sense; + and G.gen is now always defined. ] + 23- let ellsea call the generic algorithm when q <= 523 to avoid an oo-loop + 24- sqrtnr algorithm (Newton iteration instead of exp(log(x)/n) +BA 25- quadgen/quadunit: allow to specify the variable name instead of w. + 26- [libpari] rename vecbinome -> vecbinomial + 27- [libpari] rename padic_lindep -> lindep_padic, Xadic_lindep -> + lindep_Xadic + 28- x^(t_FRAC) use sqrtnr if possible +BA 29- keri replaced by ZM_ker (use modular algorithm) + 30- lfuncreate() change of format for (p,d)->Lp closure: + - Lp here and in bad primes [p,Lp] must now use the actual local + factor and not its inverse + - d is now the exact number of terms needed (was 1 less), i.e. + one need only return Lp + O(x^d) + - bad primes are given as a separate 2nd component: + [Lp, [[p1,L1],...[pk,Lk]]], not as [Lp, [p1,L1],...[pk,Lk]] + 31- faster nfgaloismatrix / nfgaloisapply(nf,s, ideal) + 32- nf struct: nf[7] now stores nf.zk / content(nf.zk). Old format is + still supported (to read in data involving old-style nf generated by + gp version < 2.10) but incurs a small speed penalty. +JD 33- move plotport.c to libpari + 34- default window size for hi-res plots using --graphic=X + 35- component(t_POL T, n) used to return polcoeff(T, n-1) for all n >= 1 + [ undocumented compatibility behaviour, deprecated since the + introduction of polcoeff ], and raised an exception for n <= 0. + Now returns a true GEN component whenever it exists and raises an + exception when it does not [ n <= 0 or n > polcoeff(T)+1 ]. +BA 36- Fl_addmul_pre: change arguments order to follow Fp_addmul convention + 37- issquarefree / isfundamental with integer argument: allow factored form + 38- change polred-type algorithm to return 'x' (no longer 'x-1') for + the field of rational numbers (make it consistent with polredabs) +BA 39- ellisomat(E,{fl}) is now ellisomat(E,{p},{fl}) (p degree of isogenies) + 40- the definition used in polred / polredbest / polredabs to decide + what is the "best" polynomial to return + 41- removed resultant_all, use RgX_resultant_all + 42- polresultant: no longer compute the content of arguments + (potentially very expensive for a generically small gain) + 43- support Q(i) in Q_denom / Q_remove_denom +BA 44-[libpari] rename {FpXQXQ,FlxqXQ,F2xqXQ}V_aut{sum,trace,pow} to + {FpXQXQ,FlxqXQ,F2xqXQ}_aut{sum,trace,pow} +BA 45-[libpari] FpXQXQ_auttrace now identical to FpXQ_auttrace +BA 46-[libpari] RgX_type now only handles polynomials. + 47-log: change threshold between Taylor / AGM when x close to a power + of 2 [#1934] + 48-[libpari] ZM_inv and QM_inv interface + 49- K.tu[2]: make it a t_INT if possible, else a t_POLMOD + 50- removed warning "Mod(a,b)^n with n >> b : wasteful" + 51- ellpadicmatrix now returns a pair of matrices (instead of a matrix + whose entries are pairs of values) + 52- ellpadicheight and ellpadicmatrix no longer accept [p,[a,b]] + arguments; use * [a,b]~ + 53- ellpadics2: allow curves with multiplicative reduction + 54- E/Qp now allowed in ellcard, ellap, ellgroup, ellissupersingular, + ellpadicfrobenius, ellpadics2, ellintegralmodel, elllocalred + 55- E/Qp convert coefficient to exact form using centered residues + 56- msissymbol now returns a GEN (gen_0/gen_1) instead of a long, allow + t_MAT arguments and return a vector of 0/1 in this case. + 57- allow mseval(M, t_MAT) + 58- change 'debugmem' default value to 1; + no memory-related message at value 0 (not recommended under gp). +BA 59- V=galoisfixedfield(,,2): return V[1] in the same variable as the + coeffs of V[3] instead of P. + 60- numtoperm now returns a t_VECSMALL (so that results can be + multiplied as permutations, etc.), no longer a ZV + 61- improve Fp_sqrt for p = 5 (mod 8) [Atkin's formula] + 62- improved matrixqz(,‐1 or -2) by using matkermod + 63- The functions psdraw, psploth and psplothraw and the default psfile + are obsolete. Use one of plotexport, plothexport or plothrawexport + with format "ps" and write the result to file. +AP 64- new implementation of matsolvemod; old matsolvemod0 is deprecated + 65- plotcolor(w,c) now returns the [R,G,B] value attached to c + 66- allow plotdraw(w) for plotdraw([w,0,0]) + 67- allow isprime(n) to use ECPP + 68- isprime(n,1) no longer outputs a certificate, use primecert(n) + 69- isprime(n,1) no longer uses APRCL for large prime divisors of n-1 + (pure Pocklington-Lehmer-Selfridge); use primecert(n). + 70- getrand() encoded results in a way that depended on 32bit/64bit arch + 71- thue(p, rhs) is much easier when p has no real roots; don't insist + on computing bnfinit(p) in this case [#2003] + 72- use Newton in expm1 + 73- change rnfpolredabs so that it outputs a canonical polynomial. As a + result, the function is no longer Obsolete. + 74- allow polrecip(scalar x) -> x + 75- extend factormod(f, D) for general finite fields: D = p prime + [over Fp], D = [T,p] (over Fp[x]/(T)), or omited [over field of + definition of f]. Same for polrootsmod. + 76- factorff and polrootsff are now obsolete. Use factormod/polrootsmod + 77- Ser(s, 'x, d) now always return a series with d significant terms. + It used to return a t_SER s in 'x verbatim and to use all given + coefficients for a t_VEC/t_COL. Only if d is explicitly given, + no change for Ser(s,'x) + 78- elllocalred, ellap, ellcard, ellissupersingular, ellgroup(,0): + allow models which are not p-integral + 79- ellgroup: allow E over number field + 80- factorback([;]) is now invalid [ [;] is not the empty factorization, + factor(1) = matrix(0,2) is ] + 81- cmpiu / cmpiu, equaliu / equalui : no longer assume that t_INT argument + is non-negative + 82- rename diviu_rem -> absdiviu_rem, udiviu_rem -> uabsdiviu_rem, + udivui_rem -> uabsdivui_rem + 83- allow E.omega, E.eta, E.area for E over number field + 84- ellpointtoz for E over number field +AP 85- algnorm, algtrace and algcharpoly now have an optional flag to get the + absolute version over an alginit algebra +AP 86- renamed algsplittingmatrix -> algtomatrix +AP 87- algleftmultable now always returns the multiplication table on the + integral basis +AP 88- merge algdecomposition + algsimpledec -> algsimpledec +AP 89- algpoleval: new syntax for matrix argument algpoleval(al,pol,[x,mx]) +BA 90- ellmoddegree: return only the modular degree, do not depend on current + precision. + 91- polsturm: allow non-squarefree polynomials (count distinct roots) +AP 92- merge algdim + algdim -> algdim(,{abs=0}) +AP 93- merge algleftmultable + algtomatrix -> algtomatrix(,{abs=0}) + + Removed + 1- file 'MACHINES' (no longer maintained) + 2- useless argument nf in ZC_nfval, ZC_nfvalrem, pr_equal, ZC_prdvd + 3- useless flag argument in polrootsmod + 4- [libpari] useless function Flx_roots_naive; rootmod and rootmod2 + are now an alias for polrootsmod (both have been deprecated for years) + rootmod0 is just as obsolete. diff --git a/pari-2.11.0.tar.gz b/pari-2.11.0.tar.gz new file mode 100644 index 0000000..0fa356c --- /dev/null +++ b/pari-2.11.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3835caccaa3e0c64764521032d89efeb8773cce841f6655fec6d58e790f4c9a1 +size 4419112 diff --git a/pari-2.11.0.tar.gz.asc b/pari-2.11.0.tar.gz.asc new file mode 100644 index 0000000..f8c932c --- /dev/null +++ b/pari-2.11.0.tar.gz.asc @@ -0,0 +1,17 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1 + +iQIcBAABAgAGBQJbTzT/AAoJEI8OfCtFIuOHLhkQAISARBXFFkFopo4t1XONpoE0 +gx763x2jdBQao6IredpUFxEAJlXFLo+oIkrKKlmuhH2hIf6TyLrHm5aGUWZ64Uxf +/ZYMfsWgmal7KFvg46mjHpwd6k7VxSrooWmBFO5lpee10xLn7uYpornLAm6jBtYw +kkY10W55DMzGDVda5uNGhaljqzG3ptfbTHTL99dRB25CLRHH9xaJBVTtgOeV44dL +rshSpVnfPcN/p7HAJpolBHuOJdqXdreCSPUFprBf48+XG0e4os9wYYkhLbnQu201 +oDBK9LAmoZlv9TZUHi8bmJKp5Ay74Z94hbkGiTZVah0Qe93HDDbK3T4m7gEmLmf0 +DQo41/0Y7C+LxRVOfL6ypWjmFPrn5Y5CFX0oksCb61QTG8fja1eApM5gpaHDweMm +4Sq+EzIN8AgqFYVKat/34CZLqrufEeaQBwSYOv86MtrziFNUAe4/+sDhcTrGgSgT +Liziqmj89s8sFrYrxo6V2EBWD3Gbh2VpSz14AaRZnIZIyxu3on7sFxaBBo6wzTJy +1IXN5QVdhuUH7ZBjModYWPx8jTg8OZvqjHlrPhlAZRy7KVdEtaPSQ6MNmTjCxzUL +vmBgCrh1UQO6qNrwi3ndSmlvXTi6U7xgcNc/2JQn65vGKQVKb7D0rDxwS8zuAq1k +LUTThhjFUf9WGyFRe1t0 +=az8E +-----END PGP SIGNATURE----- diff --git a/pari-2.9.3.changelog b/pari-2.9.3.changelog deleted file mode 100644 index 891b624..0000000 --- a/pari-2.9.3.changelog +++ /dev/null @@ -1,98 +0,0 @@ -# $Id$ -Bug numbers refer to the BTS at http://pari.math.u-bordeaux.fr/Bugs/ - -Done for version 2.9.3 (released 13/7/2017): -[last column crossreferences current development release 2.10.0] - Fixed - - 1- K=bnfinit(x^2+2323); P=idealprimedec(K,23)[1]; [F50] - bnfisprincipal(K,P); \\ oo loop -BA 2- Mat()[1..0,1..0] -> SEGV [F59] -PB 3- galoissubcyclo(1,1,fl) ignored fl [#1914] [F60] -EB 4- GP was incorrectly issuing fflush(NULL) [#1913] [F62] - 5- issquare(Mod(1,67)*x^4+Mod(14,67)*x^2+Mod(49,67)) -> SEGV [#1915][F63] - 6- polroots(t_POL whose coeffs vary by a factor > 2^100000) -> SEGV [F64] - 7- nfisincl(nf1, nf2) didn't work [#1921] [F65] - 8- setting sopath in gprc then calling install() -> SEGV [#1922] [F66] - 9- nfislocalpower did not accept a bnf in place of a nf [F67] - 10- subst(t_SER, x, 0 t_POL) [#1925], e.g [F68] - subst(x+O(x^2),x,0*x) -> 1 + O(x) [ instead of 0 ] - subst(x+O(x^2),x,Mod(0,3)*x) -> O(x^0) [ instead of Mod(0,3) ] - 11- valuation(Mod(0,3)*x,x) -> 0 [ instead of oo ] [F69] - 12- factor(x^2 * (1+O(5^2))) -> domain error [F70] - 13- Vecsmall(t_STR with extended (8-bit) ASCII) -> platform dependent - + can't be converted back with Strchr [F72] -BA 14- [pthread] do not use pthread when nbthreads=1 [F74] - 15- sumdiv(arg. in factored form, k < 0) => error or wrong result [F75] - 16- Mod(0,1)^0 -> invalid t_INTMOD [F76] - 17- gamma and lngamma inaccurate near negative integers [F77] -BA 18- nfisisom, nfisincl and factor were still using factornf [F78] -PB 19- nfinit(t_POL of deg 1, 3) => incorrect change of variable [F79] - 20- subst(t_SER, x, x+O(x^N)) was slow [ e.g. ellj(x+O(x^10000)) ] [F80] -BA 21- setrand(2);polclass(-5032,27) -> wrong result [F81] - 22- polredabs(non-monic t_POL, 1) => potentially wrong map [F82] - 23- if 'a < 'b < 'c, charpoly(Mod(a, a^2 + Mod(b,b^2+1)), c) => 1 [F83] - 24- mathouseholder: missing sanity check (SEGV, didn't accept t_COL)[F84] - 25- bestapprPade did not handle positive valuation correctly [#1945][F85] -PB 26- subst(Mod(1/z, y), z, x) -> wrong answer [#1949] [F86] - -Done for version 2.9.2 (released 5/4/2017): -[last column crossreferences current development release 2.10.0] - Fixed - 1- ZG_normalize destroyed its input [F11] - 2- [install] prototype code D0,U, did not work [F12] -BA 3- use of complex default function argument could lead to error [F13] - 4- factorpadic(2*x^4+x^2,2,2) -> division by 0 [#1876] [F14] - 5- incgam(110, I) very inaccurate [F15] -BA 6- ellinit over number field was not compatible with generic ops. [F16] -BA 7- [breakloop] dbg_up could confuse the breakloop [F17] -HC 8- sumnummonieninit(,,a);sumnummonien(n = a, ...) with a > 1 wrong [F18] - 9- sumnummonieninit([a,b], t_CLOSURE) => incorrect initialization [F19] - 10- lngamma(1+epsilon) much slower than in 2.7; eg. 10^-4 at \p200 [F20] -BA 11- lfun(...,t_SER,n>=1) returned a wrong result [F21] - 12- lfun(,, negative derivation order) => internal bug [F22] -BA 13- ellidentify: check curve is over Q [F24] - 14- gdivgs(t_RFRAC,s) could create invalid objects [F25] - 15- chareval(G,chi,x,[[...], o]) didn't work (off-by-1) [F26] - 16- polsturm(x^2-1,[-1,1]) -> SEGV [#1884] [F27] - 17- typo in description of "call" symbolic operator [ _(_) ] [F28] -PB 18- matinverseimage could find spurious solutions [#1888] [F29] - 19- ellsea could leak variables (=> "no more variables" error) [F30] - 20- ellsea leaked clones [F31] - 21- 1/x - 1/x returned gen_0 (instead of Pol(0)) [F32] - 22- printf("%d",factor(2*3*5*7)) => SEGV [F33] - 23- bnrinit(bnf,idealfactor(bnf,1)) -> SEGV [#1890] [F35] -BA 24- lfuncreate([1,0,[0],1,1,1,1]) -> SEGV (invalid input) [F36] - 25- thue(imaginary quadratic of disc -3f^2, n) could return half-int [F37] -BA 26- [libpari] Z_ZV_mod caused gerepile error [F38] - 27- bestappr(1+0.*I) -> 1 + 0*I instead of 1 [F39] - 28- memory corruption in qfminim [#1894] [F40] - 29- polylog(x) used realprecision accuracy instead of precision(x) [F41] - 30- exp or log(I*1.0) used realprecision instead of precision(x) [F42] -PB 31- M = ffgen(2017^3)*[0, 1; 0, 0]; M^-1 -> SEGV [#1887] [F43] -BA 32- lfun(lfungenus2(...),...) was much slower than intended [F44] -BA 33- nfsubfields(polcyclo(88), 20) -> wrong result [#1892] [F45] -BA 34- [mpi] dynamically linking with libpari did not work [F46] - 35- sin(1 + 1.0*I) used realprecision accuracy instead of [F47] - precision(x); same for cos, tan, arg, expm1, sinc. -HIL 36- polclass could access invalid memory [F49] - 37- nfvalrem() overflowed in case of negative valuation [F51] - 38- ellminimalmodel over number field could divide by zero [#1899] [F52] - 39- incorrect GC in nfgcd [#1903] [F53] - 40- missing GC in rnfisabelian [F54] - 41- missing GC in vectorsmall [F56] -BA 42- missing GC in idealramgroups [F57] -BA 43- ellweilpairing failed for supersingular curves in char 2 [#1910] [F58] - -Done for version 2.9.1 (released 1/12/2016): -[last column crossreferences current development release 2.10.0] - Fixed - 1- subst(1+x^3+O(x^6),x,x+O(x^4)) -> SEGV [#1865] [F1] -BA 2- lfunartin was using too much stack [F2] -BA 3- fflog in char 3 or 5 was slower than intended [F3] - 4- RgX_blocks only worked for t_INT or t_POL coeffs [F4] - 5- spurious bnrdlisclist entries (with negative number of real - places...) when modulus not a conductor [F5] -BA 6- modular algorithms could fail for very large input [F6] -BA 7- [mingw] writebin did not work [F7] -BA 8- forprime(N=2^100,oo,...) did not work [F8] diff --git a/pari-2.9.3.tar.gz b/pari-2.9.3.tar.gz deleted file mode 100644 index 88a2ab5..0000000 --- a/pari-2.9.3.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e76a27779d2b1210ce1aba48363b98dd201a1bf876eb14f46ea6bd7769a00a63 -size 3847598 diff --git a/pari-2.9.3.tar.gz.asc b/pari-2.9.3.tar.gz.asc deleted file mode 100644 index 15cca35..0000000 --- a/pari-2.9.3.tar.gz.asc +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1 - -iQIcBAABAgAGBQJZW5i5AAoJEI8OfCtFIuOHkYgP/jPEYcMX65cr35V+zYmcDTl+ -VXsWOfru7h8qvmzj81Ka+LKd7jtHQhFY8Rhn7QVRB7137emW/pSbkYu0Kmjw0GQV -5HDD+BWAMTKdHWt3RJMv956RtHhkizK6x3g+2yo/22RJHwWb/F0HZRsFDpU/9oLe -iSfFEUqf/sn9e7rqekfLgS0rvQDPgQv6bCDi2e+LXu+4Dgoox1ZcJL9sJ6zjIu+C -5HboNM/X1aUJiMfrnV38LvenoyBCYxN+77vPKS5LyK00EVQbpVtsa7Jvor9MBw7M -pj45wocC92ofPTDYWhGXQuIJ4CpUoocwWkRUQ5anoWH7z5gntLl+S2W6qBLWyd9E -IMitPesVH2kzL5pj6yl+Kj7eN4EO4xZEhRd697h7Jp9no4GPGQu7DPwXJtKEC4gP -7z8Gr9vmS0llGrN3mCyZ9PmBE5w4Us2gADm2op+kIBvPhB3VuYMG4EOPt3GLWRhn -CS0IjKac9ygJRYN/MneObiUVGivO/UTAwK/PkpygXA67k3GaeLRn82oSto+hqsmd -6o5OhQp6cRSMXbkdu4s7ua5rTFjHcRdwVBzYFdR+WY2X7drKfTz2dlTbIKZUmgfI -ykeYjJq3GdpdibVuGASzlV8m+P5OXMhyVBTejWQHveHE2+V8G0IyV+1WS+okS0si -Km5HlNrKrlTx2g2COL75 -=zB6n ------END PGP SIGNATURE----- diff --git a/pari-nodate.diff b/pari-nodate.diff index 577ecd1..31484d5 100644 --- a/pari-nodate.diff +++ b/pari-nodate.diff @@ -7,14 +7,15 @@ Kill __DATE__ from source, it's pointless and can cause rebuilds. src/language/paricfg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -Index: pari-2.7.1/src/language/paricfg.c +Index: pari-2.11.0/src/language/paricfg.c =================================================================== ---- pari-2.7.1.orig/src/language/paricfg.c -+++ pari-2.7.1/src/language/paricfg.c -@@ -17,5 +17,5 @@ const char *paricfg_version = PARIVERSIO +--- pari-2.11.0.orig/src/language/paricfg.c ++++ pari-2.11.0/src/language/paricfg.c +@@ -17,6 +17,6 @@ const char *paricfg_version = PARIVERSIO const char *paricfg_buildinfo = PARIINFO; const long paricfg_version_code = PARI_VERSION_CODE; const char *paricfg_vcsversion = PARI_VCSVERSION; -const char *paricfg_compiledate = __DATE__; +const char *paricfg_compiledate = "openSUSE"; const char *paricfg_mt_engine = PARI_MT_ENGINE; + const char *paricfg_gphelp = GPHELP; diff --git a/pari.changes b/pari.changes index 3c5bc3c..4e1420f 100644 --- a/pari.changes +++ b/pari.changes @@ -1,3 +1,17 @@ +------------------------------------------------------------------- +Wed Aug 29 20:32:25 UTC 2018 - Jan Engelhardt + +- Update to new upstream release 2.11.0 + * fixed uninitialized memory reads in lgcdii and red_montgomery + * fixed memory leaks on pari_close [s_dbginfo, s_frame, + colormap/graphcolor + * polcoeff is deprecated and renamed polcoef: it now only + applies to scalars, polynomials, series and rational + functions; no longer to vector/matrices or quadratic forms + (use [] or "component") + * libpari: rename polcoeff0 -> polcoef, polcoeff_i -> polcoef_i, + truecoeff -> truecoef + ------------------------------------------------------------------- Sat Sep 9 12:33:24 UTC 2017 - jengelh@inai.de diff --git a/pari.spec b/pari.spec index d8c00ad..e41eda2 100644 --- a/pari.spec +++ b/pari.spec @@ -1,7 +1,7 @@ # # spec file for package pari # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,11 +17,11 @@ Name: pari -%define lname libpari-gmp5 -Version: 2.9.3 +%define lname libpari-gmp6 +Version: 2.11.0 Release: 0 Summary: Computer Algebra System for fast computations in Number Theory -License: GPL-2.0 +License: GPL-2.0-only Group: Productivity/Scientific/Math Url: http://pari.math.u-bordeaux.fr/ @@ -121,10 +121,10 @@ make install DESTDIR="$b"; # http://pari.math.u-bordeaux.fr/archives/pari-dev-1211/msg00006.html # for details on the SO versioning. # -%files -n libpari-gmp5 +%files -n %lname %defattr(-,root,root) %_libdir/libpari-gmp.so.%version -%_libdir/libpari-gmp.so.5 +%_libdir/libpari-gmp.so.6 %files devel %defattr(-,root,root)