Предисловие
Автор данной книги, как и многие почитатели компьютерных вычислений, прошел долгий путь их реализации: от программируемых микрокалькуляторов до работы на малых и персональных ЭВМ, использующих универсальные языки программирования высокого уровня. Это нашло отражение в его ранних книгах. Совсем недавно пользователь ЭВМ, решая даже простые численные задачи, был вынужден осваивать основы программирования и готовить кустарные программы, вряд ли нужные кому-либо еще, кроме их создателя. Между тем возможности компьютеров постоянно росли. Сейчас персональный компьютер (ПК) с микропроцессором класса Pentium II, III или 4 намного превосходит по своим возможностям первые ЭВМ, занимавшие целые комнаты и залы. А скорость вычислений нынешних ПК в сотни раз превосходит скорость вычислений легендарных IBM PC XT и AT (первых ПК) и вплотную приближается к скорости вычислений суперЭВМ недавнего прошлого.
В связи с этим стал меняться взгляд на назначение компьютера. На первое место вышло применение их для работы с текстовыми процессорами (например, Microsoft Word) и прикладными программными системами для автоматизации офисной деятельности. Увы, при этом многие пользователи стали забывать о том, что ЭВМ изначально создавались для вычислений, а вовсе не для замены ими популярной, но ставшей неудобной пишущей машинки. Развитие мультимедиа привело к бурному применению компьютеров в роли игровых автоматов. В результате главный стимул развития "электронного помощника" создается отнюдь не высокоинтеллектуальными задачами.
Однако времена меняются и вечные ценности, к коим принадлежат разум и образование, вновь возвращаются. В последние годы во всем мире существенно возрос интерес к серьезному применению ПК, в том числе в области математических расчетов. Этому в большой степени способствовала разработка специальных компьютерных математических программных систем, резко снизивших потребность в написании собственных программ при решении математических задач. Первое поколение таких систем было ориентировано на операционную систему MS-DOS и появилось, казалось бы, совсем недавно – в начале 90-х гг. Так или иначе, но компьютерный мир вновь заговорил об "искусственном интеллекте", понимая под этим способность электронной машины выдавать нетривиальные решения и обучаться решению новых задач. Интерес к компьютерному моделированию в самых широких областях заметно возрос после шахматных баталий между суперкомпьютером фирмы IBM и бывшим чемпионом мира по шахматам Гарри Каспаровым. Как известно, они завершились триумфальной победой машины – или, точнее говоря, коллективного разума тех, кто создал ее и ее программное обеспечение.
В последние годы показателем интеллектуальной мощи компьютеров, в том числе и персональных, стали уже не программы для игры в шахматы, а новейшие программные системы символьной математики или компьютерной алгебры. Созданные для проведения символьных преобразований математических выражений, эти системы были доведены до уровня, позволяющего резко облегчить, а подчас и заменить, труд самой почитаемой научной элиты мира – математиков: теоретиков и аналитиков. Уже появились открытия, сделанные с помощью таких систем – но не ими самими! Вряд ли есть хоть один действительно серьезный научный проект, связанный с математикой, где они не применялись бы в деле.
Системы символьной математики долгое время были ориентированы на большие компьютеры, С появлением ПК класса IBM PC и Macintosh и с ростом их возможностей эти системы были переработаны под них и доведены до уровня массовых серийных программных систем. Сейчас системы символьной математики (или компьютерной алгебры) выпускаются самого разного "калибра" – от рассчитанной "на всех" системы Mathcad, поразительно компактной, быстрой и удобной для простых символьных вычислений системы Derive и до компьютерных монстров Mathematica, MATLAB и Maple, имеющих тысячи встроенных и библиотечных функций и изумительные возможности графической визуализации вычислений.
Все эти системы работают на персональных компьютерах, оснащенных популярными операционными системами класса Windows 95/98/NT/2000. Но не только на них – есть версии под операционные системы Linux, Unix, Mac и др. Они давно знакомы пользователям больших компьютеров и даже суперкомпьютеров.
К среднему уровню таких систем относятся интенсивно развиваемые системы класса Mathcad, имеющие (в дополнение к прекрасным средствам числовых вычислений) приобретенное по лицензии у фирмы Waterloo Maple Inc. (создателя систем Maple) ядро символьных вычислений. Ядро системы Maple используется и в другой маститой системе – MATLAB, придавая ей необычные для нее возможности символьной математики.
В данной книге впервые дается достаточно полное описание одной из самых мощных и интеллектуальных систем компьютерной алгебры – Maple под Windows, ее последней реализации – Maple 7. Эта система была создана группой ученых, занимающихся символьными вычислениями (The Symbolic Group), организованной Кейтом Геддом (Keith Geddes) и Гастоном Гонэ (Gaston Gonnet) в 1980 году в университете Waterloo, Канада. Вначале она была реализована на больших компьютерах и прошла долгий путь апробации, вобрав в свое ядро и библиотеки большую часть математических функций и правил их преобразований, выработанных математикой за столетия развития. Есть реализации программы на платформах ПК Macintosh, Unix, Sun и др.
Системам класса Maple посвящены сотни книг. Отметим лишь некоторые из них, изданные за рубежом. Достаточно полный список (около 400 наименований) книг по системам Maple можно найти на сайте разработчика этой системы – компании Waterloo Maple Software (www.maplesoft.com). Однако книг по системе Maple 7 (за исключением фирменных руководств по ней) на момент сдачи рукописи данной книги в этом списке не было.