🗊Презентация Логическое программирование и язык Пролог

Нажмите для полного просмотра!
Логическое программирование и язык Пролог, слайд №1Логическое программирование и язык Пролог, слайд №2Логическое программирование и язык Пролог, слайд №3Логическое программирование и язык Пролог, слайд №4Логическое программирование и язык Пролог, слайд №5Логическое программирование и язык Пролог, слайд №6Логическое программирование и язык Пролог, слайд №7Логическое программирование и язык Пролог, слайд №8Логическое программирование и язык Пролог, слайд №9Логическое программирование и язык Пролог, слайд №10Логическое программирование и язык Пролог, слайд №11Логическое программирование и язык Пролог, слайд №12Логическое программирование и язык Пролог, слайд №13Логическое программирование и язык Пролог, слайд №14Логическое программирование и язык Пролог, слайд №15Логическое программирование и язык Пролог, слайд №16Логическое программирование и язык Пролог, слайд №17Логическое программирование и язык Пролог, слайд №18Логическое программирование и язык Пролог, слайд №19Логическое программирование и язык Пролог, слайд №20Логическое программирование и язык Пролог, слайд №21Логическое программирование и язык Пролог, слайд №22Логическое программирование и язык Пролог, слайд №23Логическое программирование и язык Пролог, слайд №24Логическое программирование и язык Пролог, слайд №25Логическое программирование и язык Пролог, слайд №26Логическое программирование и язык Пролог, слайд №27Логическое программирование и язык Пролог, слайд №28Логическое программирование и язык Пролог, слайд №29Логическое программирование и язык Пролог, слайд №30Логическое программирование и язык Пролог, слайд №31Логическое программирование и язык Пролог, слайд №32Логическое программирование и язык Пролог, слайд №33Логическое программирование и язык Пролог, слайд №34Логическое программирование и язык Пролог, слайд №35Логическое программирование и язык Пролог, слайд №36Логическое программирование и язык Пролог, слайд №37Логическое программирование и язык Пролог, слайд №38Логическое программирование и язык Пролог, слайд №39Логическое программирование и язык Пролог, слайд №40Логическое программирование и язык Пролог, слайд №41Логическое программирование и язык Пролог, слайд №42Логическое программирование и язык Пролог, слайд №43

Содержание

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

Слайды и текст этой презентации


Слайд 1





Логическое программирование и язык Пролог
Описание слайда:
Логическое программирование и язык Пролог

Слайд 2





План лекции:
Понятие логического программирования.
Типы предложений в Прологе.
Объекты данных – термы. 
Встроенные предикаты. 
Структура программы Турбо Пролога.
Описание слайда:
План лекции: Понятие логического программирования. Типы предложений в Прологе. Объекты данных – термы. Встроенные предикаты. Структура программы Турбо Пролога.

Слайд 3





Литература:
Братко, И. Программирование на языке Пролог для искусственного интеллекта [Текст]/ И. Братко. – М.: Мир, 1990. – 560с.
Марселлус, Д. Программирование экспертных систем на Турбо Прологе [Текст]/ Д. Марселлус. – М.: Финансы и статистика, 1994. – 256с. 
Прыкина, Е.Н. Основы логического программирования в среде Турбо Пролог [Текст]/ Е.Н. Прыкина. – Кемерово: КемГУКИ, 2006. – 68с.
Описание слайда:
Литература: Братко, И. Программирование на языке Пролог для искусственного интеллекта [Текст]/ И. Братко. – М.: Мир, 1990. – 560с. Марселлус, Д. Программирование экспертных систем на Турбо Прологе [Текст]/ Д. Марселлус. – М.: Финансы и статистика, 1994. – 256с. Прыкина, Е.Н. Основы логического программирования в среде Турбо Пролог [Текст]/ Е.Н. Прыкина. – Кемерово: КемГУКИ, 2006. – 68с.

Слайд 4





Краткие исторические сведения
Пролог – ПРОграммирование в терминах ЛОГики. 
Разработан в Марселе в 1972 году.
Первая версия языка Турбо Пролог – в 1986 году.
Турбо Пролог 2.0. – в 1988 году.
Описание слайда:
Краткие исторические сведения Пролог – ПРОграммирование в терминах ЛОГики. Разработан в Марселе в 1972 году. Первая версия языка Турбо Пролог – в 1986 году. Турбо Пролог 2.0. – в 1988 году.

