| ||||||||||||||||
![]() | ||||||||||||||||
| ||||||||||||||||
![]() | ||||||||||||||||
| ||||||||||||||||
![]() |
Система компьютерной алгебры GAP Система компьютерной алгебры
GAP
( Разработка системы была начата в
1986 г. в г.Аахен, Германия ( Изначально система GAP разрабатывалась под Unix, а затем была портирована для работы в других операционных системах. В настоящее время она работает под разнообразными версиями Unix/Linux, а также под Windows 9x, Windows NT, MacOS. Заметим, что производительность системы под Unix/Linux возрастает на 20-40% по сравнению с Windows. GAP является свободно распространяемой, открытой и расширяемой системой. Она распространяется бесплатно (исключение могут составлять только накладные расходы), и пользователи могут свободно передавать ее другим пользователям (с некоторыми ограничениями, касающимися модификации системы или ее частей). Далее, система поставляется вместе с исходными текстами, которые написаны на двух языках: ядро системы написано на Си, а библиотека функций - на специальном языке, также называемом GAP, который напоминает Pascal. Пользователи могут создавать свои собственные программы на этом языке, и здесь исходные тексты являются незаменимым наглядным пособием. Наконец, разработчики программ для GAP могут оформить свои разработки в стандарте share package и представить их на рассмотрение в совет GAP. После прохождения процедуры рецензирования и одобрения советом GAP эта разработка включается в приложение к дистрибутиву GAP для распространения вместе с ним, и приравнивается к научной публикации. Помимо уже упомянутых share packages, система состоит из следующих четырех основных компонент:
Прежде всего, это возможность производить вычисления с гигантскими целыми и рациональными числами, допустимые значения которых ограничены только объемом доступной памяти. Далее, система работает с циклотомическими полями, конечными полями, р-адическими числами, многочленами от многих переменных, рациональными функциями, векторами и матрицами. Пользователю доступны различные комбинаторные функции, элементарные теоретико-числовые функции, разнообразные функции для работы с множествами и списками. Группы могут быть заданы в различной форме, например, как группы подстановок, матричные группы, группы, заданные порождающими элементами и определяющими соотношениями. Более того, построив, например, групповую алгебру, можно вычислить ее мультипликативную группу, и даже задать ее подгруппу, порожденную конкретными обратимыми элементами групповой алгебры. Ряд групп может быть задан непосредственным обращением к библиотечным функциям (например, симметрическая и знакопеременная группы, группа диэдра, циклическая группа и др.). Функции для работы с группами включают определение порядка группы, вычисление классов сопряженных элементов, центра и коммутанта группы, верхнего и нижнего центрального рядов, ряда коммутантов, Силовских подгрупп, максимальных подгрупп, нормальных подгрупп, решеток подгрупп, групп автоморфизмов, и т.д. Для ряда конечных групп доступно определение их типа изоморфизма. Интересная демонстрация возможностей
системы на примере построения математической модели кубика Рубика и исследования
описывающей его группы подстановок с помощью системы GAP может быть найдена
на сайте GAP по адресу Теория представлений групп также входит в область применения системы GAP. Здесь имеются инструменты для вычисления таблиц характеров конкретных групп, действий над характерами и интерактивного построения таблиц характеров, определения теоретико-групповых свойств на основании свойств таблицы характеров группы. Модулярные представления групп (т.е. представления над полем, характеристика которого делит порядок группы) также могут быть исследованы с помощью GAP. В последней версии системы существенным образом расширены возможности для работы с векторными пространствами, алгебрами и модулями. В системе могут быть определены векторные пространства над всеми доступными полями и модули над всеми доступными кольцами. Имеются алгоритмы для вычисления структуры конечномерных алгебр Ли, которые могут быть, например, заданы структурными константами или порождающими элементами, вычисления различных их Лиевских подалгебр и идеалов. Среди других областей применения
системы - теория графов и их автоморфизмов, теория кодирования, группы
Галуа, полугруппы, кристаллографические группы, и многое другое. Существует
графический интерфейс XGAP, который работает под OC Linux или Unix и позволяет,
например, графически изобразить решетку подгрупп группы. Информация о существующих
разработках для применения в той или проблемной области может быть найдена
на сайте GAP (
Получение и инсталляция системы Дистрибутив системы может быть загружен
с одного из четырех сайтов, главным из которых является сайт GAP Group
Дистрибутив занимает порядка 40 MB, в развернутом виде полная версия требует около 156 МВ (без некоторых специальных инструментов теории представлений групп, которые требуют еще 130 МВ). Для экономии места можно сначала установить частичную версию, а затем по мере необходимости дополнять ее новыми модулями. GAP вполне нормально работает на ПК Pentium 166-MMX, RAM 32 MB, но рекомендуется RAM 64 MB. Сначала с помощью описания дистрибутива необходимо определить, какой набор файлов необходим для Вашей операционной системы. На самом деле, различия между дистрибутивами (как по размеру, так и по содержанию) очень невелики. GAP разработан таким образом, что при переходе от одной операционной системы к другой меняется только его ядро, написанное на Си, и способ запуска программы. Основная же часть информации (библиотеки функций и данных), имеющие формат текстовых файлов – программ на языке GAP или специальным образом представленных данных – остается неизменной, а ядро уже, в свою очередь, обращается к ним. С учетом незначительного различия состава дистрибутива для разных систем можно рекомендовать вариант загрузки полной версии дистрибутива (т.е. для Unix/Linux-систем), после чего пользователям Windows нужно добавить всего несколько файлов, чтобы система могла работать и под Windows. Это даст им возможность ознакомиться с перспективами использования системы под Linux, и, возможно, приведет их к решению о переходе к ее использованию, например, в случае большого объема вычислений, или необходимости использовать некоторые share packages, работающие только под Unix/Linux. В общем случае для инсталляции понадобятся следующие файлы:
#########
###### ###########
###
Information at: http://www-gap.dcs.st-and.ac.uk/~gap
Loading the library. Please be patient, this may take
a while.
Если это так – поздравляем с успешным завершением инсталляции! Кстати, стартовая страница руководства в формате html находится в файле GAP4r2/doc/htm/INDEX.HTM На русском языке доступно разработанное
автором методическое пособие по предыдущей версии системы - GAP 3.4.4.
Особенности системы, описанные в нем, незначительно изменились при переходе
к новой версии 4.2, поэтому его можно использовать для получения общего
представления о системе. Текст пособия помещен на сайте GAP Group по адресам
Дальнейшая информация о системе GAP
может быть найдена на сайте GAP Group по адресу Коновалов А.Б.,
|
|
![]() | ||||||||||||||||
| ||||||||||||||||
![]() | ||||||||||||||||
|