На многих пользователей систем символьной
математики удручающее впечатление может произвести наличие хотя и редких, но
ошибочных решений. В самом деле, мы немедленно стерли бы с жесткого диска табличный
процессор, давший ошибку в бухгалтерских расчетах, и перестали бы доверять системе
проверки орфографии, дающей ошибки при проверке. Впрочем, последнее случается
сплошь и рядом — пока нет таких систем, которые корректно проверяли бы орфографию
и грамматику. Тот же текстовый процессор Word 97/2000 постоянно ошибается при
проверке орфографии текстов, в чем автор не раз убеждался, готовя с его помощью
большие книги.
У систем компьютерной алгебры нет
проблем с обработкой естественного языка — математика полностью формализованная
наука. Однако в них много своих условностей и неоднозначностей, которые здесь
как бы заранее запрограммированы. К примеру, что считать более простым выражением:
tan(x) или sin(x)/cos(x)? Система
Derive полагает более простым выражением tan(x) и преобразует
к нему выражение sin(x)/cos(x). А вот система Maple V
ничуть не менее справедливо считает, что функции sin(x) и cos(x)
математически более простые, чем tan(.r), и вообще — tan(x),
по сути, не самостоятельная функция, a sin(x)/cos(x).
Поэтому Maple V везде вместо tm(x)
будет выводить sin(x)/cos(x).
Представьте себе, что таких условностей
десятки и вы ничего об этом не знаете. Поэтому не стоит удивляться, что символьное
значение какой-либо производной или интеграла может заметно отличаться по виду
от приводимого в том справочнике, из которого взято исходное выражение для проверки
правильности работы системы. Часто, чтобы получить результат в необходимом виде,
необходимо приложить определенные усилия либо дать конкретные указания системе
о типе преобразований в ходе вычислений. Указания реализуются в виде параметров
к командам и функциям системы.
По образному выражению автора обзора
[40], решение задач в символьном виде напоминает переход через поле, густо напичканное
минами. Удивительно не то, что системы символьной математики могут ошибаться
и «взрываться», а то, что число этих ошибок мало и уже на нынешнем
этапе развития таких систем это не мешает их серьезному практическому применению.
Стоит еще раз подчеркнуть, что Maple в этом отношении является одной из лучших
систем, реализованных на ПК класса IBM PC и Macintosh с достаточно умеренными
техническими характеристиками. Кстати говоря, для ПК Macintosh последней реализацией
пока что является Maple V R4.
Один знакомый автор любил говорить,
что компьютеры делают умных людей умнее, а глупых — глупее. Пожалуй, это более
чем справедливо для людей, сидящих у ПК с установленной на нем системой символьной
математики. Лишь те, кто понимают суть математических вычислений и имеют должную
математическую интуицию и подготовку, могут получить от таких систем самые серьезные
и даже новые результаты. Те же, кто думает, что системы символьной математики
заменят им математические знания, глубоко ошибаются и могут получить красочно
выглядящие, но абсолютно неверные и даже псевдонаучные результаты!
Однако вряд ли следует утрировать
вероятность выдачи системами символьной математики ошибочных результатов — даже
самые опытные математики-аналитики тоже могут ошибаться в своих вычислениях.
В разработке таких систем, как Maple или Mathematica принимают участие крупные
математические школы всего мира! Эти системы — кладезь математических понятий,
сведений и знаний. Они способны заменить самые серьезные справочники по математическим
вычислениям в любой области науки, техники и образования. Кроме того, они имеют
множество средств для проверки корректности выполняемых вычислений, например
путем подстановки полученных результатов в исходные выражения.
Кстати, одно из самых действенных приемов проверки таких средств — решение задачи одновременно на нескольких системах символьной математики. Не случайно уже сейчас можно заметить тенденцию к объединению математических систем. Эта новая и безусловно прогрессивная тенденция в ближайшее время приведет к созданию автоматизированных рабочих мест математиков и ученых других близких специальностей. Разработки таких рабочих мест (разумеется, компьютер на них — главный инструмент), в том числе с использованием систем Maple, уже появились и о них немного говорится в заключении. В добавление к сказанному надо отметить, что Maple 7 — одна из самых надежных систем компьютерной математики. Надежных прежде всего в смысле высокой достоверности получения правильных результатов при сложных символьных вычислениях. Эта первая система компьютерной математики, успешно прошедшая полное тестирование на задачах повышенной сложности, предлагаемых для оценки качества подобных систем.