PARI/GP

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 weeks


49789441cf | Bill Allombert | Wed, 17 Jun 2026 19:47:20 +0200
ZMV_producttree: parallelize
28	16	src/basemath/arith1.c

93e6a6a34e | Bill Allombert | Tue, 16 Jun 2026 20:10:09 +0200
New libpari function ZMV_prod
1	0	CHANGES
2	0	doc/usersch5.tex
5	0	src/basemath/ZV.c
1	0	src/headers/paridecl.h

15f7a26941 | Bill Allombert | Tue, 16 Jun 2026 20:10:09 +0200
New libpari function gen_parpairwiseop
1	0	CHANGES
7	1	doc/usersch4.tex
34	0	src/basemath/alglin3.c
1	0	src/headers/paridecl.h

32752280ca | Bill Allombert | Tue, 16 Jun 2026 20:00:53 +0200
Move vecan_genus2 from lfunutils.c to hyperell.c
78	0	src/basemath/hyperell.c
0	80	src/basemath/lfunutils.c
1	0	src/headers/paripriv.h

20c6cbd439 | Bill Allombert | Tue, 16 Jun 2026 20:00:33 +0200
hyperell.c: separate naive algo from Kedlaya algo.
106	99	src/basemath/hyperell.c

83d1fb33eb | Karim Belabas | Tue, 16 Jun 2026 19:46:43 +0200
document GP_PDF_VIEWER

if set, it now overrides GPXDVI
8	0	doc/gp.1
15	6	doc/gphelp.1
32	27	doc/gphelp.in

7450a386b2 | Bill Allombert | Tue, 16 Jun 2026 14:12:22 +0200
_can5_iter: simplify assuming p=5
4	27	src/basemath/Zp.c

eb3273291f | Karim Belabas | Mon, 15 Jun 2026 21:36:37 +0200
gphelp: remove GPHELP_TMPDIR and GPHELP_DOCDIR aliases

Obsoleted and changed for GPTMPDIR and GPDOCDIR in pari-2.0.12 (1998)
and left undocumented since then
3	0	CHANGES
3	0	COMPAT
2	2	doc/gphelp.in

2017d977a1 | Karim Belabas | Mon, 15 Jun 2026 14:02:08 +0200
ghelp man: add xdg-open in SEE ALSO section
1	0	doc/gphelp.1

67463ed9e5 | Karim Belabas | Mon, 15 Jun 2026 12:33:30 +0200
refactor open_vieww_then quit + document fully GPXDVI/GPTEX interaction
14	6	doc/gphelp.1
26	26	doc/gphelp.in

3d9fabecc7 | Karim Belabas | Mon, 15 Jun 2026 11:31:01 +0200
Revert "gphelp.in: remove xdviref" + document GPXDVIREF

This mostly reverts commit 8487ee05e58731b67da78a0fc83894525e051857.
(we keep the part removing the -paper flag in GPXDVIREF)
9	1	doc/gphelp.1
4	2	doc/gphelp.in

c0d0e96ad9 | Bill Allombert | Mon, 15 Jun 2026 11:08:56 +0200
dummy.c: replace new_block by new_block_t, pari_err_TYPE2
2	1	src/test/dummy.c

8487ee05e5 | Bill Allombert | Sun, 14 Jun 2026 18:47:18 +0200
gphelp.in: remove xdviref, DVI refcard now know orientation
1	2	doc/gphelp.in

0d37787bf0 | Bill Allombert | Sat, 13 Jun 2026 21:13:37 +0200
New libpari functions FlxqXn_div, FlxqXn_div_pre
1	0	CHANGES
4	0	doc/usersch5.tex
24	6	src/basemath/FlxX.c
2	0	src/headers/paridecl.h

ad0b7d0476 | Bill Allombert | Sat, 13 Jun 2026 20:51:55 +0200
FpXQXn_div: remove misuse of is_pm1
1	1	src/basemath/FpXX.c

677dd56a94 | Bill Allombert | Fri, 12 Jun 2026 22:51:08 +0200
polgraeffe(P,d): generalized Graeffe identity

return g so that
g(x^d) = prod(i=0,d-1,f(x*y^i)) mod y^d-1
1	0	CHANGES
2	0	doc/usersch5.tex
50	0	src/basemath/rootpol.c
7	5	src/functions/polynomials/polgraeffe
2	0	src/headers/paridecl.h

1e4f217d08 | Karim Belabas | Fri, 12 Jun 2026 22:37:50 +0200
get_B0: replace mpadd by addii
4	4	src/modules/thue.c

b1333285ec | Karim Belabas | Fri, 12 Jun 2026 20:43:16 +0200
fix doc of ZX_squff
7	6	doc/usersch5.tex

