Логи́ческое программи́рование — парадигма программирования, основанная на математической логике — программы в ней задаются в форме логических утверждений и правил вывода. Наиболее известный язык логического программирования — Пролог.
История Первым языком логического программирования был язык Плэнер, в котором была заложена возможность автоматического вывода результата из данных и заданных правил перебора вариантов (совокупность которых называлась планом). Плэнер использовался для того, чтобы понизить требования к вычислительным ресурсам (с использованием техники поиска с возвратом) и обеспечить возможность вывода фактов, без активного использования стека. Затем был разработан Пролог, который не требовал плана перебора вариантов и был, в этом смысле, упрощением Плэнера.
От Плэнера также произошли логические языки программирования QA-4, Popler, Conniver и QLISP, а также язык Ether, не использующих метод поиска с возвратами. Языки Mercury, Visual Prolog, Oz, Fril, Datalog основаны на Прологе.
Использование математической логики для представления и выполнения компьютерных программ также является особенностью лямбда-исчисления, разработанного Алонзо Чёрчем в 1930-х. Однако первое предложение использовать клаузальную форму логики для представления компьютерных программ было сделано . При этом использовалась аксиоматизация подмножества LISP вместе с представлением отношения ввода-вывода для вычисления отношения путём моделирования выполнения программы в LISP. С другой стороны, язык программирования Absys использовал комбинацию уравнений и лямбда-исчисления в языке ассертивного программирования, который не накладывает никаких ограничений на порядок выполнения операций.
Примечания
Литература
Ссылки Logic Programming Virtual Library entry Bibliographies on Logic Programming Association for Logic Programming (ALP) Theory and Practice of Logic Programming journal
* Категория:Парадигмы программирования