рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Чистый Полог

Чистый Полог - раздел Программирование, Обзор языков логического программирования Чистый Полог. Взаимосвязь Логического Программирования И Языка Пролог Напомин...

Чистый Полог. Взаимосвязь логического программирования и языка Пролог напоминает взаимосвязь лямбда-исчисления и языка Лисп. Оба этих языка являются конкретной реализацией абстрактных вычислительных моделей.

Логические программы, исполняемые с помощью вычислительной модели Пролога, называются программами на чистом Прологе. Чистый Пролог представляет собой приближнную реализацию вычислительной модели логического программирования на последовательной машине. Конечно, данная реализация не является единственно возможной. Она является, однако, одной из наилучших с практической точки зрения совмещения свойств абстрактного интерпретатора с возможностью эффективного выполнения.

При построении на основе абстрактного интерпретатора некоторого интерпретатора для конкретного языка программирования необходимо принять два решения. Во-первых, следует ограничить произвол в выборе редуцируемой цели в резольвенте, т.е. уточнить метод расписания. Во-вторых, нужно реализовать недетерминированный выбор предложения программы, используемого в редукции. Существуют разные языки программирования, использующие различные способы выбора.

Грубо говоря, они делятся на два класса. Пролог и его расширения основаны на последовательном выполнении. Другие языки, такие, как Parlog, Параллельный Пролог и GHC, основаны на параллельном выполнении. Последовательные языки отличаются от параллельных методом реализации недетерминизма. Отличие Пролога от его версий состоит в методе выбора редуцируемой цели. Выполнение программ на Прологе заключается в работе абстрактного интерпретатора, при которой вместо произвольной цели выбирается самая лева цель, а недетерминированный выбор предложения заменяется последовательным поиском унифицируемого правила и механизма возврата.

Другими словами, в Прологе используется стековый метод расписания. В Прологе резольвента используется как стек для редукции выбирается верхняя цель, производные цели помещаются в стек резольвенты. В дополнение к методу стека Пролог моделирует недетерминированный выбор редуцирующего правила с помощью последовательного поиска и механизма возврата.

При попытке редуцировать цель выбирается первое предложение, заголовок которого унифицируем с данной целью. Если не существует правила, унифицируемого с выбранной целью, то вычисление восстанавливается на стадии последнего сделанного выбора и выбирается следующее унифицируемое предложение. 2.2.

– Конец работы –

Эта тема принадлежит разделу:

Обзор языков логического программирования

Машина фон Неймана содержит большую память и процессор, снабженный локальной памятью, ячейки которой называются регистрами. Процессор может загружать данные из памяти в регистры, выполнять… Хотя компьютеры предназначены для использования людьми, возникающие при их создании трудности были столь значительны,…

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Чистый Полог

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Сравнение с традиционными языками программирования
Сравнение с традиционными языками программирования. Язык программирования характеризуется присущими ему механизмами управления и обработки данных. Пролог как универсальный язык программирования мож

Программирование на чистом Прологе
Программирование на чистом Прологе. Основная цель логического программирования создать возможность разработки программ на языке высокого уровня. В идеале программист должен записать аксиомы, опреде

Проблема завершения программ
Проблема завершения программ. Используемый в Прологе принцип обхода дерева в глубину приводит к серьзным проблемам. Если дерево поиска цели относительно некоторой программы содержит бесконечную вет

Избыточные решения
Избыточные решения. При построении программ на Прологе следует обратить внимание на важную характеристику программы, не имеющую аналогов в логическом программировании отсутствие избыточных решений.

Практические рекомендации
Практические рекомендации. При практическом программировании следует заботиться об эффективности программ, учитывать ограничения, связанные с конкретной реализацией, используемой системой пр

Эффективность программ на Прологе
Эффективность программ на Прологе. В практическом программировании на Прологе необходимо обращать внимание на эффективность программ. Установим критерии оценки программ. Основной оцениваемый

Разработка программ
Разработка программ. Программирование на Прологе настолько близко к записи спецификаций, насколько это доступно для практического языка программирования. Поэтому кому-нибудь может показаться, что в

Язык логического программирования KL
Язык логического программирования KL. KL0 от англ. kernel-language version 0 ядро-язык версии 0 язык, в основу которого положено расширение языка логического программирования Пролог. Среди особенно

Типы данных KL
Типы данных KL. Рассмотрим в общих чертах некоторые базовые типы данных языка. К ним относятся символы, целые и действительные числа, строки и др. Символы в основном предназначены для представления

Язык программирования ShapeUp
Язык программирования ShapeUp. ShapeUp - ещ один язык логического программирования, в основу которого положен Пролог, расширенный средствами сопоставления строк. В ShapeUp образцы строк рассматрива

Lisp язык функционального программирования
Lisp язык функционального программирования. Почему я решил заострить внимание на Лиспе. Дело в том, что кроме функционального программирования которое является основным в Лиспе в этом языке

Лисп в истории программирования
Лисп в истории программирования. Лисп является наиболее важным языком программирования, используемым в исследованиях по искусственному интеллекту и в математической лингвистике. Лисп ни в ка

Логическое программирование на Лиспе
Логическое программирование на Лиспе. Лисповские функции, как и написанные на традиционных языках программы, обрабатывают данные в порядке, задаваемом описанием алгоритма, несмотря на то, что эту п

Используемая литература
Используемая литература. И. Братко Программирование на языке Пролог для искусственного интеллекта. М Мир 1990г. 2. Язык Пролог в пятом поколении ЭВМ. Сборник статей под редакцией Ильинского.

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги