Презентация "Логическое программирование"
Подписи к слайдам:
Логическое программирование
- История развития языка
- Пролог
- Выполнил: Рыжков Сергей, студент 340 группы.
- Руководитель Волосникова Л.В.
- ГБПОУ «Шадринский политехнический колледж»
- <number>
- PROLOG ~ “PROgramming in LOgic” (“Программирование в терминах логики”) – самый популярный язык логического программирования.
- Язык основан на теории исчисления предикатов первого порядка и методах доказательства теорем.
- Основной метод вычислений – резолюция (“resolution”, процедура доказательства)
- Поддерживает декларативный (описательный) стиль программирования – программы конструируются в терминах точного определения проблемной ситуации / формулировки задачи, без написания программы в виде последовательности инструкций по выполнению алгоритма («что истинно», а не «как решить задачу»)
- Программа на Прологе определяет, является ли заданная цель истинной/достижимой, и если да – то при каких условиях / значениях переменных («что получить»). Процедурность Пролога выражается в определении порядка действий по достижению цели («как получить»).
- <number>
- 1965 , "A machine oriented logic based on the resolution principle", "Journal of the ACM №12", Дж. Робинсон представил метод автоматического поиска доказательства теорем в исчислении предикатов первого порядка - "принцип резолюции".
- работа Роберта Ковальского "Логика предикатов как язык программирования", 1974: заложила теоретические основы.
- В 1973 году "группа искусственного интеллекта" во главе с Аланом Кольмероэ создала в Марсельском университете программу, предназначенную для доказательства теорем.; программа использовалась при построении систем обработки текстов на естественном языке; получила название Prolog (от Programmation en Logique); прообраз Пролога (1я эксперим. реализация)
- <number>
- Первая программа на Прологе была написана в начале 1970 годов во Франции, в рамках проекта по пониманию естественного языка.
- Маартен ван Эмден из Эдинбурга (экспериментальная демонстрационная система); совместно в 1976 г. предложили два подхода к прочтению текстов логических программ: процедурный и декларативный.
- В 1977 году в университете Эдинбурга, каф. ИИ, Дэвид Уоррен и Фернандо Парейра создали очень эффективный компилятор языка для ЭВМ DEC–10 ("эдинбургская версия") - прототип для многих последующих реализаций Пролога; был сам написан на Прологе.
- В 1980 году Кларк и Маккейб в Великобритании разработали версию Пролога для персональных ЭВМ.
- В 1981 году стартовал проект Института по разработке методов создания компьютеров нового (пятого) поколения.
- в 1996 году был опубликован официальный стандарт ISO языка Prolog.
- <number>
- Часто используется для создания систем управления базами данных, где применяются очень сложные запросы, которые довольно легко записать на Прологе.
- В Прологе очень компактно, по сравнению с императивными языками, описываются многие алгоритмы;
- Пролог-программу, как правило, очень легко писать, понимать и отлаживать.
- Прологу присущ ряд механизмов, которыми не обладают традиционные языки программирования: сопоставление с образцом, вывод с поиском и возвратом.
- Для хранения данных в Прологе используются списки, а не массивы. В языке отсутствуют операторы присваивания и безусловного перехода, указатели. Естественным и зачастую единственным методом программирования является рекурсия.
- <number>
- быстрая разработка прототипов прикладных, автогенерация кода;
- верификация программ и разработка высокоуровневых ЯП;
- системы автоматического программирования;
- естественно-языковые интерфейсы для существующих систем;
- символьные вычисления: решение уравнений, диффернц./интегрир.;
- автоматическое доказательство теорем;
- проектирование динамических реляционных БД и СУБД;
- экспертные системы и оболочки экспертных систем;
- автоматический перевод с одного языка на другой;
- системы автоматизированного проектирования;
- и многие другие области … (в т.ч. связанные с ИИ)
- Логическое программирование [Электронный ресурс] - https://ru.wikipedia.org/wiki/%CB%EE%E3%E8%F7%E5%F1%EA%EE%E5_%EF%F0%EE%E3%F0%E0%EC%EC%E8%F0%EE%E2%E0%ED%E8%E5