22.6 Дополнительные сведения
Символьные вычисления были одним из
начальных применений Пролога. Примерами
первых программ являются программа
символьного интегрирования
(Bergmanи Kanoui,
1973) и программа доказательства
теорем геометрии (Welham,
1976).
Программный комплекс PRESS,упрощенным вариантом которого является
программа22.1,разрабатывался
большой группой специалистов. Многие
специалисты из группы математических
исследований Эдинбургского университета,
работая с Аланом Банди, создавали этот
комплекс. Опубликованные описания
принадлежат Bundyи
Welham (1981),
Sterlingи др. (1982) и
Silver (1986).В последней
из указанных публикаций содержится
подробное обсуждение гомогенизации.
Комплекс PRESSсодержит
различные модули, не рассматриваемые
в этой главе, но по-своему интересные,
например: пакет интервальной арифметики
Bundy, 1984),пакет арифметики с плавающей
запятой произвольной точности,
разработанный Ричардом 0'Кифом,
и разработанная
Лоренсом Бердом программа упрощения
выражений, основанная на разностных
структурах, которые были описаны в разд.
15.2.Успешная интеграция всех этих
модулей "убедительное подтверждение
возможности реализации средствами
Пролога больших программных проектов.
Во время разработки комплекса
PRESSрешались классические вопросы
создания программного обеспечения.
Например, на одном этапе было произведено
усовершенствована программы на основе
анализа статистических данных. Было
выполнено профилировании программы,
которое показало, что наиболее часто
вызывается предикат free_of.Предикат был изменен, как это
предлагалось сделать в упражнении
4к гл. 22,что привело
к ускорению работы комплекса
PRESSна 35%.
Программа 22.1является
существенно урезанной и упрощенной
версией комплекса PRESS.
Приведение этой программы в
порядок позволило провести дополнительные
исследовалия Программа 22.1легко транслировалась на другие языки
логического программирования -Concurrent
Prologи PCP (Sterlingи
Codisn, 1986).В условиях явного использования
методов удалось разработать программу
для изучения новых методов решения
уравнений на основали примеров
(Silver, 1986).ы