GP(1)
π
GP(1) β the gp girlies' manual β¨
okay so this is gp, from the General Commands Manual section, and bestie you're gonna love her π«Ά
πΈ NAME πΈ
gp β the PARI calculator π
β¨ SYNOPSIS β¨
gp [-s stacksize] [-p primelimit] [--emacs] [-f|--fast] [-q|--quiet]
[-D|--default key=val] [--help] [--test] [--texmacs] [--version]
[--version-short] [ file1 file2 ...]
π¦ DESCRIPTION π¦
okay so picture this: you invoke the PARI-GP calculator, gp, and she is that girl. gp is an advanced programmable calculator specializing in number theory β she computes symbolically for as long as she possibly can, numerically only where she has to, and she's carrying a whole wealth of arithmetic functions: factorizations, elliptic curves, Galois theory, class field theory, modular forms, etc. literally the whole buffet π
Commands are written in the GP scripting language, and you can input them interactively or load them from files. no cap.
If they're present at the end of the command line, the files file1, file2, ... get loaded on startup β and yes, they must be written in the GP language, so don't try to sneak anything else in there π
π OPTIONS π
Command line options come in both short form (-f) and POSIX-like (--fast). Also!! Numeric arguments can be followed by a modifier k, M or G at your convenience β and in that case the argument is multiplied by 10^3, 10^6, or 10^9 respectively. cute, right? β¨
-f,--fastβ fast start (or factory settings). She does not read.gprc(see below) upon startup. speedrun vibes β‘-p limitβ [DEPRECATED] okay so upon startupgpcomputes a table of small primes used in number-theoretic applications. Ifprimelimitis set, the table includes primes up to that bound instead of the default (=1048576). It is now mostly useless to change this value. like, she said what she said π-q,--quietβ quiet mode. Do not print headers or history numbers and do not say goodbye π (she's being demure)-D,--default key=valβ performsdefault(key, val); on startup, overriding values from the gprc preferences file.valmust be a constant value and is not allowed to involve any computation (e.g.1+1is forbidden π«). Any number of such default-setting statements may appear on the command line. A key may be set multiple times, the last setting taking precedence. periodt.-s limitβ size of thegpinternal stack allocated on startup. Whengpruns out of space, it interrupts the current computation and raises a stack overflow exception π΅βπ« If this occurs frequently, start with a bigger stack. The stack size can also be increased from withingp, usingdefault(parisize,limit); it is convenient to setparisizefrom your.gprcso that the setting is persistent across sessions; a value of80MBis sensible. We strongly advise to also setparisizemaxto a positive, much larger, value in your.gprc(about what you believe your machine can stand, usually half the available RAM or so): this strives to fit computation in theparisizerange but allows it to temporarily go beyond it (up toparisizemax). Note that computations with a smaller stack may be more efficient due to better data locality. Finally,threadsizeandthreadsizemaxplay analogous roles in the parallel version ofgp. that's a lot of words but she's worth it π«Ά--emacsβgpcan be run in an Emacs shell (see GP User's manual for details). This flag is then required for smooth interaction with the PariEmacs package (pari.el). It is set automatically by thepari.elpackage, and will produce display oddities if you set it outside of an Emacs session. don't do it manually bestie π ββοΈ--helpβ print a summary of available command-line options. our little helper π--testβ rungpin test mode: suppress printing of history numbers and wrap long output lines (to get readable diff output). For benches only. πͺ (literally, benches)--texmacsβgpcan be run from a TeXmacs frontend. This flag is set by TeXmacs, to enable special purpose communication channels. Do not set it yourself. π¨--versionβ output version info (banner) then exit. her little intro card π--version-shortβ output version number then exit. the tl;dr version π
π USE π
?β to get online help.??β to get extended online help (more precisely, to call the external help program,gphelpby default).quit(or\q), or EOF (Ctrl+D) β to quitgp. bye bestie π
The following works only when gp was linked with the GNU readline library:
- arrow keys β for editing and viewing the input history. β¬οΈβ¬οΈ
- TAB β for automatic completion. β¨ the way she finishes your sentences
π MANUALS π
The following material is included in the standard distribution (originally in TeX format) and can also be downloaded at
https://pari.math.u-bordeaux.fr/doc.html
or viewed online at
https://pari.math.u-bordeaux.fr/dochtml/html/
- The User's Guide to PARI/GP (
users.dvi) - The User's Guide to the PARI library (
library.dvi) - The Developer's Guide to the PARI library (
develop.dvi) - PARI/GP, a tutorial (
tutorial.dvi) - PARI/GP reference cards (
refcard*.dvi)
go read them, i believe in you π
ποΈ FILES ποΈ
gpβ main executable π$HOME/.gprcβ (or$GPRCif set) user preference file, read at beginning of execution by eachgpshell. A default gprcgprc.dftis provided with the distribution. If this file cannot be found,/etc/gprcis checked instead. π<logfile>β a file used to log in all commands and results; default:pari.log(you need to set the log default in your gprc or interactively) π<psfile>β a file used to dump PostScript drawings; default:pari.psπΌοΈ<histfile>β a file wheregpwill keep a history of all input commands (you need to set thehistfiledefault in the gprc file) π°οΈgphelpβ default external help program (as above) π«Ά*.gpβ GP programs πΈ
π± ENVIRONMENT π±
$GPRCβ place to look for the user's preference file (gprc); if the file does not exist, we then check in$HOME/.gprc,/etc/gprc, and finally for a file namedgprcin PARI'sdatadir.$GP_DATA_DIRβ directory containing data installed by optional PARI packages. For example, the Galois resolvents files in directorygaldata/needed by thepolgaloisfunction, in degrees 8 to 11; or the modular polynomials inseadata/used by theellapfunction for large base fields. This environment variable overrides PARI'sdatadir, defined at Configure time.$GP_PDF_VIEWERβ an application able to display PDF files. This is currently not directly used insidegpbut passed on to the externalgphelpapplication to display PDF documentation on systems where the default DVI documentation was not installed.$GP_POSTSCRIPT_VIEWERβ an application able to display PostScript files, used by theplotpsgraphic engine. This engine is a fallback used to output hi-res plots even when no compatible graphical library was available on your platform at Configure time. (Dumps the graph to a temporary file, then open the file.) π¨$GP_SVG_VIEWERβ an application able to display SVG images files, used by theplotsvggraphic engine. This engine is a fallback used to output hi-res plots even when no compatible graphical library was available on your platform at Configure time. (Dumps the graph to a temporary file, then open the file.) ποΈ$GPHELPβ name of the external help program invoked by??and???shortcuts.$GPTMPDIRβ name of the directory where temporary files will be generated. ποΈ
π HOME PAGE π
PARI's home page resides at
https://pari.math.u-bordeaux.fr/
go say hi π
π MAILING LISTS π
There are a number of mailing lists devoted to the PARI/GP package, and most feedback should be directed to those. See
https://pari.math.u-bordeaux.fr/lists.html
for details. The most important ones are:
- pari-announce (moderated): for us to announce major version changes. π£
- pari-dev: for everything related to the development of PARI, including suggestions, technical questions, bug reports or patch submissions. π οΈ
- pari-users: for discuss about everything else, in particular ask for help. π«Ά
To subscribe, send empty messages with a Subject: containing the word "subscribe" respectively to
pari-announce-request@pari.math.u-bordeaux.fr
pari-users-request@pari.math.u-bordeaux.fr
pari-dev-request@pari.math.u-bordeaux.fr
π BUG REPORTS π
Bugs should be submitted online to our Bug Tracking System, available from PARI's home page, or directly from the URL
https://pari.math.u-bordeaux.fr/Bugs/
Further instructions can be found on that page. be nice to the bugs, they're doing their best π
β TRIVIA β
okay this is my favorite section, sit down π
Despite the leading G, GP has nothing to do with GNU. The first version was originally called GPC, for Great Programmable Calculator. When people started calling it "the GPC Calculator", the trailing C was dropped. the way language just does that π
PARI has nothing to do with the French capital. The name is a pun about the project's early stages when the authors started to implement a library for "Pascal ARIthmetic" in the PASCAL programming language. They quickly switched to C. π
For the benefit of non-native French speakers, here's a slightly expanded explanation: Blaise Pascal (1623-1662) was a famous French mathematician and philosopher who was one of the founders of probability and devised one of the first "arithmetic machines". He once proposed the following "proof" of the existence of God for the unbelievers: whether He exists or not I lose nothing by believing in Him, whereas if He does and I misbehave... This is the so-called "pari de Pascal" (Pascal's Wager). π€β¨
Note that PARI also means "fairy" in Persian. π§ iconic, honestly
π AUTHORS π
PARI was originally written by Christian Batut, Dominique Bernardi, Henri Cohen, and Michel Olivier in Laboratoire A2X (Universite Bordeaux I, France), and was maintained by Henri Cohen up to version 1.39.15 (1995), and by Karim Belabas since then. π«‘
A great number of people have contributed to the successive improvements which eventually resulted in the present version. See the AUTHORS file in the distribution. π
π SEE ALSO π
gap(1), gphelp(1), perl(1), readline(3), sage(1), tex(1), texmacs(1),
π COPYING π
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. π¬
aaaand that's the whole page bestie π«Ά this version dropped on 24 July 2026 and it's GP(1) all the way down β go factor something iconic π
β¨
π¦ where this page comes from
- arch rolling: pari 2.19.0-4 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms