curate changelog

OBS-URL: https://build.opensuse.org/package/show/science/pari?expand=0&rev=62
This commit is contained in:
Jan Engelhardt 2022-10-31 21:28:31 +00:00 committed by Git OBS Bridge
parent 6bddd79fb7
commit 2c9af10945

View File

@ -2,200 +2,27 @@
Thu Oct 27 13:41:40 UTC 2022 - Andrea Manzini <andrea.manzini@suse.com>
- 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
* The GP language:
* Notion of DebugLevel "domains" that allow to finely control
diagnostics.
* The syntax setdebug(dom, val) and default(def, val) are now
recognized in the GPRC file.
* 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
* Reworked Euler numbers, analogously to Benoulli's: eulervec()
is now faster and caches computed values, and a new GP
function eulerreal() computes floating point approximations.
* Elliptic Curves: New module to compute the Mordell-Weil group
of rational elliptic curves
* See https://pari.math.u-bordeaux.fr/pub/pari/unix/pari-2.15.0.changelog
for details.
-------------------------------------------------------------------
Wed Apr 13 18:58:43 UTC 2022 - Anton Shvetz <shvetz.anton@gmail.com>