Слайд 5





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

Слайд 6





Программа на Прологе 
Модель некоторого фрагмента предметной области, о котором идет речь в решаемой задаче. 
Вместо алгоритма решения задачи составляется ее логическая спецификация.
Описание слайда:
Программа на Прологе Модель некоторого фрагмента предметной области, о котором идет речь в решаемой задаче. Вместо алгоритма решения задачи составляется ее логическая спецификация.

Слайд 7





Логическое программирование 
 Метод программирования, предназначенный для решения задач искусственного интеллекта, в соответствии с которым программа описывает логическую структуру решения задачи, указывая преимущественно, что «нужно сделать», не вдаваясь в детали «как это делается». Практическим воплощением метода является язык Пролог.
Описание слайда:
Логическое программирование Метод программирования, предназначенный для решения задач искусственного интеллекта, в соответствии с которым программа описывает логическую структуру решения задачи, указывая преимущественно, что «нужно сделать», не вдаваясь в детали «как это делается». Практическим воплощением метода является язык Пролог.

Слайд 8





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

Слайд 9





С точки зрения логики предикатов элементарные выражения имеют вид:
Описание слайда:
С точки зрения логики предикатов элементарные выражения имеют вид:

Слайд 10





ПРИМЕР:
Описание слайда:
ПРИМЕР:

Слайд 11





Типы предложений в Прологе
Описание слайда:
Типы предложений в Прологе

Слайд 12





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

Слайд 13





Факты
Факты используются для констатации того, что выполнено некоторое отношение между объектами. 
Например, 
likes (nick, helen).
Описание слайда:
Факты Факты используются для констатации того, что выполнено некоторое отношение между объектами. Например, likes (nick, helen).

Слайд 14





Примеры фактов
women (helen).
father (victor, helen).
give (victor, book, helen).
Описание слайда:
Примеры фактов women (helen). father (victor, helen). give (victor, book, helen).

Слайд 15





Использование переменных в фактах
likes (nick, apple).
likes (helen, apple).
likes (mary, apple).
…
Описание слайда:
Использование переменных в фактах likes (nick, apple). likes (helen, apple). likes (mary, apple). …

Слайд 16





Вопросы
Система рассматривает вопрос как цель.
? – have (mary, book).
Описание слайда:
Вопросы Система рассматривает вопрос как цель. ? – have (mary, book).

Слайд 17





Вопросы
likes (alexander, fish).
likes (alexander, mary).
likes (mary, book).
likes (alexander, book).
Описание слайда:
Вопросы likes (alexander, fish). likes (alexander, mary). likes (mary, book). likes (alexander, book).

Слайд 18





Использование переменных в вопросах
likes (alexander, fish).
likes (alexander, mary).
likes (mary, book).
likes (alexander, book).
Описание слайда:
Использование переменных в вопросах likes (alexander, fish). likes (alexander, mary). likes (mary, book). likes (alexander, book).

Слайд 19





Конъюнкция
likes (alexander, fish).
likes (alexander, mary).
likes (mary, book).
likes (alexander, book).
Описание слайда:
Конъюнкция likes (alexander, fish). likes (alexander, mary). likes (mary, book). likes (alexander, book).

Слайд 20





Конъюнкция
Процесс нахождения соответствия между целью и фактом или правилом называется унификацией.
Описание слайда:
Конъюнкция Процесс нахождения соответствия между целью и фактом или правилом называется унификацией.

Слайд 21





Правила
Правила описывают (содержит) утверждения, зависящее от условий.
Правила используются для выражения определений.
Пример: 
Х является сестрой Y, если
         Х является женщиной и 
         Х и Y имеют одних и тех же родителей.
Описание слайда:
Правила Правила описывают (содержит) утверждения, зависящее от условий. Правила используются для выражения определений. Пример: Х является сестрой Y, если Х является женщиной и Х и Y имеют одних и тех же родителей.

Слайд 22





Правила
child (X, Y) :– 
                       parent (Y, X). 		
grandfather (X, Y) :– 
                       parent (X, Z), parent (Z, Y), man (X).                                                    
parent (X, Y) :– 
                       mother (X, Y); father (X, Y).
