------------------------------------------------------------------- Thu Oct 27 13:41:40 UTC 2022 - Andrea Manzini - Update to release 2.15.0 [The GP language] - Notion of DebugLevel "domains" that allow to finely control diagnostics. See setdebug()[,1] to obtain a list of domains. You can still print out everything using \g 10, but you can also be more specific and use \g qflll 10 which sets the debug level to 10 only for the "qflll" domain, i.e. everything related to the LLL algorithm (there are 60 domains so far). The alternate syntax setdebug("qflll", 10) is available. - The syntax setdebug(dom, val) and default(def, val) are now recognized in the GPRC file - Recall that random(10) returns an integer in [0,9]; now random(-10) draws a random integer in the symetrized interval [-9,9]. More generally, recall that random(10 * x^3) returns a polynomial of degree <= 3 and coefficients in [0, 9]; now random(-10 * x3) draws coefficients in [-9,9]. - Recall that valuation(x, t) computes the t-valuation of x; the t argument is now optional for types affording a natural valuation: t_PADIC, t_POL and t_SER: ? valuation(sin(x)) %1 = 1 ? valuation(175 + O(5^5)) %2 = 2 [Linear Algebra] - qflll() now implements most LLL modes in fplll (fast, dpe and heuristic), allowing large speedups. Directly and in the many functions that use the LLL algorithm. - new GP function snfrank(), a utility function returning q-ranks from Smith Normal Forms [Elementary Number Theory] - New GP function: harmonic(), to compute generalized harmonic numbers - Rework Euler numbers, analogously to Benoulli's: eulervec() is now faster and caches computed values, and a new GP function eulerreal() computes floating point approximations. - dirpowerssum() now allows to twist by a completely multiplicative function ? dirpowerssum(N, s, n->kronecker(-23,n)) \\ sum_{n <= N} chi(n)n^{-s} - New GP function factormodcyclo(n, p) to quickly factor the n-th cyclotomic polynomial over Fp [Elliptic Curves] - New module to compute the Mordell-Weil group of rational elliptic curves: ell2cover ellrank ellrankinit ellsaturation See the tutorial (slides and video) at http://pari.math.u-bordeaux.fr/Events/PARI2022/index.html#ELL * ellrank() implements 2-descent together with Cassels's pairing restrictions yielding rational points and an interval for the rank. If the Tate-Shafarevic group has no 4 torsion and we spend enough time looking for rational points (on the curve and auxiliary quartics), we obtain the Mordell-Weil rank and generators V for a subgroup of finite index in E(Q). * ellrankinit() precomputes ellrank() data for all quadratic twists of E. * function ellsaturation(E,V,B) updates the generators V and guarantees than any prime dividing the index must be > B. * ell2cover() returns everywhere locally soluble 2-covers of E (rational quartics on which we try to find a rational point). - New GP function elltrace() summing the Galois conjugates of a point on E - New input format for elliptic curves: ellinit([j]) as a shortcut for ellfromj(j). [Curves of Higher Genus] - genus2red(): the given integral model is now a pair [P,Q] such that y^2+Q*y = P is minimal everywhere (was minimal over Z[1/2]). - new GP functions to handle models of hyperelliptic curves hyperelldisc hyperellisoncurve hyperellminimalmodel hyperellminimaldisc hyperellred [L-functions] - New module for hypergeometric motives, see ??hgm. GP functions hgmalpha hgmbydegree hgmcyclo hgminit hgmtwist hgmcoef hgmeulerfactor hgmissymmetrical lfunhgm hgmcoefs hgmgamma hgmparams See the tutorial (slides and video) at http://pari.math.u-bordeaux.fr/Events/PARI2022/index.html#HGM - New GP function lfunparams() to return the [N, k, Gamma factors] attached to a motivic L-function. - New GP function lfuneuler() to return the local Euler factor at a prime p [Modular Forms] - Faster implementation of mfinit() and mfbasis() in weight 1 - Add optional argument to ramanujantau() to compute the newform of level 1 and given small weight; parallelize implementation. [Quadratic Fields] - qfbcomp() now implements general composition of integral binary quadratic forms (of different discriminants); f * g and f^n are shorthand for composition and powerings of forms, including (real) extended forms with a Shanks distance component. - New GP function qfbcornacchia, solving x^2 + Dy^2 = n in integers in essentially linear time. - New GP functions quadunitindex() (index of the unit group of a quadratic order in the units for the maximal order), quadunitnorm() (norm of the fundamental unit). Used to improve qfbclassno for non fundamental positive discriminants. [General Number Fields] - nfinit(), nfdisc(), nfbasis() now use lazy factorization: partially factor the polynomial discriminant, hoping the unfactored part will be a square coprime to the field discriminant, and that we will be able to prove it via a variant of Buchmann-Lenstra's algorithm. - New bit in nfinit flag to prevent LLL on nf.zk, which is a major speedup when the field degree is large and only basic field or ideal arithmetic is needed. - New GP functions nfeltissquare() and nfeltispower() to quickly check whether an algebraic number is a k-th power (and obtain a k-th root when it is). - New GP function galoissplittinginit(T) to compute the Galois group of the splitting field of T. This can be used in all Galois theory functions, e.g., galoissubgroups(), galoisidentify(), etc. - New GP function nflist to list number fields with given small Galois group by increasing discriminant. Some groups (such as A5 and A5(6)) require the new 'nflistdata' package. The same function gives a regular extension of Q(t) with the requested Galois group for all transitive subgroups of S_n, n <= 15. - New GP function nfresolvent() computes classical Galois resolvents attached to fields of small degree - Recal that ideallist(nf, B) returns integral ideals of norm bounded by B > 0. The new ideallist(nf, negative B) returns integral ideals of norm |B| (in factored form). [Class Field Theory] - New GP function bnrcompositum() to construct the compositum of two abelian extensions given by a class field theoretic description. - New module to deal with class groups of abelian fields and their Iwasawa invariants: subcyclohminus subcycloiwasawa subcyclopclgp See the tutorial (slides and video) at http://pari.math.u-bordeaux.fr/Events/PARI2022/index.html#CYCLO - New module to generate and compute with Hecke characters: gchareval gcharalgebraic gcharconductor gcharduallog gcharidentify gcharinit gcharisalgebraic gcharlocal gcharlog gcharnewprec See ??"Hecke Grossencharacters" as well as the tutorial at http://pari.math.u-bordeaux.fr/Events/PARI2022/index.html#HECKE [Transcendental functions] - New GP function lerchphi(), lerchzeta() for the Lerch Phi and zeta function. - New GP functions bessljzero(), besselyzero(), for J and Y Bessel functions - Lambert W functions are now all supported, one can specify a branch as an optional argument: lambertw(y, -1) corresponds to W_{-1}, defined for -exp(-1) <= y < 0. Complex arguments are allowed (as well as power series and p-adics) - Speedup for a number of transcendental functions at rational arguments, in particular atanh(), gamma() and lngamma(). - Allow sqrtint(), sqrtnint() and logint() for positive real number arguments - We now allow hypergeom(N, D, t_SER) [Numerical summation and integration] - New GP function sumnumsidi() for Sidi summation. - New GP function intnumosc() to integrate quasi-periodic functions of half-period H on a real half-line: ? \p200 ? H = Pi; intnumosc(x = 0, sinc(x), H) - Pi/2 time = 1,241 ms. %2 = 0.E-211 A number of summation algorithms are used (Lagrange, Sidi, Sumalt, Sumpos). See ??9 for a comparison of available integration or summation algorithms - Allow endpoints in solve() to by +oo or -oo [Miscellaneous] - poliscyclo(): replace Bradford-Davenport's Graeffe method by their invphi algorithm (much faster) - New GP function polsubcyclofast: fast variant of polsubcyclo() in small degree, returning ad hoc generators (instead of Gaussian periods) - New GP function poltomonic(T): fast monic integral generating polynomial for Q[x] / (T) - New GP function qfminimize to minimize a rational quadratic form. - New GP function setdelta() for symmetric difference. - New GP function serdiffdep() to find linear relations with polynomial coefficients of bounded degree between derivatives of a power series: ? y = sum(i=0, 50, binomial(3*i,i)*t^i) + O(t^51); ? serdiffdep(y, 4, 3) \\ order <= 4 and degrees <= 3 %2 = [(27*t^2 - 4*t)*x^2 + (54*t - 2)*x + 6, 0] ? (27*t^2 - 4*t)*y'' + (54*t - 2)*y' + 6*y %3 = O(T^50) COMPATIBILITY ISSUES BETWEEN 2.13.* and 2.15.* ============================================ 0) Obsoleted functions and interfaces: - default(debugfiles,) is now obsolete, use setdebug("io",) - Unify real and imaginary binary quadratic forms: there are no longer t_QFI and t_QFR for real an imaginary forms, only generic t_QFB. One can still create a form using q = Qfb(a,b,c) [ or Qfb(v) if v=[a,b,c] ], and a pair [q, d] denotes an extended (real) form including a Shanks distance component 'd' (which used to be part of 'q', but no longer). 1) Output changes: - system(cmd) now returns the shell return value - elltwist now returns an ellinit, and accepts the same input formats as ellinit ([a1,a2,a3,a4,a6], [a4,a6], Cremona label) - genus2red 3rd component is now a pair [P,Q] such that y^2+Q*y=P is minimal everywhere. 2) Input changes: - qfbredsl2(q, S): change format of S: was [D,isD], is now isD ------------------------------------------------------------------- Wed Apr 13 18:58:43 UTC 2022 - Anton Shvetz - Update to release 2.13.4 * For z=x+wy a t_QUAD, z.pol returned the modulus z.mod instead of the t_POL x+'w*y * allow eulerianpol(0) (= 1) * allow polylog(0,x) (was broken when eulerianpol was introduced) * concat(t_LIST,t_LIST) was leaking memory * missing type checks in ellchangepoint (led to a SIGSEGV) * polsturm(-25*x^4+2*x^3+99*x^2-44*x-132,[-oo,-4]) returned garbage * ellheight(E,,Q) led to a SIGSEGV * besselj(80,66) led to an infinite loop * lfun(1, 0.0) "normalizing a series with a 0 leading term" * (0. + O(x) == 1) returned 'true' * idealismaximal(nfinit(x),Mat(2)) -> 0 * O(29^(-1)) == 1 was FALSE (same for -1) * Mod(0, 2*x^0) == 1 was FALSE (same for -1) * [X11] resizing a window could keep traces of previous drawing * x->x+0x1 was not displayed correctly * bnfinit(Q) was not using current precision * polresultant(t_POL with t_RFRAC coefs,...) led to internal errors * znchardecompose(znstar(2,1),[],2) led to SIGSEGV * missing roots in nfroots(t_POL,) * factorpadic: ensure leading coefs are powers of p * nfsnf returned wrong results * rare SEGV occurred in nfdisc * factor((Mod(1,2)*((t^2+1)*x^4+(t^4+1)*x^2+1))) led to a division by 0 * minpoly(Mod(1/(x-(t+1))*Mod(1,2),(t+1)*x^2+t*x+1)) led to an error * factor(Mod(1,2)*x^5+a*x^3) led to division by 0 * nfgrunwaldwang: fix infinite loop * ti=thueinit(3*x^3 + 5*x^2 - 14*x + 54,1); thue(ti,1) led to an error * bnrclassfield led to incorrect result when fundamental units are large ------------------------------------------------------------------- Tue Nov 2 00:19:07 UTC 2021 - Anton Shvetz - Update to release 2.13.3. Fixed [last column crossreferences current development release 2.14.0] * zeta(-2 + O(x)) => division by 0 [F25] * (-1)^(-1/2) -> I instead of -I [F56] * GC error in ZX_Uspensky(, flag = 0) [F58] * ellisomat(ell/nf not integral) -> oo-loop or wrong result [F59] * (f(~v)=v[1]=1);(g(v) = f(~v)); my(V=[0]);g(V);V -> [1] instead of [0] due to missing copy on write [#2304] [F60] * hypergeom([1/12,1/12],2/3,3) -> wrong result [F61] * overflow in mulu_interval(,ULONG_MAX) [#2309] [F62] * ellE(1) -> domain error [#2312] [F63] * log1p(-1 + 10^-10) -> oo time [F64] * bernvec entries were wrong from B_{2*4064} on [#2311] [F65] * plotrecthraw for multi-curves [F66] * RgXn_powu(,,1) wrong result [#2314] [F67] * erfc incorrect on negative imaginary axis [#2315] [F68] * mfgalpoistype bug for dihedral types (when conductor at oo is not stable under Galois) [#2293] [F69] * [32bit] forfactored(n=223092868, 223092871, ) -> SEGV [#2318] [F70] * Fp_issquare(0, p) would return 0 [F71] ------------------------------------------------------------------- Sun Oct 31 20:36:12 UTC 2021 - Anton Shvetz - Split '%make_build all docpdf' into separate executions due to non-reproducible results during parallel build with varying numbers of jobs. Thanks to Bernhard M. Wiedemann for reporting the bug. ------------------------------------------------------------------- Fri Oct 29 01:01:54 UTC 2021 - Anton Shvetz - Update to release 2.13.2. Fixed [last column crossreferences current development release 2.14.0] * rnfidealup(, non-integral ideal) -> division by 0 [F22] * memory leak in ellheight [F23] * memory leak in bnfinit [F24] * nfeltdiv(nfinit(x^2+1), 0, 1+x/2) -> SEGV [#2277] [F26] * znchargauss(g,chi,0) -> oo loop [F28] * bnflog(bnr, ...) -> SEGV [F29] * elliptic functions: incorrect reduction of z/w1 mod [1,tau] => catastrophic cancellation [F30] * powcx(x, t_COMPLEX with 0 imaginary part) -> crash [F31] * nfsubfields(t_POL in other var than x,,1) -> SEGV [F32] * extra terms in power t_SER substitutions [#2281] [F33] * k=bnfinit(quadpoly(-2923,a)); bnrclassfield(k,3) -> SEGV [#2280] [F34] * rnfdisc mishandled polynomials with denominators [#2284] [F35] * elltamagawa(ellinit([-1456/243,93184/19683])) -> wrong result [F36] * mfsearch would sometimes miss the trivial form [F37] * typo in allh [affects ECPP tunings] [F38] * mfisetaquo(mffrometaquo([1,12;193,12])) -> 0 [F39] * polroots(1.E-47*t^6+1.E-47*t^5+4.E-46*t^4) -> bug in type [#2286] [F40] * ceil(quadgen(5)) -> 1 instead of 0 [#2288] [F41] * floor(Mod(0,3)*quadgen(5)) -> crash [F42] * wrong ispower(t_RFRAC) and issquare(t_RFRAC, &z) [#2289] [F45] * 1+O(x)==O(x) [F47] * qfauto([[1,0;0,1],[0,0;1,0]]) -> SEGV [F49] * bnfsunit(...)[4] (the S-regulator) did not correspond to its definition in the documentation [ was using log(p) instead of log(Norm P)) for P in S above p ] [F50] * rnfdisc could return corrupted result [F51] * concat(List([1])[1..0]) ->SEGV (instead of error) [#2299] [F53] * List([1])[1..0]==List() -> 0 instead of 1 [F54] - Build PDF documentation and place it into separate pari-doc package. Move examples from pari-devel package to pari-doc. - Add %{_sysconfdir}/gprc to packaging. - Remove patch pari-nodate.diff (replace with the sed one-liner in the %prep section). - Remove obsolete stuff from the spec file. - Apply spec-cleaner. ------------------------------------------------------------------- Sun Feb 7 21:15:14 UTC 2021 - Aaron Puchert - Update to release 2.13.1. Fixes the following bugs: * GC error in idealinv. * qfminim inefficiency (initial bound from non-LLL-reduced matrix). * mfshimura in weight 3/2 => infinite loop * matsolve([1,1,1/2; 1,0,1/2; 2,1,0], [-1;1;-1]) -> SEGV. * qfminim(Mat(1),,,2) -> precision error. * subst(p, v, t_SER) very slow if p contains many variables. * mfsymboleval for trivial path returned 0 instead of a vector of 0s when f has multiple embeddings. * 2^(1 + O(3^4)) -> type error. * Zn_quad_roots(8,0,-1) to compute roots of x^2-1 mod 8 -> [4,[1,3]] (1 or 3 mod 4) instead of the expected [2,[1]] (1 mod 2). * tan(1+10^20*I) -> overflow (same for cotan and psi). * Mod(2,3)^1000000000000000000001 -> Mod(-1,3). * subst(O(y) + x, x, (1 - y + O(y^2))*x + O(x^2)) -> SEGV. * (Mod(0,3) + x) + O(x^2) -> x + O(x^2) [now Mod(1,3)*x + O(x^2)]. * Precision too low for units in mfgaloisprojrep. * Missing GC at the end of RgXn_inv. * (-1)^(1/3) -> -1 instead of exp(log(-1)/3). * mfeisenstein(k, trivial characters mod N > 1) was incorrect. * Missing GC in qfsolve. ------------------------------------------------------------------- Mon Oct 26 15:03:47 UTC 2020 - Jan Engelhardt - Update to release 2.13.0 * New libpari functions: perm_sqr, perm_powu, perm_orderu, quodif. * Added asymptotically fast quadunit. * Faster intnumgaussinit and change default number of points to B/4, suitable when b - a ~ distance to the nearest pole. * In libpari, perm_pow now takes a t_INT exponent, permorder and perm_order return a t_INT. * sizebyte(objects containing t_LIST): would assign size 3 to all lists * permorder returned incorrect results for large orders * cure SIGSEGV on [Map(Mat([0, 0])), [0, 0, 1]] * cure SIGSEGV on zeta(I+2^(-64)) * cure infinite loop on p=[4,54];lfunmf(mfinit(p,0), mftraceform(p,0)) * printf("%5.2f",M) transposed M * bnfinit instability at low accuracy. E.g., at \p38 P=x^7+22*x^6+184*x^5+764*x^4+2020*x^3+3792*x^2+5712*x+4; bnfinit(P,1).no -> 4 times too large * Accuracy problems in bnfisunit after bnfinit(P,1). E.g., P=x^7-22*x^6+169*x^5-568*x^4+1263*x^3-1506*x^2+2295*x+2; setrand(1); K=bnfinit(P,1); U=bnfunits(K,idealprimedec(K,2)); bnfisunit(K,4*(x^2-18*x+85)/x^2*Mod(1,K.pol),U) -> error - Update to release 2.12.1. * New functions in GP: asympnumraw, bnrmap, bnfunits, dirpowerssum, ellpadiclambdamu, eulerianpol, eulerfrac, eulerpol, eulervec, fft, fftinv, halfgcd, lfundual, lfunshift, matreduce, mfisetaquo, mscosets, msfarey, nfsubfieldscm, nfsubfieldsmax, parforeach, parforprimestep, parplothexport, permcycles, polylogmult, rootsof1, zetamultdual. * New libpari functions: absZ_factor_limit_strict, bnf_build_cheapfu, bnf_compactfu, bnf_compactfu_mat, bnf_get_sunits, bnf_has_fu, bnrchar_primitive_raw, bnrconductor_factored, bnrconductor_raw, bnrisprincipalmod, bnr_subgroup_check, checkbnr_i, checkfarey_i, closure_callgen0prec, cmpss, cmpuu, cyc_get_expo, div_content, ellQtwist_bsdperiod, etaquotype, expIPiC, expIPiR, F2m_row, F2Ms_colelim, F2Ms_ker, F2Ms_to_F2m, F2m_to_F2Ms, F2m_transpose, F2v_and_inplace, F2v_hamming, F2v_negimply_inplace, F2v_or_inplace, F2xn_inv, F2xn_red, F2xqX_halfgcd, F2xX_to_F2xC, F2xXV_to_F2xM, factorial_Fl, factorial_Fp, famat_div, famat_idealfactor, famat_nfvalrem, famat_remove_trivial, famatV_factorback, famatV_zv_factorback, ff_parse_Tp, FFX_add, FFX_halfgcd, Flv_factorback, Flx_blocks, Flx_Fl_sub, Flx_is_totally_split, Flxn_expint, Flxq_autpowers, FlxqV_factorback, FlxqX_fromNewton, FlxqX_Newton, FlxqXn_expint, FlxqXn_inv, FlxqXn_mul, FlxqXn_sqr, Flx_translate1_basecase, FlxV_Flv_multieval, FlxX_blocks, FlxX_invLaplace, FlxX_Laplace, FlxXn_red, FlxX_translate1, forqfvec1, FpV_prod, FpXC_to_mod, FpX_divu, FpX_Fp_div, FpX_FpXV_multirem, FpXM_to_mod, FpXn_expint, FpXQXn_expint, FpXV_chinese, FpXY_FpXQ_evaly, FqC_FqV_mul, FqC_to_mod, FqV_factorback, FqXC_to_mod, FqX_expint, FqXM_to_mod, galoismatrixapply, gc_const, gen_sort_shallow, gen_ZpM_Newton, groupelts_conj_set, groupelts_quotient, groupelts_to_group, group_subgroup_is_faithful, halfgcdii, hash_zv, idealfactor_partial, ideallogmod, ideallog_units, ideallog_units0, idealpseudominvec, Idealstarmod, init_Flxq, is_qfb_t, Kronecker_to_ZXQX, lfunquadneg, minim_zm, mseval2_ooQ, mspadic_parse_chi, mspadic_unit_eigenvalue, nf_cxlog, nf_cxlog_normalize, nfhyperellpadicfrobenius, nflogembed, nfsign_fu, nfsign_tu, nfV_cxlog, nfX_disc, nfX_resultant, pariplot, pari_realloc_ip, pow2Pis, pow2Pis, powPis, powPis, QabM_tracerel, Qab_tracerel, QabV_tracerel, Qdivis, Qdiviu, Q_lval, Q_lvalrem, QM_gauss_i, QM_image, QM_image_shallow, QM_ImQ, QM_ImQ_all, QM_ImZ, QM_ImZ_all, QM_sqr, quotient_groupelts, QXQ_to_mod_shallow, QXQX_gcd, QXQX_mul, QXQX_powers, QXQX_QXQ_mul, QXQX_sqr, radicalu, random_zv, rfracrecip, RgM_ZM_mul, RgV_type, RgV_type2, RgX_halfgcd, RgXn_expint, RgXV_to_FlxV, rnf_get_ramified_primes, SL2_inv_shallow, sumdivmultexpr, sunits_makecoprime, uis2psp, uispsp, upowers, vec_equiv, vecfactorsquarefreeu_coprime, vec_reduce, vecsmall_is1to1, vecsmall_isconst, vecvecsmall_sort_inplace, vecvecsmall_sort_shallow, Vgaeasytheta, ZC_u_divexact, zlx_translate1, zlxX_translate1, ZMrow_equal0, ZpM_invlift, ZpX_primedec, ZV_lcm, ZV_snf_gcd, zv_sumpart, ZX_compositum, zx_lval, ZXQ_minpoly, ZXQ_powers, ZXQX_gcd, ZXQX_ZXQ_mul, ZX_realroots_irred, ZX_sturm_irred, ZXX_evalx0, ZXX_Q_mul, zx_z_divexact, * Allow nfinit([T, basis, ramified primes]). * Allow nf.p, rnf.p [rational ramified primes]. * Add flag bit to ZM_snfall_i. * Allow real t_QUAD in floor, ceil, divrem, %, \, \/. * Parallel support for lfuninit. * Direct formulas for quadratic Dirichlet L-functions at integers. * lfuncreate: support for closures of arity 0. * Compact representation of units in bnf (bnfinit(pol,1)) and of principal ideal generators (bnfisprincipal(bnf,id,4)). * lfuncreate(znstar or bnr,): allow a vector of characters => vector-valued L-function. * Holes in multi-assignement: [a,,c]=[1,2,3]. * nfisincl: new flag: return a single embedding. * qflll(x,3) in place reduction: return x * qflll(x) (faster). * galoisinit: support for group (3x3):4 (GAP4(36,9)). * Removed obsolete function rootsof1_kannan: use nfrootsof1. * Removed obsolete function checkbnrgen: use bnr_get_gen. * For additional changes, see the included changelog. - Update to release 2.12.0. * New functions in GP: airy, arity, bnrclassfield, derivn, dirpowers, ellE, ellK, export, exportall, ffmaprel, getlocalbitprec, getlocalprec, hypergeom, idealdown, idealismaximal, mfgaloisprojrep, nfdiscfactors, pollaguerre, polteichmuller, strjoin, strsplit, strtime, unexport, unexportall. * New libpari functions: bid_get_fact2, closure_derivn, constzeta, divisorsu_fact_factored, divisorsu_moebius, F2xqX_disc, F2xqX_resultant, F2x_recip, F2x_Teichmuller, FF_preimagerel, FF_var, FFX_disc, FFX_extgcd, FFX_gcd, FFXQ_minpoly, FFX_resultant, Flx_fromNewton, Flx_integ, Flx_invLaplace, Flx_Laplace, Flx_Newton, Flxn_exp, Flxn_red, Flxn_sqr, FlxqX_disc, FlxqX_resultant, Flx_Teichmuller, Fp_divu, FpXC_FpXQ_eval, FpXQX_disc, FpXQX_resultant, gc_bool, gc_double, gc_int, gc_long, gc_NULL, gc_ulong, gluncloneNULL_deep, guncloneNULL, hash_init, hash_init_ulong, has_str_len, identity_zv, identity_ZV, maxprimeN, mpsinhcosh, mulu_interval_step, nfX_to_monic, nonsquare_Fl, pari_get_histrtime, polint_i, polintspec, pollegendre_reduced, psi1series, qfiseven, rfrac_deflate, rfrac_deflate_max, rfrac_deflate_order, RgV_is_arithprog, RgV_isin_i, set_avma, setunion_i, walltimer_delay, walltimer_start, ZpXQX_liftroots, zv_cyc_minimal, zv_cyc_minimize, ZXQ_powu. * qfbsolve(Q,n) now supports arbitrary integer n. * limitnum/asympnum: allow closures of the form N->[u(1),...,u(N)], which allows to handle efficiently sums, recursions, continued fractions, etc. * Optional flag to pollegendre and polhermite. * Allow subst(e, x, vector v) for vector(subst(e, x, v[i])). * Optional v argument to nfmodprinit. * Support call by reference in GP function: f(~L,x)=listput(~L,x+1). * Generic fast linear algebra using CUP decomposition. * Implement lfunmfspec in odd weight. * Support for rational model in ellratpoints and hyperellratpoints. * Fast algorithm for zeta([a + b*n | n<-[0..N]]). * ellheight(E) now returns the Faltings height of E. * lfun now allows non-integral weights. * example/parigp.sty to re-enable PARI's \pmatrix with amsmath. * Removed member functions .futu and .tufu (deprecated since 2.2). * Removed inferior hash function hash_str2: use hash_str. * Removed obsolete binary flag '2' in matsnf (make it a no no-op). * For additional changes, see the included changelog. ------------------------------------------------------------------- Sat Jun 6 23:59:38 UTC 2020 - Jan Engelhardt - Update to release 2.11.4 * fixed "factor((x-1)*(x-y)^2)" going into an infinite loop * "ellap" could fail with division by 0 * cure wrong results from "bnfsunit" ------------------------------------------------------------------- Thu Mar 5 16:44:44 UTC 2020 - Jan Engelhardt - Update to release 2.11.3 * Avoid division by zero in Flx_extresultant when one input is 0. * Fix crashes executing "ispower(27,2^60)", "issquare(non square t_FFELT, &x)", "polcompositum(x^2+x/3+1,x^2+x/3+1)", "polrootsreal(x+0.)", "qflllgram([2,2,3;4,5,6])", or printf("%10.6f\n",2^-100). ------------------------------------------------------------------- Fri Aug 23 13:49:16 UTC 2019 - Jan Engelhardt - Enable pthreads [boo#1142714] - Avoid duplicate shipping of documentation. ------------------------------------------------------------------- Sun Jul 28 22:37:35 UTC 2019 - Simon Puchert - Update to new upstream release 2.11.2 * Fixed minpoly(Mod(1,t^2)) causing SIGSEGV. * Fixed segfault in ffinvmap(m) on bad input. * Fixed factormod(x^3+1,[y^2+1,2]) causing SIGSEGV. * Fixed incorrect use of graphcolors leading to a SIGSEGV. * Fixed [a,b]=a possibly leading to memory corruption. * Fixed a memory leak in cgetalloc when lg overflows. * Fixed a possible segfault in padicappr. * Fixed core() possibly destroying its input, if stored in a GP variable. * Fixed stack corruption in quad_disc. * Fixed an infinite loop and stack corruption in ellmoddegree. - Drop the separate changelog as RPMLINT warns about it being a duplicate of the file CHANGES (which is already included). ------------------------------------------------------------------- Mon Mar 25 19:08:37 UTC 2019 - Christophe Giboudeaux - Prepare the KDE4/Qt4 removal in factory. ------------------------------------------------------------------- Mon Dec 10 23:51:20 UTC 2018 - Jan Engelhardt - Update to new upstream release 2.11.1 * Fixed a heap buffer overflow * Fixed mfsplit(mf,,flag) could return uninitialized objects causing SIGSEGV * Fixed incgam(-1000.4,2) causing SIGSEGV * Fixed mfcoefs(mfDelta(),0) causing SIGSEGV * Fixed segfault in rnfidealup ------------------------------------------------------------------- Fri Dec 7 21:14:49 UTC 2018 - Todd R - Use %macro instead of %{macro} wherever possible. ------------------------------------------------------------------- Fri Dec 7 16:38:08 UTC 2018 - Todd R - Fix building on SLE 15 - Use %license macro ------------------------------------------------------------------- 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 - Update to new upstream release 2.9.3 * Expression "issquare(Mod(1,67)*x^4+Mod(14,67)*x^2+Mod(49,67))" and "polroots(t_POL whose coeffs vary by a factor > 2^100000)" had caused SIGSEGV ------------------------------------------------------------------- Tue Feb 21 00:00:10 UTC 2017 - jengelh@inai.de - Update to new upstream release 2.9.1 * lfunartin was using too much stack * fflog in char 3 or 5 was slower than intended * modular algorithms could fail for very large input ------------------------------------------------------------------- Tue Nov 29 11:45:37 UTC 2016 - jengelh@inai.de - Update to new upstream release 2.9.0 * fixed nfisisom(x,x^0) causing a crash * fixed crash on BIB in ellpointtoz(t_PADIC) * fixed wrong result for nfroots(non-monic t_POL) * fixed division by zero on doing e=ellinit([1,-1,1,98,126],O(5^10)); ellpointtoz(e,[1,14]) * fixed rare crash in bnfisprincipal ------------------------------------------------------------------- Sun Jul 31 16:46:14 UTC 2016 - jengelh@inai.de - Update to new upstream release 2.7.6 * fixed O(1)==O(x) returning 0 * matsolve(a,b) and a^(-1) gave wrong results [or SEGV] when t_MAT a was not square and a,b "modular"; same for x^(-1) * fixed a memory leak in pari_close: sopath was not freed ------------------------------------------------------------------- Sat Mar 12 20:32:55 UTC 2016 - jengelh@inai.de - Update to new upstream release 2.7.5 * forprime engine could skip (fast) sieve in favour of (slow) * corrected return values/exceptions of functions ------------------------------------------------------------------- Thu Feb 26 12:42:06 UTC 2015 - jengelh@inai.de - Update to new upstream release 2.7.3 * "??bnrL1" and "??ellL1" did not work anymore and were fixed * thue(f^e*g, ...), e even, (f,g)=1 missed solutions such that f<0 * nfisincl(t_POL, t_POL) could lead to wrong negative results * ellcard over non-prime fields could return wrong results * weber(1+I) was missing its imaginary part ------------------------------------------------------------------- Sun Oct 12 08:15:21 UTC 2014 - jengelh@inai.de - Update to new upstream release 2.7.2. Fixed were: * (gp -p N) or (primelimit=N in gprc_ for N >= 436273290 resulted in an incorrect primetable. * monomial(exact zero, d, v) returned an invalid t_POL / t_RFRAC * contfracpnqn(v, n) returned partial quotients p[-1]/q[-1] ... p[n-1]/q[n-1], instead of the documented p[0]/q[0] ... p[n]/q[n] * iferr() could crash if some component of the t_ERROR were clones * nffactor() could overflow the stack when default accuracy too low * obsolete use of E=[a1,a2,a3,a4,a6] in ellmul crashed * incorrect rounding in mulrr/divrr for one-word precision reals * multiif did not handle correctly return() in conditions * is_gener_Fp could return wrong results * Fq_sqrtn(t_INT,..,&zeta) could return a wrong root of 1 * bnfinit: SEGV due to precision issues * zm_zc_mul only worked for square zm matrices * [gphelp] infinite loop when $COLUMNS too small * factoru(1) returned a t_MAT instead of the expected "matsmall" * when compatible = 3; series() used a random precision * isprime() could crash on large input * gphelp did not handle === correctly ------------------------------------------------------------------- Wed Aug 6 05:14:57 UTC 2014 - jengelh@inai.de - Update to new upstream release 2.7.1 * Q_pvalrem(t_FRAC) returned a wrong result * The "ellheegner" function was using too much memory in some cases * nfhilbert(K,x,y, P above 2) could give wrong results * nfpow_u didn't handle non-integral rational numbers * nfroots(, t_POL with leading coeff -1) could miss solutions ------------------------------------------------------------------- Fri Apr 18 14:53:48 UTC 2014 - jengelh@inai.de - Update to new upstream release 2.7.0 * added new library functions FlxX_to_FlxC, FlxXV_to_FlxM, polx_FlxX, Flx_lead, RgV_to_RgM ------------------------------------------------------------------- Wed Feb 5 01:56:32 UTC 2014 - jengelh@inai.de - Update to new upstream release 2.5.5 * sin'(1) with default(compatible,3) caused a crash * add missing call to normalize() in lift(t_POL/t_SER) * galoisinit(x^3+x^2-2*x-1) led to uninitialized read * polred() could return non-squarefree polynomials * bnrdisc could return a wrong result if the modulus had more than 2 prime divisors * FFT mulii relied on unspecified order of evaluation * local() could corrupt polynomial variable of the same name - Add pari-nodate.diff ------------------------------------------------------------------- Sun Jan 6 20:10:01 UTC 2013 - jengelh@inai.de - Restore original library filename after confirming with upstream (This change is transparent to all users) ------------------------------------------------------------------- Thu Nov 29 19:09:42 UTC 2012 - jengelh@inai.de - Update to new upstream release 2.5.3 * Fixed a bug whereby calling a GP function with a lot of omitted arguments could crash * idealramgroups() and idealfrobenius() did not accept a bnf ------------------------------------------------------------------- Sun Feb 26 22:13:05 UTC 2012 - scorot@free.fr - fix build requirement to allow build on SLE-11 - recompress source file to bzip2 format to allow build on SLE-11 - add missing %%post and %%postun scriptlets ------------------------------------------------------------------- Mon Sep 26 08:52:28 UTC 2011 - jengelh@medozas.de - Initial package (version 2.5.0) for build.opensuse.org