Логическое программирование
Логи́ческое программи́рование — парадигма программирования, основанная на математической логике — программы в ней задаются в форме логических утверждений и правил вывода. Наиболее известный язык логического программирования — Пролог.
Первым языком логического программирования был язык Плэнер[1], в котором была заложена возможность автоматического вывода результата из данных и заданных правил перебора вариантов (совокупность которых называлась планом). Плэнер использовался для того, чтобы понизить требования к вычислительным ресурсам (с использованием техники поиска с возвратом) и обеспечить возможность вывода фактов, без активного использования стека. Затем был разработан Пролог, который не требовал плана перебора вариантов и был, в этом смысле, упрощением Плэнера.
От Плэнера также произошли логические языки программирования QA-4, Popler, Conniver и QLISP, а также язык Ether, не использующих метод поиска с возвратами[1]. Языки Mercury, Visual Prolog, Oz, Fril, Datalog основаны на Прологе.
ПримечанияПравить
- ↑ 1 2 Ehud Shapiro. The family of concurrent logic programming languages (англ.) // ACM Computing Surveys[en]. — 1989. — Vol. 21, iss. 3. — P. 413–510. — doi:10.1145/72551.72555.
ЛитератураПравить
- Иван Братко. Алгоритмы искусственного интеллекта на языке PROLOG = Prolog Programming For Artificial Intelligence. — М.: «Вильямс», 2004. — С. 640. — ISBN 0-201-40375-7.
- Анатолий Адаменко, Андрей Кучуков. Логическое программирование и Visual Prolog (с CD). — СПб.: «БХВ-Петербург», 2003. — С. 990. — ISBN 5-94157-156-9.
- ред. В. Н. Агафонов. Логическое программирование. Сборник статей. — М.: Мир, 1988. — С. 368. — 15 000 экз. — ISBN 5-03-000972-8.
- Д. А. Поспелов. Моделирование рассуждений. — М.: Радио и связь, 1989. — С. 184. — 20 000 экз. — ISBN 5-256-00183-3.
СсылкиПравить
- Logic Programming Virtual Library entry (англ.)
- Bibliographies on Logic Programming (англ.)
- Association for Logic Programming (ALP) (англ.)
- Theory and Practice of Logic Programming journal (англ.)
В другом языковом разделе есть более полная статья Logic programming (англ.). |
Для улучшения этой статьи по информационным технологиям желательно:
|