GAP (Software)

Computeralgebrasystem

GAP (Akronym aus: Groups, Algorithms and Programming) ist ein freies Computeralgebrasystem. Es soll, ähnlich wie Mathematica, Berechnungen im Bereich der diskreten Algebra ausführen, insbesondere im Gebiet der algorithmischen Gruppentheorie.

GAP

GAP computer algebra system icon.png
Basisdaten

Entwickler GAP Group
Erscheinungsjahr 1986
Aktuelle Version 4.11.1[1]
(2. März 2021)
Betriebssystem Linux, Microsoft Windows, macOS, Unix, Unix-ähnliches System
Programmiersprache C++, C
Kategorie Computeralgebrasystem
Lizenz GPL (Freie Software)
deutschsprachig nein
www.gap-system.org

GeschichteBearbeiten

GAP wurde zwischen 1986 und 1997 am Lehrstuhl D für Mathematik an der RWTH Aachen entwickelt. Nach der Emeritierung des verantwortlichen Prof. Joachim Neubüser ging die Zuständigkeit für Entwicklung und Pflege an die Universität Saint Andrews in Schottland über. Im März 2005 wurde die Koordination unter mehreren GAP-Zentren aufgeteilt: die Universität Saint Andrews, die RWTH Aachen, die Technische Universität Braunschweig und die Colorado State University in Fort Collins.[2] Im April 2020 wurde die Technische Universität Kaiserslautern in die Liste der GAP-Zentren aufgenommen.

Im Jahr 2008 wurden die Entwickler von GAP, die GAP Group, mit dem „ACM/SIGSAM Richard Dimick Jenks Memorial Prize for Excellence in Software Engineering applied to Computer Algebra“ ausgezeichnet.[3][4] Die Preisverleihung fand im Juli 2008 während des International Symposium on Symbolic and Algebraic Computation 2008 (ISSAC) in Linz statt.

SystemanforderungenBearbeiten

Die Software läuft auf jedem Unix-System, außerdem unter den Betriebssystemen Microsoft Windows und macOS. GAP und sein Quelltext sind unter Copyleft-Bedingungen (GPL) frei verfügbar.

BeispielsitzungBearbeiten

gap> G:=SmallGroup(8,1); # G sei die erste im Katalog enthaltene Gruppe mit 8 Elementen
<pc group of size 8 with 3 generators>
gap> i:=IsomorphismPermGroup(G); # suche einen Isomorphismus i auf eine Permutationsgruppe
<action isomorphism>
gap> Image(i,G); # das Bild von G unter i
Group([ (1,5,3,7,2,6,4,8), (1,3,2,4)(5,7,6,8), (1,2)(3,4)(5,6)(7,8) ])
gap> Elements(Image(i,G)); # alle Elemente des Bildes
[ (), (1,2)(3,4)(5,6)(7,8), (1,3,2,4)(5,7,6,8), (1,4,2,3)(5,8,6,7), 
   (1,5,3,7,2,6,4,8), (1,6,3,8,2,5,4,7), (1,7,4,5,2,8,3,6), (1,8,4,6,2,7,3,5) ]

WeblinksBearbeiten

EinzelnachweiseBearbeiten

  1. Release 4.11.1. 2. März 2021 (abgerufen am 4. März 2021).
  2. GAP centres
  3. Liste der Preisträger
  4. Bild der Plakette