Составители:
Рубрика:
18
чем в императивных языках, например, таких как Си или Паскаль. Турбо-
Пролог сопоставляет все доступные ему факты (в данном случае кто что
любит) с любым правилом, с помощью которого могут быть выведены новые
факты.
Турбо-Пролог не предоставляет возможность программисту выполнить
такой приказ, как на "данном этапе сравнить X с
яблоками и проверить, что
это сравнение удовлетворяет некоторым условиям". Турбо-Пролог построен
так, что он автоматически пытается выполнить сопоставление, используя
принципы логики предикатов. Все, что вам необходимо сделать - это, ис-
пользуя синтаксис Турбо-Пролога, описать к каким заключениям приведут
какие условия. Другими словами, вы формулируете логические взаимоотно-
шения, а программа использует
ваши утверждения о логических связях для
получения заключения.
Теперь вы, по-видимому, уже достаточно подготовлены, чтобы, во-
первых, принять к сведению некоторые свойства Турбо-Пролога как декла-
ративного языка и, во-вторых, понять, как Турбо-Пролог использует логи-
ческий синтаксис предикатов для проверки фактов. В следующей главе
вы подробнее ознакомитесь
с точным синтаксисом и структурой программы
на Турбо-Прологе, а сейчас необходимо сосредоточиться только на основ-
ных понятиях, не беспокоясь о том, как написать программу.
Написание правил и фактов в Турбо-Прологе кажется более громозд-
ким по сравнению с записью фактов и условий на русском языке. Но про-
стые примеры
из этой главы, вероятно, дадут возможность увидеть сходство
между, например, русским языком и логикой предикатов или синтаксиче-
скими конструкциями Пролога. Благодаря этому сходству вскоре исчезнет
впечатление громоздкости и вы будете чувствовать себя уверенно "думая на
Прологе".
2.3 Управление программой
Теперь вы знаете, что Турбо-Пролог строит заключения на основе ло-
гических соотношений, определенных в программе. В этом разделе объясня-
ется, каким образом входные данные и логические связи программы совме-
стно используются для генерации выходного результата.
Предикатная конструкция, называющаяся целью, используется для за-
пуска процесса выполнения программы. Турбо-Пролог пытается сопоставить
цель с фактами и правилами программы. Если цель является фактом,
таким
как "любит(мэри, яблоки)", то Турбо-Пролог отвечает True (истина) или
False (ложь); если цель содержит переменные, то Турбо-Пролог выдает либо
те их значения, которые приводят к решению, если оно существует, либо
сообщение No solutions (решений нет).
Данный раздел не содержит всех элементов программы на Турбо-
Прологе. Они рассматриваются в
следующей главе. Данный раздел содержит
общие понятия и сведения, которые будут полезны позднее, когда вы нач-
нете создавать собственные программы.
чем в императивных языках, например, таких как Си или Паскаль. Турбо- Пролог сопоставляет все доступные ему факты (в данном случае кто что любит) с любым правилом, с помощью которого могут быть выведены новые факты. Турбо-Пролог не предоставляет возможность программисту выполнить такой приказ, как на "данном этапе сравнить X с яблоками и проверить, что это сравнение удовлетворяет некоторым условиям". Турбо-Пролог построен так, что он автоматически пытается выполнить сопоставление, используя принципы логики предикатов. Все, что вам необходимо сделать - это, ис- пользуя синтаксис Турбо-Пролога, описать к каким заключениям приведут какие условия. Другими словами, вы формулируете логические взаимоотно- шения, а программа использует ваши утверждения о логических связях для получения заключения. Теперь вы, по-видимому, уже достаточно подготовлены, чтобы, во- первых, принять к сведению некоторые свойства Турбо-Пролога как декла- ративного языка и, во-вторых, понять, как Турбо-Пролог использует логи- ческий синтаксис предикатов для проверки фактов. В следующей главе вы подробнее ознакомитесь с точным синтаксисом и структурой программы на Турбо-Прологе, а сейчас необходимо сосредоточиться только на основ- ных понятиях, не беспокоясь о том, как написать программу. Написание правил и фактов в Турбо-Прологе кажется более громозд- ким по сравнению с записью фактов и условий на русском языке. Но про- стые примеры из этой главы, вероятно, дадут возможность увидеть сходство между, например, русским языком и логикой предикатов или синтаксиче- скими конструкциями Пролога. Благодаря этому сходству вскоре исчезнет впечатление громоздкости и вы будете чувствовать себя уверенно "думая на Прологе". 2.3 Управление программой Теперь вы знаете, что Турбо-Пролог строит заключения на основе ло- гических соотношений, определенных в программе. В этом разделе объясня- ется, каким образом входные данные и логические связи программы совме- стно используются для генерации выходного результата. Предикатная конструкция, называющаяся целью, используется для за- пуска процесса выполнения программы. Турбо-Пролог пытается сопоставить цель с фактами и правилами программы. Если цель является фактом, таким как "любит(мэри, яблоки)", то Турбо-Пролог отвечает True (истина) или False (ложь); если цель содержит переменные, то Турбо-Пролог выдает либо те их значения, которые приводят к решению, если оно существует, либо сообщение No solutions (решений нет). Данный раздел не содержит всех элементов программы на Турбо- Прологе. Они рассматриваются в следующей главе. Данный раздел содержит общие понятия и сведения, которые будут полезны позднее, когда вы нач- нете создавать собственные программы. 18
Страницы
- « первая
- ‹ предыдущая
- …
- 16
- 17
- 18
- 19
- 20
- …
- следующая ›
- последняя »