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

Нажмите для полного просмотра!
Логическое программирование, слайд №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

Содержание

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

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


Слайд 1





Факультет Прикладной математики и физики
Факультет Прикладной математики и физики
Кафедра Вычислительной математики и программирования
Московский авиационный институт (государственный технический университет)
Описание слайда:
Факультет Прикладной математики и физики Факультет Прикладной математики и физики Кафедра Вычислительной математики и программирования Московский авиационный институт (государственный технический университет)

Слайд 2





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

Слайд 3





speciality(X,tech_translator) :- 		studied_languages(X),studied_technical(X).
speciality(X,tech_translator) :- 		studied_languages(X),studied_technical(X).
speciality(X,programmer) :- 
	studied(X,mathematics),studied(X, compscience).
speciality(X,lit_translator) :- studied_languages(X),studied(X,literature).

studied_technical(X) :- studied(X,mathematics).
studied_technical(X) :- studied(X,compscience).
studied_languages(X) :- studied(X,english).
studied_languages(X) :- studied(X,german).	

studied(petya,mathematics).	studied(vasya,german).	
studied(petya,compscience).	studied(vasya,literature).
studied(petya,english).
Описание слайда:
speciality(X,tech_translator) :- studied_languages(X),studied_technical(X). speciality(X,tech_translator) :- studied_languages(X),studied_technical(X). speciality(X,programmer) :- studied(X,mathematics),studied(X, compscience). speciality(X,lit_translator) :- studied_languages(X),studied(X,literature). studied_technical(X) :- studied(X,mathematics). studied_technical(X) :- studied(X,compscience). studied_languages(X) :- studied(X,english). studied_languages(X) :- studied(X,german). studied(petya,mathematics). studied(vasya,german). studied(petya,compscience). studied(vasya,literature). studied(petya,english).

Слайд 4





Алфавит = ASCII
Алфавит = ASCII
Описание слайда:
Алфавит = ASCII Алфавит = ASCII

Слайд 5





Константы, соответствующие объектам предметной области
Константы, соответствующие объектам предметной области
Во всей программе одинаковые атомы соответствуют одному и тому же объекту
Синтаксис:
Слово со строчной буквы 		petya
Последовательность спецсимволов	<=
Символы в кавычках		‘Petya Ivanov’
Описание слайда:
Константы, соответствующие объектам предметной области Константы, соответствующие объектам предметной области Во всей программе одинаковые атомы соответствуют одному и тому же объекту Синтаксис: Слово со строчной буквы petya Последовательность спецсимволов <= Символы в кавычках ‘Petya Ivanov’

Слайд 6





Синтаксис:
Синтаксис:
Начинаются с заглавной буквы или _
_ - анонимная переменная
Область действия – одно правило
Две переменные с одним и тем же именем в разных правилах – разные
_ - означает все время разные переменные
Описание слайда:
Синтаксис: Синтаксис: Начинаются с заглавной буквы или _ _ - анонимная переменная Область действия – одно правило Две переменные с одним и тем же именем в разных правилах – разные _ - означает все время разные переменные

Слайд 7





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

Слайд 8





В каждый момент времени переменная может быть свободной или связанной
В каждый момент времени переменная может быть свободной или связанной
Переменная связывается в процессе унификации
Повторная унификация не изменяет значения переменной
Переменная может изменить значение (перестать быть связанной) в процессе возврата (backtracking)
Описание слайда:
В каждый момент времени переменная может быть свободной или связанной В каждый момент времени переменная может быть свободной или связанной Переменная связывается в процессе унификации Повторная унификация не изменяет значения переменной Переменная может изменить значение (перестать быть связанной) в процессе возврата (backtracking)

Слайд 9





функтор(терм_1,...,терм_n)
функтор(терм_1,...,терм_n)
функтор/n – арность=n
Описание слайда:
функтор(терм_1,...,терм_n) функтор(терм_1,...,терм_n) функтор/n – арность=n

Слайд 10





Унификация в Прологе
Унификация в Прологе
Явная 		f(X,a) = f(b,Y)
Неявная в процессе поиска правил
pred(f(X,a)) :- …   <=>    f(Z) :- Z=f(X,A), …
Правила унификации
Константа унифицируется с такой же константой, разные константы не унифицируются
Свободная переменная унифицируется с чем угодно и связывается
Связанная переменная унифицируется как значение, с которым она связана
Структурные термы унифицируются, если
У них одинаковый функтор и арность
Все аргументы попарно унифицируются
Описание слайда:
Унификация в Прологе Унификация в Прологе Явная f(X,a) = f(b,Y) Неявная в процессе поиска правил pred(f(X,a)) :- … <=> f(Z) :- Z=f(X,A), … Правила унификации Константа унифицируется с такой же константой, разные константы не унифицируются Свободная переменная унифицируется с чем угодно и связывается Связанная переменная унифицируется как значение, с которым она связана Структурные термы унифицируются, если У них одинаковый функтор и арность Все аргументы попарно унифицируются

Слайд 11


Логическое программирование, слайд №11
Описание слайда:

