|
Try GP in your browser Main Download Packages Funding SEARCH Help / Community FAQ Documentation Tutorials Mailing Lists Bugs Timeline Ateliers PARI/GP Library Publications Contributed GP scripts Links Fun! Development Latest Changes Version Control Coding Guidelines PariDroid Logo Tests & benchmarks Buildlogs Coverage Report Doc Coverage Refcards test Benchmarks WWW Stats |
Changes commited to PARI GIT during the last two weeks603d02feac | Bill Allombert | Tue, 29 Sep 2026 22:14:15 +0200 z=ffgen(23^3,'z);hyperellcharpoly(t^3+z*t+4) -> SEGV [#2703] 2 0 CHANGES 1 1 src/basemath/ZX.c 2 1 src/test/32/hyperell 3 0 src/test/in/hyperell bbfb6892ca | Bill Allombert | Mon, 28 Sep 2026 14:22:44 +0200 Bump version to 2.20.0 3 54 CHANGES 59 0 CHANGES-2.18 1 1 README 1 1 config/version 1 1 doc/refmacro.tex 1 1 src/test/32/version 19e00f7164 | Bill Allombert | Mon, 28 Sep 2026 10:29:32 +0200 trace(Mod(x, Mod(1,2)*(x^2+x+1))) ->0 [#2702] (from Manvir Jaswal) 2 1 CHANGES 1 1 src/basemath/FpX.c 1 1 src/basemath/RgX.c 1 0 src/test/32/pol 1 0 src/test/in/pol c3df5477f3 | Karim Belabas | Sun, 27 Sep 2026 16:53:11 +0200 doc typo 1 1 src/functions/number_fields_relative/HEADER 6fcef1292f | Karim Belabas | Sun, 27 Sep 2026 16:41:15 +0200 add galoisorder 1 0 doc/refcard-nf.tex 9f6590254c | Karim Belabas | Sun, 27 Sep 2026 16:36:06 +0200 update NEW and COMPAT 3 1 COMPAT 11 1 NEW 9e985fdc2b | Karim Belabas | Sun, 27 Sep 2026 16:27:08 +0200 fix bnfcertify and c_2 phase ("be honest") in bnfinit
Both incorrectly skipped part of the checks in degree> 2. Removing the
last unramified prime above p is only correct if all primes above p have
been included. Initial report and analysis by Manvir Jaswal.
[libpari] prime_over_p_full
3 0 CHANGES 4 0 doc/usersch6.tex 25 3 src/basemath/buch2.c 1 0 src/headers/paridecl.h 33547b448a | Bill Allombert | Sun, 27 Sep 2026 11:54:04 +0200 CHANGES: Move 2.18 changes to CHANGES-2.18 0 335 CHANGES 334 0 CHANGES-2.18 a0a6093e33 | Karim Belabas | Sun, 27 Sep 2026 10:44:08 +0200 SPLIT: rename nbtest* variables to be consistent with nsub General convention: - nxxx stands for "number of elements in xxx" - lxxx stands for lg(xxx) - avoid the name 'l' for anything that is not an 'lg'. 7 7 src/basemath/buch2.c 2f273d38c5 | Karim Belabas | Sun, 27 Sep 2026 10:32:28 +0200 SPLIT: handle length of subfactorbase cleanly No bug: when ++lgsub < minss(8, lg(Vbase) - 1) fails once, then nbtest_lim is set to LONG_MAX and we never hit that line again. So lgsub could be as large as lg(Vbase) - 1 at most and there is no out-of-bound access in Vbase. In fact the intent was to go as far as lg(Vbase) so there was a (harmless) off-by-1 error. New code is less cryptic 16 13 src/basemath/buch2.c fbb57974b6 | Karim Belabas | Sat, 26 Sep 2026 19:01:26 +0200 add example 5 1 doc/usersch2.tex 433ddc74eb | Karim Belabas | Sat, 26 Sep 2026 18:57:50 +0200 doc improvements 25 21 doc/usersch2.tex 2 2 doc/usersch5.tex b6c21bfeb4 | Karim Belabas | Fri, 25 Sep 2026 22:48:43 +0200 10- factorpadic(1+O(3)*x^2,3,2) -> SEGV [#2701] Original analysis and patch by Johan Mercedes 1 0 CHANGES 4 4 src/basemath/polarit1.c 8 1 src/test/32/padic 5 0 src/test/in/padic 9ba226efa7 | Bill Allombert | Fri, 25 Sep 2026 17:33:03 +0200 polsubcyclofast(8,4) and (16,4): wrong result 4 4 src/basemath/nflist.c 4 2 src/test/32/subcyclo 1 0 src/test/in/subcyclo 202940de4f | Karim Belabas | Fri, 25 Sep 2026 16:10:03 +0200 restore ndec2prec, deprecate ndec2nbits instead 1 1 CHANGES 1 1 COMPAT 32 21 doc/usersch5.tex 1 1 src/basemath/bibli2.c 1 1 src/functions/gp2c_internal/_prec 1 1 src/headers/paridecl.h 1 1 src/headers/pariinl.h 1 1 src/headers/pariold.h 2 2 src/language/default.c 2 2 src/language/es.c 1 1 src/language/eval.c 07d90f5f5b | Bill Allombert | Fri, 25 Sep 2026 10:16:48 +0200 polsubcycloC4_i: remove argument fli which is always 1 12 12 src/basemath/nflist.c 00f707ce3f | Bill Allombert | Thu, 24 Sep 2026 21:33:42 +0200 groupelts_cnteq: missing vecsmall_sort [#2700] 238 237 src/modules/groupid.c b53016c7f1 | Bill Allombert | Thu, 24 Sep 2026 15:45:32 +0200 polsubcyclofast(52,4,,1) -> [] 2 2 src/basemath/nflist.c 2 1 src/test/32/subcyclo 1 0 src/test/in/subcyclo b3d2e13ad9 | Bill Allombert | Thu, 24 Sep 2026 14:27:15 +0200 polsubcyclofast(58,7) -> [] 1 0 CHANGES 1 1 src/basemath/nflist.c 2 1 src/test/32/subcyclo 1 0 src/test/in/subcyclo eee4dd2756 | Karim Belabas | Wed, 23 Sep 2026 00:28:34 +0200 move nbits2prec call to prec_fix chk_gen_prec also needs it 2 1 src/basemath/base1.c 754cb31ac0 | Bill Allombert | Wed, 23 Sep 2026 00:18:16 +0200 OCprecreal: restore compatibility by using OCbitprecreal 3 3 src/language/compile.c 4 2 src/language/eval.c 1 1 src/test/32/fingerprint ba89936898 | Bill Allombert | Tue, 22 Sep 2026 23:41:02 +0200 ellisomat: revert to kernel poly after a division by 0 1 0 CHANGES 110 30 src/basemath/ellisog.c 14 1 src/test/32/ellisomat 3 0 src/test/in/ellisomat afbb4055a8 | Bill Allombert | Tue, 22 Sep 2026 23:41:02 +0200 elkies98: move up 43 43 src/basemath/ellisog.c c590007ffa | Bill Allombert | Tue, 22 Sep 2026 23:41:02 +0200 New libpari function divisors_fact_degmax 2 0 CHANGES 4 0 doc/usersch5.tex 38 0 src/basemath/arith2.c 1 0 src/headers/paridecl.h 5713f66aea | Karim Belabas | Tue, 22 Sep 2026 23:17:17 +0200 restore the OCbitprecreal opcode Full backward compatibility is not possible since the OCbitprecreal and OCprecreal opcodes now behave identically, but it didn't use to be the case. This still improves compatibility: the compiler can no longer generate that opcode, but the evaluator will still interpret it. Older gp reading newly compiled code will behave differently than current evaluator. 5 0 src/language/eval.c 2 1 src/language/opcode.h 56ad7371ae | Karim Belabas | Tue, 22 Sep 2026 20:31:11 +0200 remove the OCbitprecreal opcode and deprecate the 'b' prototype code + p (OCprecreal) has now the same semantics. 'b' is still accepted, for backward compatibility but no longer documented. + Remove/rename the functions push_localprec -> push_localbitprec, pop_localprec -> pop_localbitprec, get_localprec -> get_localbitprec. They all correspond to localbitprec() uses, number of bits rather than decimal digits. 1 1 CHANGES 12 17 doc/develop.tex 1 3 doc/usersch5.tex 4 4 src/basemath/lfunutils.c 1 1 src/functions/elliptic_curves/ellL1 1 1 src/functions/elliptic_curves/ellanalyticrank 1 1 src/functions/hypergeometric_motives/lfunhgm 1 1 src/functions/l_functions/lfun 1 1 src/functions/l_functions/lfunartin 1 1 src/functions/l_functions/lfuncheckfeq 1 1 src/functions/l_functions/lfunconductor 1 1 src/functions/l_functions/lfuncost 1 1 src/functions/l_functions/lfundiv 1 1 src/functions/l_functions/lfundual 1 1 src/functions/l_functions/lfunhardy 1 1 src/functions/l_functions/lfuninit 1 1 src/functions/l_functions/lfunlambda 1 1 src/functions/l_functions/lfunmfspec 1 1 src/functions/l_functions/lfunmul 1 1 src/functions/l_functions/lfunorderzero 1 1 src/functions/l_functions/lfunrootres 1 1 src/functions/l_functions/lfunshift 1 1 src/functions/l_functions/lfuntheta 1 1 src/functions/l_functions/lfunthetacost 1 1 src/functions/l_functions/lfunthetainit 1 1 src/functions/l_functions/lfuntwist 1 1 src/functions/l_functions/lfunzeros 1 1 src/functions/modular_forms/lfunmf 1 1 src/functions/modular_forms/mfcuspval 1 1 src/functions/modular_forms/mfeval 1 1 src/functions/modular_forms/mfmanin 1 1 src/functions/modular_forms/mfperiodpol 1 1 src/functions/modular_forms/mfsymbol 1 1 src/functions/modular_forms/mfsymboleval 1 1 src/functions/programming/getlocalbitprec 1 1 src/functions/sums/intnumromb 1 1 src/functions/sums/suminf 1 1 src/functions/transcendental/besseljzero 1 1 src/functions/transcendental/besselyzero 1 1 src/functions/transcendental/gammamellininv 1 1 src/functions/transcendental/gammamellininvinit 1 1 src/functions/transcendental/zetahurwitz 1 1 src/functions/znstar/znchargauss 1 3 src/headers/paridecl.h 1 1 src/language/anal.c 2 6 src/language/compile.c 12 24 src/language/eval.c 1 2 src/language/opcode.h 2 2 src/language/sumiter.c 818da3a405 | Karim Belabas | Tue, 22 Sep 2026 20:31:09 +0200 deprecate functions related to the old 'prec' concept 10 0 CHANGES 9 0 COMPAT 2 2 doc/usersch4.tex 3 3 doc/usersch5.tex 1 1 src/basemath/base1.c 1 1 src/basemath/bibli2.c 1 1 src/basemath/ellanal.c 1 1 src/basemath/mellininv.c 2 2 src/basemath/trans1.c 3 3 src/basemath/trans2.c 0 4 src/headers/pariinl.h 1 1 src/kernel/gmp/mp.c 4 4 src/kernel/none/mp_indep.c 6 6 src/language/default.c 3 3 src/language/es.c 3 3 src/language/eval.c 7 7 src/language/intnum.c 1 1 src/modules/stark.c 8f2f859c6b | Karim Belabas | Tue, 22 Sep 2026 20:31:07 +0200 remove neutralized nbits2prec uses, rename nbits2prec_required -> nbits2prec 2 4 doc/usersch5.tex 1 1 src/basemath/Qfb.c 1 1 src/basemath/arith1.c 3 3 src/basemath/base1.c 1 1 src/basemath/base3.c 22 25 src/basemath/bern.c 2 6 src/basemath/bibli1.c 1 1 src/basemath/bnfunits.c 1 1 src/basemath/buch1.c 10 10 src/basemath/buch2.c 8 10 src/basemath/ellanal.c 3 3 src/basemath/elliptic.c 1 1 src/basemath/ellrank.c 7 7 src/basemath/elltrans.c 3 3 src/basemath/gen1.c 10 12 src/basemath/gen3.c 11 11 src/basemath/grossenchar.c 7 7 src/basemath/hgm.c 1 1 src/basemath/hyperell.c 4 4 src/basemath/hypergeom.c 6 7 src/basemath/lambert.c 32 33 src/basemath/lerch.c 148 165 src/basemath/lfun.c 16 19 src/basemath/lfunlarge.c 6 7 src/basemath/lfunquad.c 29 35 src/basemath/lfunutils.c 1 1 src/basemath/lll.c 14 15 src/basemath/mellininv.c 85 91 src/basemath/mftrace.c 3 4 src/basemath/nffactor.c 29 34 src/basemath/rootpol.c 42 43 src/basemath/trans1.c 13 13 src/basemath/trans2.c 34 46 src/basemath/trans3.c 6 7 src/basemath/zetamult.c 0 6 src/headers/paridecl.h 3 17 src/headers/pariinl.h 6 0 src/headers/pariold.h 0 2 src/kernel/none/level1.h 2 2 src/language/eval.c 33 33 src/language/intnum.c 8 9 src/language/sumiter.c 6 6 src/modules/galois.c 5 6 src/modules/part.c 1 2 src/modules/ratpoints.c 5 5 src/modules/stark.c 3 4 src/modules/thue.c 0 2 src/test/dummy.c 76d766bcbe | Karim Belabas | Tue, 22 Sep 2026 20:31:06 +0200 improve explanation of t_REAL precisions 4 2 doc/usersch2.tex 22 17 doc/usersch4.tex 36 40 doc/usersch5.tex 12 20 src/functions/transcendental/HEADER 567715f74e | Karim Belabas | Tue, 22 Sep 2026 20:31:04 +0200 neutralize nbits2prec This temporary commit allows abitrary nbits in the interface of public functions (the notion of 'prec' as a multiple of BITS_IN_LONG disappears). Introduce a temporary internal function nbits2prec_required for the limited uses where we must indeed replace an nbits by the next multiple of BITS_IN_LONG. Namely all constxxx functions caching a t_REAL constant: the cache mechanism compares the required bit precision with the maximal bit precision of the cached constant. So the actual bit precision of the constant (e.g., gpi) *must* be equal to its maximal precision. In a followup commit, all remaining nbits2prec are removed and nbits2prec_required is renamed nbits2prec. The main issue with nbits2prec was (incorrect) double rounding as in nbits2prec(a) + nbits2extraprec(b). instead of the correct nbits2prec(a + b) It also conflicts with the general goal of choosing an arbitrary bit accuracy b, which is important when the complexity is not polynomial in b. After the present commit, using a + b should be fine in all cases where nbits2prec_required was not used. Many functions still compute with the maximal accuracy allowed by a t_REAL length (a multiple of BITS_IN_LONG), but it is no longer an interface requirement. 2 3 src/basemath/base1.c 5 3 src/basemath/trans1.c 2 1 src/basemath/trans3.c 4 1 src/headers/pariinl.h 1 1 src/test/32/algebras 1 1 src/test/32/modfun 1 1 src/test/32/nfields 110e2bfa61 | Bill Allombert | Mon, 21 Sep 2026 21:43:51 +0200 group_identify: add supprt for groups of order <=191 1 0 CHANGES 1 1 src/functions/number_fields_galois/galoisidentify 677 337 src/modules/groupid.c 290c27562e | Bill Allombert | Mon, 21 Sep 2026 21:43:38 +0200 doc: group_ident{,_trans}: parameter elts was removed
4 6 doc/usersch5.tex f55adbee70 | Bill Allombert | Mon, 21 Sep 2026 20:47:54 +0200 groupelts_to_group: when not wss, return elts instead of NULL 1 0 CHANGES 1 0 COMPAT 1 2 doc/usersch5.tex 9 11 src/basemath/galconj.c 14 14 src/basemath/perm.c c8736fc329 | Bill Allombert | Mon, 21 Sep 2026 18:10:54 +0200 New libpari function group_iswss 1 1 CHANGES 5 0 doc/usersch5.tex 14 14 src/basemath/perm.c 1 0 src/headers/paridecl.h |
PARI/GP Development
Last Modified: 2025-11-17 10:46:31
Copyleft © 2003-2025
the PARI group.