GAP (oprogramowanie)

GAP
logo
Autor The GAP Group Centre for Interdisciplinary Research in Computational Algebra University of St. Andrews Mathematical Institute
Pierwsze wydanie 1986
System operacyjny Unix, Windows
Rodzaj CAS
Licencja GNU General Public License
Strona internetowa

GAP (Groups, Algorithms and Programming) – program typu CAS służący do przeprowadzania obliczeń na obiektach algebraicznych (zwłaszcza z obliczeniowej teorii grup).

GAP jest również nazwą języka programowania używanego w systemie GAP (większość dostępnych w tym systemie funkcji napisanych jest w tym właśnie języku).

Możliwości GAP-a obejmują:

  • obliczenia na liczbach całkowitych (dowolnej wielkości), wymiernych, p-adycznych, wielomianach, funkcjach wymiernych, elementach ciał skończonych, permutacjach i in.
  • struktury danych takie jak listy (w tym na macierze, zbiory), struktury algebraiczne (podgrupy grupy permutacji, grupy macierzowe, grupy skończenie prezentowalne, grupy policykliczne, przestrzenie liniowe, moduły, ciała), grafy, automaty skończone i in.
  • relacje i odwzorowania (w szczególności homomorfizmy struktur algebraicznych, działania grup, reprezentacje)
  • obliczanie niezmienników takich jak: rząd grupy, jądro homomorfizmu, podgrupy Sylowa, charaktery i wiele innych.
  • możliwe jest korzystanie z zewnętrznych programów takich jak KANT czy SINGULAR.

Struktura tego systemu jest następująca: jądro programu, napisane w języku C realizuje funkcje takie jak: zarządzanie pamięcią, implementacja języka GAP, czy podstawowe środowisko użytkownika; biblioteka funkcji napisana jest głównie w języku GAP; dodatkowe pakiety – mogą realizować różne zadania (np. implementują struktury danych i algorytmy, umożliwiają korzystanie z innych programów; pakiet XGAP spełnia rolę GUI).

Jest to wolne oprogramowanie dostępne na licencji GNU GPL. GAP działa w systemach Unix (w szczególności w systemie GNU/Linux), MacOS oraz Windows (jednak niektóre dodatkowe pakiety dostępne wraz z systemem działają jedynie w systemach Unix).

Historia

GAP powstał na Lehrstuhl D für Mathematik, RWTH w Akwizgranie w 1986 roku i był tam rozwijany do 1997, kiedy centrum koordynacji projektu zostało przeniesione do School of Mathematical and Computational Sciences na University of St Andrews w Szkocji. Latem 2005 roku zostało ponownie przeniesione do czterech ośrodków „GAP Centres” znajdujących się na Uniwersytecie w St. Andrews; w RWTH Aachen; na Uniwersytecie Technicznym w Brunszwiku i na Uniwersytecie Stanowym w Kolorado.

Linki zewnętrzne

  • https://www.gap-system.org