GAP (software)
   HOME

TheInfoList



OR:

GAP ( Groups,
Algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
s and Programming) is an
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
computer algebra system A computer algebra system (CAS) or symbolic algebra system (SAS) is any mathematical software with the ability to manipulate mathematical expressions in a way similar to the traditional manual computations of mathematicians and scientists. The de ...
for computational discrete algebra with particular emphasis on
computational group theory In mathematics, computational group theory is the study of group (mathematics), groups by means of computers. It is concerned with designing and analysing algorithms and data structures to compute information about groups. The subject has attracte ...
.


History

GAP was developed at Lehrstuhl D für Mathematik (LDFM), Rheinisch-Westfälische Technische Hochschule Aachen,
Germany Germany, officially the Federal Republic of Germany, is a country in Central Europe. It lies between the Baltic Sea and the North Sea to the north and the Alps to the south. Its sixteen States of Germany, constituent states have a total popu ...
from 1986 to
1997 Events January * January 1 – The Emergency Alert System is introduced in the United States. * January 11 – Turkey threatens Cyprus on account of a deal to buy Russian S-300 missiles, prompting the Cypriot Missile Crisis. * January 1 ...
. After the retirement of Joachim Neubüser from the chair of LDFM, the development and maintenance of GAP was coordinated by the School of Mathematical and Computational Sciences at the
University of St Andrews The University of St Andrews (, ; abbreviated as St And in post-nominals) is a public university in St Andrews, Scotland. It is the List of oldest universities in continuous operation, oldest of the four ancient universities of Scotland and, f ...
,
Scotland Scotland is a Countries of the United Kingdom, country that is part of the United Kingdom. It contains nearly one-third of the United Kingdom's land area, consisting of the northern part of the island of Great Britain and more than 790 adjac ...
. In the summer of 2005 coordination was transferred to an equal partnership of four 'GAP Centres', located at the University of St Andrews, RWTH Aachen,
Technische Universität Braunschweig TU Braunschweig (, unofficially ''University of Braunschweig – Institute of Technology'') is the oldest ' (comparable to an institute of technology in the American system) in Germany. It was founded in 1745 as Collegium Carolinum and is a membe ...
, and
Colorado State University Colorado State University (Colorado State or CSU) is a Public university, public Land-grant university, land-grant research university in Fort Collins, Colorado, United States. It is the flagship university of the Colorado State University Syst ...
at Fort Collins; in April 2020, a fifth GAP Centre located at the TU Kaiserslautern was added.


Features

GAP contains a
procedural programming language Procedural programming is a programming paradigm, classified as imperative programming, that involves implementing the behavior of a computer program as procedures (a.k.a. functions, subroutines) that call each other. The resulting program is a ...
and a large collection of functions to create and manipulate various mathematical objects. It supports integers and rational numbers of arbitrary size, memory permitting.
Finite groups In abstract algebra, a finite group is a group (mathematics), group whose underlying set is finite set, finite. Finite groups often arise when considering symmetry of Symmetry in mathematics, mathematical or Symmetry (physics), physical objects, ...
can be defined as groups of permutations and it is also possible to define finitely presented groups by specifying generators and relations. Several databases of important finite groups are included. GAP also allows to work with
matrices Matrix (: matrices or matrixes) or MATRIX may refer to: Science and mathematics * Matrix (mathematics), a rectangular array of numbers, symbols or expressions * Matrix (logic), part of a formula in prenex normal form * Matrix (biology), the ...
and with
finite fields In mathematics, a finite field or Galois field (so-named in honor of Évariste Galois) is a field that contains a finite number of elements. As with any field, a finite field is a set on which the operations of multiplication, addition, subt ...
(which are represented using Conway polynomials). Rings, modules and
Lie algebras In mathematics, a Lie algebra (pronounced ) is a vector space \mathfrak g together with an operation called the Lie bracket, an alternating bilinear map \mathfrak g \times \mathfrak g \rightarrow \mathfrak g, that satisfies the Jacobi identi ...
are also supported.


Distribution

GAP and its sources, including packages (sets of user contributed programs), data library (including a
list of small groups The following list in mathematics contains the finite groups of small order of a group, order up to group isomorphism. Counts For ''n'' = 1, 2, … the number of nonisomorphic groups of order ''n'' is : 1, 1, 1, 2, 1, 2, 1, 5, 2, 2, 1, 5, 1, 2, ...
) and the manual, are distributed freely, subject to "
copyleft Copyleft is the legal technique of granting certain freedoms over copies of copyrighted works with the requirement that the same rights be preserved in derivative works. In this sense, ''freedoms'' refers to the use of the work for any purpose, ...
" conditions. GAP runs on any
Unix Unix (, ; trademarked as UNIX) is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
system, under
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
, and on
Mac Mac or MAC may refer to: Common meanings * Mac (computer), a line of personal computers made by Apple Inc. * Mackintosh, a raincoat made of rubberized cloth * Mac, a prefix to surnames derived from Gaelic languages * McIntosh (apple), a Canadi ...
systems. The standard distribution requires about 300 MB (about 400 MB if all the packages are loaded). The user contributed packages are an important feature of the system, adding a great deal of functionality. GAP offers package authors the opportunity to submit these packages for a process of
peer review Peer review is the evaluation of work by one or more people with similar competencies as the producers of the work (:wiktionary:peer#Etymology 2, peers). It functions as a form of self-regulation by qualified members of a profession within the ...
, hopefully improving the quality of the final packages, and providing recognition akin to an academic publication for their authors. , there are 151 packages distributed with GAP, of which approximately 71 have been through this process. An interface is available for using the
SINGULAR Singular may refer to: * Singular, the grammatical number that denotes a unit quantity, as opposed to the plural and other forms * Singular or sounder, a group of boar, see List of animal names * Singular (band), a Thai jazz pop duo *'' Singula ...
computer algebra system from within GAP. GAP is also included in the mathematical software system
SageMath SageMath (previously Sage or SAGE, "System for Algebra and Geometry Experimentation") is a computer algebra system (CAS) with features covering many aspects of mathematics, including algebra, combinatorics, graph theory, group theory, differentia ...
.


Sample session


Permutation group In mathematics, a permutation group is a group ''G'' whose elements are permutations of a given set ''M'' and whose group operation is the composition of permutations in ''G'' (which are thought of as bijective functions from the set ''M'' to ...


Euclidean ring In mathematics, more specifically in ring theory, a Euclidean domain (also called a Euclidean ring) is an integral domain that can be endowed with a Euclidean function which allows a suitable generalization of Euclidean division of integers. Thi ...

https://pygments.org/docs/lexers/#pygments.lexers.algebra.GAPConsoleLexer


See also

* Comparison of computer algebra systems


References


External links

* * {{DEFAULTSORT:Gap Computer Algebra System Computer algebra system software for Linux Computer algebra system software for macOS Computer algebra system software for Windows Free computer algebra systems