Interested Article - Логическое программирование

Парадигмы программирования

Логи́ческое программи́рование парадигма программирования , основанная на математической логике — программы в ней задаются в форме логических утверждений и правил вывода. Наиболее известный язык логического программирования — Пролог .

История

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

От Плэнера также произошли логические языки программирования , , и , а также язык , не использующих метод поиска с возвратами . Языки Mercury , Visual Prolog , Oz , , Datalog основаны на Прологе.

Использование математической логики для представления и выполнения компьютерных программ также является особенностью лямбда-исчисления, разработанного Алонзо Чёрчем в 1930-х . Однако первое предложение использовать клаузальную форму логики для представления компьютерных программ было сделано . При этом использовалась аксиоматизация подмножества LISP вместе с представлением отношения ввода-вывода для вычисления отношения путём моделирования выполнения программы в LISP. С другой стороны, язык программирования Absys использовал комбинацию уравнений и лямбда-исчисления в языке ассертивного программирования, который не накладывает никаких ограничений на порядок выполнения операций.

Примечания

  1. Ehud Shapiro. The family of concurrent logic programming languages (англ.) // . — 1989. — Vol. 21 , iss. 3 . — P. 413–510 . — doi : .
  2. Green, Cordell. (PDF) . IJCAI 1969.
  3. Foster, J.M.; Elcock, E.W. (1969). ABSYS 1: An Incremental Compiler for Assertions: an Introduction . Fourth Annual Machine Intelligence Workshop. Machine Intelligence. Vol. 4. Edinburgh, UK: Edinburgh University Press . pp. 423—429.

Литература

  • Иван Братко. Алгоритмы искусственного интеллекта на языке PROLOG = Prolog Programming For Artificial Intelligence. — М. : « », 2004. — С. 640. — ISBN 0-201-40375-7 .
  • Анатолий Адаменко, Андрей Кучуков. . — СПб. : « », 2003. — С. . — ISBN 5-94157-156-9 .
  • ред. В. Н. Агафонов. Логическое программирование. Сборник статей. — М. : Мир , 1988. — С. 368. — 15 000 экз. ISBN 5-03-000972-8 .
  • Д. А. Поспелов . Моделирование рассуждений. — М. : , 1989. — С. 184. — 20 000 экз. ISBN 5-256-00183-3 .

Ссылки

  • (англ.)
  • (англ.)
  • (англ.)
  • (англ.)
Источник —

Same as Логическое программирование