GAP — система дискретної обчислювальної алгебри з особливим акцентом на теорії обчислювальних груп. GAP надає мову програмування, бібліотеку тисяч функцій, що реалізують алгебраїчні алгоритми, написані мовою GAP, а також великі бібліотеки даних алгебраїчних об’єктів, наприклад, Бібліотека малих груп. /Packages/sgl.html), яка містить, серед іншого, усі 423 164 062 групи порядку не більше 2000, крім 1024.
У цьому уроці представлено введення в GAP. Він зосереджений навколо спільного завдання пошуку в бібліотеці малих груп цікавих прикладів і контрприкладів, а конкретна дослідницька проблема, в якій ми будемо зацікавлені, полягає в тому, щоб знайти приклади нетривіальних груп, таких, що середній порядок їх елементів є цілим числом.
Урок проведе студента по шляху від роботи в командному рядку GAP та вивчення алгебраїчних об’єктів в інтерактивному режимі до збереження коду GAP у файли, створення функцій і регресійних тестів, а також до виконання всебічного пошуку та розширення системи шляхом додавання нових атрибутів.
На цьому шляху студент ознайомиться з:
-
основні конструкції мови програмування GAP,
-
способи пошуку необхідної інформації в системі GAP і
-
хороші практики проектування для організації коду GAP у складні програми.
Передумови
Урок орієнтований на студентів, які володіють мінімальною теоретичною підготовкою (принаймні на рівні бакалаврського курсу теорії груп) і бажають дізнатися, як поняття з абстрактної алгебри можна досліджувати за допомогою обчислювальних інструментів. Попередній досвід роботи з GAP не потрібен.
Студентам потрібно лише розуміти поняття файлів і каталогів (включаючи домашні та робочі каталоги) і знати, як запустити GAP.
Збираючись
- У Вашому домашньому каталозі створіть новий каталог під назвою
avgord
.- Розпочати GAP:
- в Linux і OS X викличте
path-to-your-gap-installation/gap-4.X.Y/bin/gap.sh
(за потреби відредагуйте шлях);- на Windows, викликайте його через відповідне меню або двічі клацнувши файл
gap-4.X.Y/bin/gap.bat
у вашій інсталяції GAP.- Установіть поточний каталог на
avgord
, викликаючиChangeDirectoryCurrent
з пакет IO (якщо GAP встановлено правильно, за замовчуванням він має завантажуватися під час запуску GAP):
- у Linux і OS X викличте
ChangeDirectoryCurrent("/home/username/avgord");
(за потреби відредагуйте шлях; не забудьте ввести повний шлях до вашого домашнього каталогу замість~
).- у Windows викличте
ChangeDirectoryCurrent("C:/Users/username/avgord");
(за потреби відредагуйте шлях; не забудьте використовувати/
замість\
);- Переконайтеся, що ваш поточний каталог налаштовано належним чином: викличте
DirectoryCurrent();
у Windows абоExec("pwd");
у Linux і OS X і переконайтеся, що шлях у виведених даних вказує на каталогavgord
.