690966b0c6 | Karim Belabas | Fri, 12 Jun 2026 15:35:43 +0200
59- polcyclofactors(((x^6+x^3+1)*(3*x^3+1))^2) -> oo loop [#2680]

- ZX_radical is now guaranteed to be primitive, fixing the above issue
  (BD required a primitive input)

- ZX_gcd_all(A, B, &Anew) returns d = gcd(A,B) and used to set Anew to an
  integer multiple of A / d. We now set Anew to the primitive part of A / d.
  This ensures the primitivity of ZX_radical

N.B. Pre-existing minor inefficiency: ZX_* or QX_* functions will
successively call Q_primpart() on their inputs although primitivity was
already ensured by the caller.
4	0	CHANGES
4	0	COMPAT
4	4	doc/usersch5.tex
10	4	src/basemath/QX_factor.c
2	1	src/test/32/cyclo
1	0	src/test/in/cyclo

e392c434df | Karim Belabas | Fri, 12 Jun 2026 00:35:17 +0200
ZX_content: add test for |x_0| = 1
2	1	src/basemath/polarit2.c

81faa19ef0 | Karim Belabas | Fri, 12 Jun 2026 00:24:14 +0200
improve ZX_content
16	8	src/basemath/polarit2.c

fa022299b5 | Karim Belabas | Thu, 11 Jun 2026 18:43:53 +0200
add comments
2	2	src/basemath/QX_factor.c

87831b134e | Karim Belabas | Thu, 11 Jun 2026 16:56:57 +0200
add/improve comments
2	2	src/basemath/QX_factor.c
2	0	src/basemath/rootpol.c

c7320ffae2 | Karim Belabas | Thu, 11 Jun 2026 16:56:23 +0200
refactor computation of ch_C
14	9	src/modules/stark.c

93b715b406 | Karim Belabas | Wed, 10 Jun 2026 23:02:14 +0200
use divrmp
1	1	src/basemath/rootpol.c

862a51d1f7 | Karim Belabas | Wed, 10 Jun 2026 22:50:28 +0200
23- mpdiv is now obsolete, use divmpr or divrmp instead.

The goal of mp functions is to
- allow t_INT / t_REAL inputs with easily determined output types
  (t_REAL when one of the inputs is a t_REAL) and fast calls to
  arithmetic kernel functions compared to generic functions
- that point aside, implement "generic" arithmetic

mpdiv(t_INT, t_INT) violated the second assumption by returning a
Euclidean quotient, while all other 3 type combinations (involving at
least one t_REAL) returned the ordinary quotient.

This created subtle bugs in linear algebra functions with 'mp'
coefficients using mpxxx functions. For instance dividing a t_INT by a
t_INT pivot gave a wrong (Euclidean) quotient instead of the required
(exact rational) quotient.
2	0	CHANGES
3	0	COMPAT
15	7	doc/usersch5.tex
2	2	src/basemath/trans2.c
2	2	src/functions/symbolic_operators/div
2	2	src/functions/symbolic_operators/dive
2	0	src/headers/paridecl.h
9	3	src/kernel/none/level1.h

746f6956af | Bill Allombert | Wed, 10 Jun 2026 14:31:15 +0200
newblock_t: use malloc
8	1	src/language/init.c

29928fad56 | Bill Allombert | Wed, 10 Jun 2026 11:34:55 +0200
Add support for [...| ...; a=...]
6	0	doc/develop.tex
42	0	src/basemath/alglin3.c
22	0	src/functions/symbolic_operators/compr
4	0	src/headers/paridecl.h
2	0	src/headers/paripriv.h
9	2	src/language/parse.y
2	2	src/language/parsec.h
16	0	src/language/sumiter.c
1	1	src/language/tree.h
2	1	src/test/32/ranges
1	0	src/test/in/ranges

70b2c9a59e | Bill Allombert | Tue, 9 Jun 2026 19:47:34 +0200
newblock_t: allow to define non-recursive block.

A block is non-recursive if either it has non GEN component, or more generally
all its GEN component are clone.
1	0	CHANGES
23	0	doc/develop.tex
5	1	src/headers/paridecl.h
0	4	src/headers/paripriv.h
4	0	src/kernel/none/level1.h
9	16	src/language/init.c

570fa31dc3 | Bill Allombert | Tue, 9 Jun 2026 16:10:19 +0200
New libpari functions F3v_dotproduct, F3v_dotsquare
1	1	CHANGES
4	0	doc/usersch5.tex
35	0	src/basemath/F3v.c
2	0	src/headers/paridecl.h

efb9a39cbc | Bill Allombert | Tue, 9 Jun 2026 14:59:15 +0200
New libpari function F3m_rank
1	0	CHANGES
2	0	doc/usersch5.tex
8	1	src/basemath/F3v.c
2	1	src/basemath/alglin1.c
1	0	src/headers/paridecl.h

cea32ebc88 | Bill Allombert | Thu, 4 Jun 2026 15:42:11 +0200
test-ellff: set stacksize back to 10M
2	2	src/test/32/ellff
1	1	src/test/in/ellff

80d2c635ba | Karim Belabas | Thu, 4 Jun 2026 15:19:20 +0200
kill warning
1	1	src/basemath/Zp.c

8e92567d7f | Bill Allombert | Wed, 3 Jun 2026 23:40:47 +0200
Flxq_ellcard_i: update tuning
8	2	src/basemath/FlxqE.c



PARI/GP Development
Last Modified: 2025-11-17 10:46:31
Copyleft © 2003-2025 the PARI group.