истувачі можуть створювати свої власні програми на цій мові, і тут вихідні тексти є незамінним наочним посібником. Нарешті, розробники програм для GAP можуть оформити свої розробки у вигляді пакету для системи GAP і представити їх на розгляд до Ради GAP. Після проходження процедури рецензування та схвалення радою GAP такий пакет включається у додаток до дистрибутива GAP і поширюється разом з ним. Процедура рецензування дозволяє прирівнювати прийняті Радою GAP пакети до наукової публікації, і посилатися на них нарівні з іншими джерелами. p align="justify"> Крім уже згаданих пакетів, система складається з наступних чотирьох основних компонентів:
В· ядра системи, що забезпечує підтримку мови GAP, роботу з системою в програмному і інтерактивному режимі;
В· бібліотеки функцій, в якій реалізовані різноманітні алгебраїчні алгоритми (більше 4000 функцій користувача, більш 140000 рядків програм мовою GAP);
В· бібліотеки даних, включаючи, наприклад, бібліотеку всіх груп порядку не більше 2000 (за винятком 49487365422 груп порядку 1024, точну кількість яких, до речі, також було визначено за допомогою системи GAP), бібліотеку примітивних груп підстановок, таблиці характерів кінцевих груп тощо, що в сукупності становить ефективний засіб для висунення та тестування наукових гіпотез;
В· обширної (близько півтора тисяч сторінок) документації, доступної в різноманітних форматах (txt, pdf, html), а також через Інтернет.
Огляд можливостей GAP
Система GAP була задумана як інструмент комбінаторної теорії груп - розділу алгебри, що вивчає групи, задані породжують елементами і визначальними співвідношеннями. Надалі, з виходом кожної нової версії системи сфера її застосування охоплювала все нові і нові розділи алгебри. У розмаїтті областей алгебри, які охоплюються GAP сьогодні, можна переконатися, навіть тільки лише прочитавши назви розділів обширнейшей документації по системі, що займає близько 1500 сторінок (яка, до речі, не тільки входить до складу дистрибутива, але і доступна через Інтернет). Обчислювальна потужність системи може бути продемонстрована знаходяться на її сайті прикладом визначення того, що кубик Рубик має 43252003274489856000 різних станів, і складання кубика Рубіка з довільного початкового стану в середньому за 100 ходов.дает можливість робити обчислення з гігантськими цілими і раціональними числами, допустимі значення яких обмежені тільки об'ємом доступної пам'яті. Далі, система працює з ціклотоміческімі полями, кінцевими полями, p-адические числами, многочленами від багатьох змінних, раціональними функціями, векторами і матрицями. Користувачеві доступні різні комбінаторні функції, елементарні теоретико-числові функції, різноманітні функції для роботи з множинам...