Слайд 12





С помощью структурных термов можно записывать арифметические выражения
С помощью структурных термов можно записывать арифметические выражения
Описание слайда:
С помощью структурных термов можно записывать арифметические выражения С помощью структурных термов можно записывать арифметические выражения

Слайд 13





Арность
Арность
одноместный	not x
двухместный	x + y
Позициональность
инфиксный		x + y
префиксный		not x
постфиксный		x!
Ассоциативность
Левоассоциативный	x◊y◊z = (x◊y)◊z
Правоассоциативный	 x◊y◊z = x◊(y◊z)
Приоритет
1+2*3 = 1+(2*3)
Описание слайда:
Арность Арность одноместный not x двухместный x + y Позициональность инфиксный x + y префиксный not x постфиксный x! Ассоциативность Левоассоциативный x◊y◊z = (x◊y)◊z Правоассоциативный x◊y◊z = x◊(y◊z) Приоритет 1+2*3 = 1+(2*3)

Слайд 14


Логическое программирование, слайд №14
Описание слайда:

Слайд 15


Логическое программирование, слайд №15
Описание слайда:

Слайд 16


Логическое программирование, слайд №16
Описание слайда:

Слайд 17


Логическое программирование, слайд №17
Описание слайда:

Слайд 18





Приоритет – от 1 (высший) до 255 (низший)
Приоритет – от 1 (высший) до 255 (низший)
Оператор – послед.спецсимволов или функтор
Шаблон – задает арность, позициональность и ассоциативность
Описание слайда:
Приоритет – от 1 (высший) до 255 (низший) Приоритет – от 1 (высший) до 255 (низший) Оператор – послед.спецсимволов или функтор Шаблон – задает арность, позициональность и ассоциативность

Слайд 19





Таким образом, мы определили Domain-Specific Language (DSL) для задания конфигурации цепи резисторов и операцию вычисления сопротивления.
Таким образом, мы определили Domain-Specific Language (DSL) для задания конфигурации цепи резисторов и операцию вычисления сопротивления.
Описание слайда:
Таким образом, мы определили Domain-Specific Language (DSL) для задания конфигурации цепи резисторов и операцию вычисления сопротивления. Таким образом, мы определили Domain-Specific Language (DSL) для задания конфигурации цепи резисторов и операцию вычисления сопротивления.

Слайд 20





true – всегда завершается успешно
true – всегда завершается успешно
fail – всегда завершается неуспешно
Описание слайда:
true – всегда завершается успешно true – всегда завершается успешно fail – всегда завершается неуспешно

Слайд 21


Логическое программирование, слайд №21
Описание слайда:

Слайд 22





Разрабатывается университетом Мельбурна
Разрабатывается университетом Мельбурна
http://www.cs.mu.oz.au/research/mercury/
Функционально-логический язык программирования
Строгая типизация
Компилятор
UNIX-платформы, .NET, C
Если программа компилируется, она скорее всего будет работать правильно!
Описание слайда:
Разрабатывается университетом Мельбурна Разрабатывается университетом Мельбурна http://www.cs.mu.oz.au/research/mercury/ Функционально-логический язык программирования Строгая типизация Компилятор UNIX-платформы, .NET, C Если программа компилируется, она скорее всего будет работать правильно!

Слайд 23


Логическое программирование, слайд №23
Описание слайда:

Слайд 24


Логическое программирование, слайд №24
Описание слайда:

Слайд 25





Предикаты могут допускать различные конкретизации входные переменных
Предикаты могут допускать различные конкретизации входные переменных
speciality(in,out), speciality(out,in), speciality(in,in), speciality(out,out)
resistance(in,out), resistance(in,in)
Некоторые режимы являются частным случаем других
Основные режимы определяют процесс доказательства
Несколько вариантов детерминизма в каждом из режимов:
det – ровно одно решение (fact, …)
nondet – 0 и более решений (speciality(in,out),…)
multi – 1 и более решений (speciality(out,out),…)
…
Mercury проверяет соответствие определения предиката и его режима и детерминизма
Описание слайда:
Предикаты могут допускать различные конкретизации входные переменных Предикаты могут допускать различные конкретизации входные переменных speciality(in,out), speciality(out,in), speciality(in,in), speciality(out,out) resistance(in,out), resistance(in,in) Некоторые режимы являются частным случаем других Основные режимы определяют процесс доказательства Несколько вариантов детерминизма в каждом из режимов: det – ровно одно решение (fact, …) nondet – 0 и более решений (speciality(in,out),…) multi – 1 и более решений (speciality(out,out),…) … Mercury проверяет соответствие определения предиката и его режима и детерминизма

Слайд 26


Логическое программирование, слайд №26
Описание слайда:

Слайд 27


Логическое программирование, слайд №27
Описание слайда:

Слайд 28


Логическое программирование, слайд №28
Описание слайда:

Слайд 29


Логическое программирование, слайд №29
Описание слайда:

Слайд 30


Логическое программирование, слайд №30
Описание слайда:

Слайд 31





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



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