Введение.Возникновение и развитие систем компьютерной математики
1.1.2 Отличия символьных вычислений от численных
Термин "компьютерная алгебра" возник как синоним терминов "символьные вычисления", "аналитические вычисления", "аналитические преобразования" и т. д. Даже в настоящее время этот термин на французском языке дословно означает "формальные вычисления".
В чём основные отличия символьных вычислений от численных и почему возник термин "компьютерная алгебра"?
Когда мы говорим о вычислительных методах, то считаем, что все вычисления выполняются в поле вещественных или комплексных чисел. В действительности же всякая программа для ЭВМ имеет дело только с конечным набором рациональных чисел, поскольку только такие числа представляются в компьютере. Для записи целого числа отводится обычно 16 или 32 двоичных символа (бита), для вещественного – 32 или 64 бита. Это множество не замкнуто относительно арифметических операций, что может выражаться в различных переполнениях (например, при умножении достаточно больших чисел или при делении на маленькое число). Ещё более существенной особенностью вычислительной математики является то, что арифметические операции над этими числами, выполняемые компьютером, отличаются от арифметических операций в поле рациональных чисел.
Особенностью компьютерных вычислений является неизбежное наличие погрешности или конечная точность вычислений. Каждую задачу требуется решить с использованием имеющихся ресурсов ЭВМ за обозримое время с заданной точностью, поэтому оценка погрешности — важная задача вычислительной математики.
Решение проблемы точности вычислений и конечности получаемых численных результатов в определённой степени даётся развитием систем компьютерной алгебры. Системы компьютерной алгебры, осуществляющие аналитические вычисления, широко используют множество рациональных чисел. Компьютерные операции над рациональными числами совпадают с соответствующими операциями в поле рациональных чисел. Кроме того, ограничения на допустимые размеры числа (количество знаков в его записи) позволяет пользоваться практически любыми рациональными числами, операции над которыми выполняются за приемлемое время.
В компьютерной алгебре вещественные и комплексные числа практически не применяются, зато широко используется алгебраические числа. Алгебраическое число задаётся своим минимальным многочленом, а иногда для его задания требуется указать интервал на прямой или область в комплексной плоскости, где содержится единственный корень данного многочлена. Многочлены играют в символьных вычислениях исключительно важную роль. На использовании полиномиальной арифметики основаны теоретические методы аналитической механики, они применяются во многих областях математики, физики и других наук. Кроме того, в компьютерной алгебре рассматриваются такие объекты, как дифференциальные поля (функциональные поля), допускающие показательные, логарифмические, тригонометрические функции, матричные кольца (элементы матрицы принадлежат кольцам достаточно общего вида) и другие. Даже при арифметических операциях над такими объектами происходит разбухание информации, и для записи промежуточных результатов вычислений требуется значительный объём памяти ЭВМ.
В научных исследованиях и технических расчётах специалистам приходится гораздо больше заниматься преобразованиями формул, чем собственно численным счётом. Тем не менее, с появлением ЭВМ основное внимание уделялось автоматизации численных вычислений, хотя ЭВМ начали применяться для решения таких задач символьных преобразований, как, например, символьное дифференцирование, ещё в 50-х годах прошлого века. Активная разработка систем компьютерной алгебры началась в конце 60-х годов. С тех пор создано значительное количество различных систем, получивших различную степень распространения; некоторые системы продолжают развиваться, другие отмирают, и постоянно появляются новые.