3
$\begingroup$

I was looking for free alternatives to Magma to perform number theory computations, such as modular, factorization, etc. and I've found GAP and Pari.

What's the difference between them? Any other advise instead?

regards

New: Sage has a lot of features but it has two drawbacks: It's made with many different applications, great applications but independent, with few features, not properly merged on a single one. Each application has its commands, format...

And it's OK for Linux users but for Windows users has to be run virtualized, much slower.

I've found that the difference is that SAGE is better for abstract algebra problems and PARI for big number arithmetic.

  • 1
    Pari vs Gap: Pari is much faster for computationally hard number theory, but it is relatively easy to misuse (most pari objects are literally lists of numbers; in GAP objects are lists of numbers wrapped up in sugary coating so that you don't send the wrong kind of list of numbers to a function).2013-04-23

1 Answers 1

1

GAP has certain number-theoretical functionality, see in particular manual chapters Integers, Number Theory, Finite Fields, Abelian Number Fields.

Besides the functionality implemented in the core system, GAP has also two packages:

  • FactInt, providing more advanced methods for factoring integers

  • Alnuth, providing various methods to compute with number fields which are given by a defining polynomial or by generators. Some of the methods are written in GAP code, while some use PARI/GP via an interface, which is also a part of the package. The main methods included in Alnuth are: creating a number field, computing its maximal order (using PARI/GP), computing its unit group (using PARI/GP) and a presentation of this unit group, computing the elements of a given norm of the number field (using PARI/GP), determining a presentation for a finitely generated multiplicative subgroup (using PARI/GP), and factoring polynomials defined over number fields (using PARI/GP).

Since GAP 4.5, integer arithmetic in GAP became faster due to the GMP library, but PARI/GP still will be faster for hard computational problems. On the other hand, GAP may offer you a robust programming environment and access to other areas of mathematics covered by GAP. Thus, the final choice would depend on particular problems you want to deal with...