РЕСУРСЫ КОМПЬЮТЕРНОЙ АЛГЕБРЫ КАК НЕОБХОДИМЫЕ СРЕДСТВА ОБУЧЕНИЯ

Новосибирский государственный университет

Тел.: (38, e-mail: kalinina@ *****

Математические пакеты

Вопросы развития образования находятся сегодня в центре общественного внимания, они интенсивно обсуждаются в профессиональных кругах, в прессе, на официальном уровне. Большое внимание уделяется возможностям новых информационных и телекоммуникационных технологий, которые выводят образование на новый уровень, обеспечивают свободный доступ к образовательным ресурсам широким слоям населения независимо от места проживания. Методы компьютерной алгебры являются важным фактором в развитии эффективных методов обучения.

На данный момент, аналитические вычисления на ЭВМ становятся необходимым инструментом многих исследователей. Параллельно с термином "аналитические вычисления на ЭВМ" более широко применяются эквивалентные ему термины "машинная алгебра" или "компьютерная алгебра". На сегодняшний день программы для аналитических вычислений от скромных программ, которые вначале выполняли только полиномиальные операции, превратились в сложные комплексы и системы.

На сегодняшний день термин «компьютерная алгебра» (КА) является вполне устоявшимся термином. Область деятельности, охватываемую этим понятием, называли «аналитическими выкладками на ЭВМ», «аналитическими преобразованиями на ЭВМ», и, наконец, «компьютерной алгеброй». Широко распространено определение этого термина как «области информатики, которая занимается разработкой, анализом, реализацией и применением алгебраических алгоритмов».

Какими же возможностями обладает алгебраическая система? Чем она отличается от обычных систем численного программирования?

Можно сказать, что система компьютерной алгебры (СКА) является развитой системой программирования с удобным входным языком, управляющие конструкции которого близки к обычным языкам программирования. В качестве базовых типов данных в языках СКА практически всегда рассматриваются формулы, группы формул, массивы формул, последовательности формул и т. д. Формула является объектом преобразования. Формулы можно дифференцировать и интегрировать, в формулы можно подставлять вместо переменных или подформул новые формулы и выполнять много различных преобразований.

В Новосибирском университете для целей преподавания активно используются системы MAPLE и MATHEMATICA.

Система MAPLE в момент создания предназначалась как для общих научных целей, так и для целей обучения. Базисная система (ядро) компактно и эффективно. Пользователи MAPLE могут писать свои собственные MAPLE-программы. Система обеспечивает удобные средства их разработки и отладки.

Сейчас можно наблюдать широкое проникновение MAPLE как в среду рабочего места исследователя (система Scientific WorkPlace – система, где совмещены операции написания формул, проведения выкладок, численных расчетов, графического оформления результатов и подготовки статьи в формате LATEX), так и в широко распространенную среду текстовых процессоров Microsoft, что позволило усилить математическими возможностями MAPLE широко известный редактор. Результаты аналитических вычислений выдаются прямо в редактируемый документ.

Система MATHEMATICA является прекрасно развитой системой как в смысле математического наполнения библиотек, так и в смысле хорошо продуманного пользовательского интерфейса. Библиотеки поддерживают работу со специальными функциями, вычисление определенных и неопределенных интегралов, конечных и бесконечных сумм и т. д. MATHEMATICA является одним из самых мощных математических пакетов.

Поскольку формула для многих исследователей является средством получения численного значения, в СКА большое внимание проявляется к проблемам численно-аналитического взаимодействия. Существующие системы обеспечивают это взаимодействие тем или иным способом. Эти способы можно подытожить следующим образом:

–  Обеспечиваются средства генерации ФОРТРАН или Си-программ. Сгенерированные программы передаются Фортран-системам через файлы.

–  СКА строится как набор Фортран или Си-программ.

–  Расширяется ЛИСП, чтобы иметь возможность исполнять на нем Фортран-программы. Однако, реализация такой системы – очень трудоемкое дело.

–  СКА реализуется на языке, который допускает как аналитические, так и численные вычисления. Такая стратегия принята в СКА, реализованных на Си. В этой стратегии есть свои резоны. Но все-таки стоит заметить, что конструирование системы компьютерной алгебры – очень трудоемкое дело, поэтому решать эту задачу путем конструирования новой системы – дело, требующее много времени. Заслуживает большого внимания подход создания гибридных систем, которые являются смесью программ, записанных на различных языках.

Входные языки и использование их для обучения

Отвлекаясь от частностей, систему КА можно рассматривать как систему, которая содержит банк преобразований, способный обеспечивать:

–  определение математических объектов с заданными свойствами;

НЕ нашли? Не то? Что вы ищете?

–  средства выполнения подстановок с учетом свойств математических объектов;

–  средства выполнения подстановок по различным стратегиям;

–  средства символьного дифференцирования и интегрирования;

–  средства упрощения выражений;

–  средства полиномиальных преобразований, как для упрощения входных выражений, так и для специальных полиномиальных преобразований;

–  обеспечение средств вывода формульных выражений в так называемой понимаемой форме;

–  наличие проблемно-ориентированной среды, пригодной для генерации пакетов требуемых аналитических и символьных преобразований.

–  многие другие преобразования.

Основным понятием, на котором основывается манипулирование выражениями в языках КА, является понятия подстановки.

Правила подстановки задаются с условиями, определяющими область их применения, и процесс вычисления некоторого объекта языка. Процесс символьного вычисления в различных языках КА определяется по-разному, но в большинстве случаев его можно определить как последовательное применение правил подстановки к объекту до тех пор, пока нельзя будет применить ни одного правила. Чаще всего правила подстановки имеют вид: ( L r R C ), где L – левая часть правила, R – правая часть правила, r – операция отношения и C – условия применения правила.

Достоинством правил подстановки является то, что они наиболее естественным образом позволяют задавать соотношения между выражениями, в том числе и рекурсивные соотношения. Итерация, т. е. многократное повторное вычисление объекта с различными значениями индексов, выполняется при наличии соотношений на область изменения индексов. Итерация может происходить по нескольким индексам одновременно.

Главной командой СКА является команда вычислить. Эта команда может присутствовать в языке явно, а может быть и неявной, все равно, система реализует ту или иную процедуру вычисления. Вычисление некоторого объекта в большинстве СКА означает последовательное применение к объекту определенных правил подстановки (определяемых системой или пользователем) до тех пор, пока нельзя будет применить ни одного правила. Например, если мы вычисляем некоторое алгебраическое выражение, и все переменные в этом выражении имеют числовые значения, то в результате вычисления получится число. Если же некоторая переменная не имеет числового значения, то выражение будет вычислено как некоторая символьная форма или формула. Пользователю предоставляются средства управления процессом вычисления, путем установления нужной последовательности преобразований или при помощи вызова специальной группы преобразований. Отдельные группы правил преобразования могут быть связаны с определенными командами и выделены как отдельные фазы процесса вычисления.

Первоначально, СКА создавались для решений очень трудоемких задач, часто с хорошо определенными правилами решения, но практически не выполнимых из-за громоздкости проводимых выкладок. Одной из первых областей такого применения оказалась небесная механика, в которой решение задач требовало манипулирования разложениями из многих тысяч членов. Небесная механика, общая теория относительности, физика высоких энергий являлись самыми первыми областями применения СКА. С появлением универсальных систем, таких как REDUCE, MATHEMATICA, MAPLE СКА становятся все более привычным и все более необходимым инструментом научной работы. СКА позволяет проводить алгебраические выкладки сразу на компьютере, а также проверять выкладки, ранее проведенные вручную. На сегодняшний день имеется весьма значительное число работ, посвященное различным применениям СКА, ежегодно проводится ряд представительных конференций по разным вопросам компьютерной алгебры, которые обязательно имеют секции применения компьютерной алгебры. И компьютерная алгебра является обычным инструментом, который используется во всех областях физики.

При использовании СКА при обучении важно рассматривать применение КА с учетом определенных предпосылок, одной из которых является внутренняя готовность преподавателя согласиться с тем, что компьютеры помогают студентам понимать математику. Механизмы вычисления, предоставляемые СКА, проясняют математическое понимание предмета, использование СКА помогает студенту контролировать вычисления, проводимые вручную. Наличие развитых систем компьютерной алгебры требует значительной переориентации учебного процесса. Преподавание многих учебных курсов может стать значительно эффективнее, если активно использовать возможности автоматического проведения трудоемких алгебраических выкладок.

Так же применение СКА стремится упрочить использование СКА в роли естественной рабочей среды математика, предоставляющей ему возможности проведения аналитических, численных и графических вычислений. Такой подход поддерживается заметным числом преподавателей НГУ как в основных, так и в специальных курсах. Но такое применение требует много трудозатрат. Вполне возможно, что в будущем появятся университетские программы, которые будут автоматически направлять студента на пути изучения предмета. И успех таких обучающих программ потребует развития как программного обеспечения, так и планирования курсов, что требует больших затрат времени преподавателя. Что же касается проведения вычислений, то они должны проводиться студентом не пассивно, а активно, то есть студент сам должен контролировать выбор операций, производимых компьютером.

Работа поддерживается грантом РФФИ № 2.

Литература

1. Б. Бухбергер, Дж. Коллинз, Р.Лоос (ред.) Компьютерная алгебра. Символьные и алгебраические вычисления. М., Мир, 19с.

2. , . Введение в MAPLE. Математический пакет для всех. Москва: Мир,1997, 205 с.

3. S. Wolfram MATHEMATICA: A System for Doing Mathematics by Computer. AddisonWesley Publishing Company. 1988.

4. Science, 1996, № 000, p.1-20.