Арифметические и логические предикаты
В арифметических операциях могут участвовать операнды (числа и переменные), арифметические операции + (сложение), – (вычитание), * (умножение), / (деление), mod (деление по модулю), div (целочисленное деление), скобки.
Приоритет выполнения операций представлен числами:
+ , – | |
* , / | |
div ,mod | |
– ,+ (унарные) |
Логические операторы:
> | Бодьше |
< | Меньше |
= | Равно |
>= | Больше или равно |
<= | Меньше или равно |
<> , | Не равно |
Арифметические функции:
sin(Х) | Синус, угол в радианах |
cos(Х) | Косинус, угол в радианах |
tan(Х) | Тангенс, угол в радианах |
arctan(Х) | Арктангенс |
ln(Х) | Логарифм натуральный |
log(Х) | Логарифм десятичный |
abs(X) | Модуль аргумента |
exp(Х) | Экспонента |
sqrt(Х) | Корень квадратный |
Кроме этих предикатов, в Прологе имеется большой набор стандартных предикатов для построения графических объектов. Просмотреть названия стандартных предикатов графики можно в разделе HELP меню интегрированной среды Пролога.
5. Èñïîëüçîâàíèå ÿçûêà Ïðîëîã äëÿ ïîñòðîåíèÿ ýêñïåðòíûõ ñèñòåì
Пролог является, возможно, наиболее подходящим языком, на котором выполняются экспертные системы и оболочки. На Прологе довольно просто создать интерактивную экспертную систему (т.е. работающую в режиме диалога). Такая система может варьировать процесс опроса в зависимости от обстоятельств. Более того, она может задавать минимально необходимое число вопросов.
Разработка правил для экспертных систем базируется на двух известных концепциях - с прямой и обратной цепочкой рассуждений. Каждая концепция определяет стратегию выбора в конкретных условиях. Стратегия прямого вывода состоит в том, что задается последовательность вопросов, построенных таким образом, что каждый из них позволяет отбросить большую группу потенциальных ответов, благодаря чему значительно сужается пространство поиска. Так продолжается до тех пор, пока не остается один определенный ответ.
Другую модель поведения предлагает стратегия обратного вывода. В некоторых задачах имеется всего несколько решений при наличии огромных объемов входной информации. В этом случае целесообразно в каждый момент времени рассматривать только одно из возможных решений, а затем собрать и проверить все свидетельства, которые могут его подтвердить или опровергнуть. Существует много приложений такого рода. К ним относятся, в частности, классификационные ЭС (найти причину неисправности, установить заболевание и др.). Ряд примеров экспертных систем приведен в [1].