Описание слайда:
Правила child (X, Y) :– parent (Y, X). grandfather (X, Y) :– parent (X, Z), parent (Z, Y), man (X). parent (X, Y) :– mother (X, Y); father (X, Y).

Слайд 23





Объекты данных – термы
Описание слайда:
Объекты данных – термы

Слайд 24





Константы
Константами являются целые и действительные числа. Диапазон изменения целых чисел 
от -32768 до + 32767. 
Диапазон изменения действительных чисел
 от 1Е-307  до 1Е+308.
Как и в других языках программирования, константы обозначают конкретные элементарные объекты, а все другие типы данных в Прологе составлены из сочетаний констант и переменных.
Описание слайда:
Константы Константами являются целые и действительные числа. Диапазон изменения целых чисел от -32768 до + 32767. Диапазон изменения действительных чисел от 1Е-307 до 1Е+308. Как и в других языках программирования, константы обозначают конкретные элементарные объекты, а все другие типы данных в Прологе составлены из сочетаний констант и переменных.

Слайд 25





Переменные
Переменные служат для обозначения объекта, на который нельзя сослаться по имени. Областью действия переменной в Прологе является одно предложение.
Исключением из правила определения области действия является анонимная переменная, которая обозначается символом подчеркивания "_".
Описание слайда:
Переменные Переменные служат для обозначения объекта, на который нельзя сослаться по имени. Областью действия переменной в Прологе является одно предложение. Исключением из правила определения области действия является анонимная переменная, которая обозначается символом подчеркивания "_".

Слайд 26





Переменные
Переменные, отличные от анонимных, называются именованными, а неконкретизированные (переменные, которым не было присвоено значение) называются свободными.
Переменная, которая получила какое-то значение и оказалась связанной с определенным объектом, называется связанной.
Описание слайда:
Переменные Переменные, отличные от анонимных, называются именованными, а неконкретизированные (переменные, которым не было присвоено значение) называются свободными. Переменная, которая получила какое-то значение и оказалась связанной с определенным объектом, называется связанной.

Слайд 27





Переменные
Имена переменных должны начинаться с заглавной буквы или символа подчеркивания и содержать только символы букв, цифр и подчеркивания.
Примеры переменных:
X, Переменная, _3, _переменная.
Описание слайда:
Переменные Имена переменных должны начинаться с заглавной буквы или символа подчеркивания и содержать только символы букв, цифр и подчеркивания. Примеры переменных: X, Переменная, _3, _переменная.

Слайд 28





Структуры
Структура считается более сложной единицей. Она состоит из предиката и аргументов. Аргументы разделяются запятыми и заключаются в круглые скобки.
Например, структура
likes(john, bird).
определяет, что Джон любит птиц. Предикатом здесь служит likes, а двумя аргументами – john и bird. Аргументами предиката могут быть константы, переменные и другие структуры.
Описание слайда:
Структуры Структура считается более сложной единицей. Она состоит из предиката и аргументов. Аргументы разделяются запятыми и заключаются в круглые скобки. Например, структура likes(john, bird). определяет, что Джон любит птиц. Предикатом здесь служит likes, а двумя аргументами – john и bird. Аргументами предиката могут быть константы, переменные и другие структуры.

Слайд 29





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

Слайд 30





Арифметические операции
Описание слайда:
Арифметические операции

Слайд 31





Операции отношения
Описание слайда:
Операции отношения

Слайд 32





Функции
Описание слайда:
Функции

Слайд 33





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

Слайд 34





Процедура отсечения
Пусть в программе задана база данных: 
	man (ivan).
	man (petr).
	woman (svetlana).
	woman (varvara).
Описание слайда:
Процедура отсечения Пусть в программе задана база данных: man (ivan). man (petr). woman (svetlana). woman (varvara).

Слайд 35





Структура программы Турбо Пролога
Программа на Турбо Прологе состоит из следующих разделов:
CONSTANTS – раздел описания констант; 
DOMAINS – раздел описания доменов; 
DATABASE – раздел описания предикатов внутренней базы данных; 
PREDICATES – раздел описания предикатов; 
CLAUSES – раздел описания предложений; 
GOAL – раздел описания внутренней цели.
Описание слайда:
Структура программы Турбо Пролога Программа на Турбо Прологе состоит из следующих разделов: CONSTANTS – раздел описания констант; DOMAINS – раздел описания доменов; DATABASE – раздел описания предикатов внутренней базы данных; PREDICATES – раздел описания предикатов; CLAUSES – раздел описания предложений; GOAL – раздел описания внутренней цели.

Слайд 36





Раздел описания констант
Имя константы может состоять из английских букв, цифр и знака подчеркивания, причем не может начинаться с цифры. 
Каждое определение константы должно размещаться в отдельной строке.
CONSTANTS
const1 = значение 1
const2 = значение 2
Описание слайда:
Раздел описания констант Имя константы может состоять из английских букв, цифр и знака подчеркивания, причем не может начинаться с цифры. Каждое определение константы должно размещаться в отдельной строке. CONSTANTS const1 = значение 1 const2 = значение 2

Слайд 37





Раздел описания доменов
Существуют следующие типы доменов: 
целые – integer из промежутка (- 32768...32767);
вещественные – real (лежащее между ±1e-307...±1e308);
символьные – char (один символ, заключенный в одиночные апострофы);
строковые – string (последовательность символов, заключенная в двойные кавычки);
символические – symbol (последовательность букв латинского алфавита, цифр и знаков подчеркивания начинающихся со строчной буквы, или последовательность любых символов, заключенная в кавычки);
файловые – file.
Описание слайда:
Раздел описания доменов Существуют следующие типы доменов: целые – integer из промежутка (- 32768...32767); вещественные – real (лежащее между ±1e-307...±1e308); символьные – char (один символ, заключенный в одиночные апострофы); строковые – string (последовательность символов, заключенная в двойные кавычки); символические – symbol (последовательность букв латинского алфавита, цифр и знаков подчеркивания начинающихся со строчной буквы, или последовательность любых символов, заключенная в кавычки); файловые – file.

Слайд 38





Раздел описания доменов
Объявление домена имеет следующий вид:
<имя домена>=<определение домена>
Списковый домен задается следующим образом:
	<имя спискового домена>=<имя домена элементов списка>*
Например, список целых чисел описывается так:
	list_of_integer=integer*
Описание слайда:
Раздел описания доменов Объявление домена имеет следующий вид: <имя домена>=<определение домена> Списковый домен задается следующим образом: <имя спискового домена>=<имя домена элементов списка>* Например, список целых чисел описывается так: list_of_integer=integer*

Слайд 39





Раздел описания предикатов внутренней базы данных
описываются те предикаты, которые можно в процессе выполнения программы добавлять во внутреннюю базу данных или удалять оттуда.
DATABASE
	pred1(....).
	pred2(.....).
Описание слайда:
Раздел описания предикатов внутренней базы данных описываются те предикаты, которые можно в процессе выполнения программы добавлять во внутреннюю базу данных или удалять оттуда. DATABASE pred1(....). pred2(.....).

Слайд 40





Раздел описания предикатов
Описание предиката имеет следующий вид:
	<имя предиката> (<имя домена первого
                                  аргумента>,...<имя доме-
                                  на n-го аргумента>).
	PREDICATES
		mother(string,string).
Описание слайда:
Раздел описания предикатов Описание предиката имеет следующий вид: <имя предиката> (<имя домена первого аргумента>,...<имя доме- на n-го аргумента>). PREDICATES mother(string,string).

Слайд 41





Раздел описания предложений

CLAUSES
p(....):-p1(...), p2(.....), ... .
p(....):-p1(...), p2(.....), ... .
Описание слайда:
Раздел описания предложений CLAUSES p(....):-p1(...), p2(.....), ... . p(....):-p1(...), p2(.....), ... .

Слайд 42





Раздел описания внутренней цели
GOAL 
Если этот раздел отсутствует, то после запуска программы Пролог-система выдает приглашение вводить вопросы в диалоговом режиме (внешняя цель).
Описание слайда:
Раздел описания внутренней цели GOAL Если этот раздел отсутствует, то после запуска программы Пролог-система выдает приглашение вводить вопросы в диалоговом режиме (внешняя цель).

Слайд 43





Структура программы на языке Пролог
	domains
		… операторы доменов…
	predicates
		… операторы предикатов…
	clauses
		… факты и правила…
	goal
		… цель…
Описание слайда:
Структура программы на языке Пролог domains … операторы доменов… predicates … операторы предикатов… clauses … факты и правила… goal … цель…



Похожие презентации
Mypresentation.ru
Загрузить презентацию