Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Лекции по Prolog 
:(
    Опции темы
Guedda
Дата 5.11.2006, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 2
Всего: 78



Модератор: Все вопросы по лекциям оставлять здесь!

Это сообщение отредактировал(а) Guedda - 9.7.2007, 10:28


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Guedda
Дата 5.11.2006, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 2
Всего: 78



Декларативная и процедурная семантика программ.


    Как и любые другие языки, языки программирования обладают синтаксисом и семантикой. Синтаксис определяет, как записывать конструкции программы, а семантика - как интерпритировать те или иные конструкции, т.е. какой в них вкладывается смысл.
    В процедурном программировании семантика определяет, как должны производиться вычисления (оператор цикла, безусловный оператор, и т.д.). В логическом программировании каждое утверждение описывает случай, когда некоторое отношение истинно. Мы объявляем эти случаи, поэтому говорим о декларативном программировании.
    Однако в процедурном программировании имеются декларативные моменты и наоборот. 

Код

y = x + 1;

C одной стороны этот пример показывает, как по Х вычислить Y, а с другой, логической, стороны записано некое свойство, что
Цитата

Y > X на 1

Аналогично правило в прологе допускает две трактовки:
Пример.
Код

сын(X,Y) :- отец(Y,X), мужчина(X).
  • Декларативный смысл:
    Цитата

    Для любых X,Y, если Y является отцом X, и X является мужчиной, то X является сыном Y.
  • Процедурная трактовка:
    Цитата

    Для того, чтобы показать, что X является сыном Y, нужно показать, что Y является отцом X, и X - это мужчина.
    Язык Пролог строится на логическом программировании, поэтому он является декларативным языком. С другой стороны, в нём имеются процедурные моменты, связанные с конкретным способом вычислений.

Это сообщение отредактировал(а) Guedda - 22.11.2006, 19:38


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Guedda
Дата 13.11.2006, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 2
Всего: 78



Списки.


Списки являются основными элементами программирования на языке Prolog. 
Синтаксис: 
Элементы списка записываются в квадратных скобках через запятую:
Код

[a,b,c,d]
[a,b,c,[d]]


В последнем примере [d] - это тоже список, только с одним элементом. 
Элементами списка могут быть любые термы. Элементом может быть и пустой список. Все списки делятся на голову и хвост, где хвост - это последний элемент списка, а голова - все остальные элементы. Пустой список не делится на голову и хвост.


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
MissStone
Дата 18.11.2008, 02:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 18.11.2008

Репутация: нет
Всего: нет



это не по лекциям ли Рубанчика В.Б? smile 
PM MAIL   Вверх
Misha_White
Дата 19.2.2009, 17:55 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 25.4.2007
Где: Кодинск

Репутация: нет
Всего: 1



Цитата(Guedda @ 13.11.2006,  21:11)
Списки.

Все списки делятся на голову и хвост, где хвост - это последний элемент списка, а голова - все остальные элементы. Пустой список не делится на голову и хвост.

Неверно! Голова - это первый элемент списка, а хвост - все остальное... smile 
--------------------
Я не волшебник... я только учусь...  
PM MAIL ICQ Skype   Вверх
hkdkest
  Дата 5.6.2009, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 300
Регистрация: 30.11.2008

Репутация: нет
Всего: 1



думаю к лекциям не помешают исходники =)

Введение в Турбо Пролог
Предложения, факты и правила в Турбо Прологе
Структура программы в Турбо Прологе
Трансляция списков в Турбо Прологе
Файлы в Турбо Прологе и их обработка
Декларативная и процедурная семантика языка Пролог
Влияние порядка предложений и предикатов в них на достижение цели в Турбо Прологе
Особенности применения предикатов отсечения и отрицания в Турбо Прологе
Решение логических задач в Турбо Прологе. Задача об обезьяне.
Решение логических задач в Турбо Прологе. Задача о ханойсной башне.
Решение логических задач в Турбо Прологе. Задача о расследовании преступления
Базы данных и базы знаний в Турбо Прологе
Интерфейс на естественном языке в Турбо Прологе
Взаимодействие Турбо Пролога с файлами DBF-формата
Использование метода анализа ключевых слов при построении интерфейса с базой знаний в Турбо Прологе
Программа лексического анализа предложений в Турбо Прологе
Контекстно-свободный анализ предложений
Структура экспертных систем (Турбо Пролог)
Классификация экспертных систем (Турбо Пролог)
Экспертные системы, базирующиеся на правилах (Турбо Пролог)
Экспертные системы, базирующиеся на логике (Турбо Пролог)
Рекомендации по разработке экспертных систем (Турбо Пролог)
ПОСТРОЕНИЕ ЭКСПЕРТНЫХ СИСТЕМ НА ТУРБО ПРОЛОГЕ. Экспертная система, базирующаяся на правилах
ПОСТРОЕНИЕ ЭКСПЕРТНЫХ СИСТЕМ НА ТУРБО ПРОЛОГЕ. Экспертная система, базирующаяся на логике
ПОСТРОЕНИЕ ЭКСПЕРТНЫХ СИСТЕМ НА ТУРБО ПРОЛОГЕ. Экспертная система медицинской диагностики

PM MAIL WWW   Вверх
hkdkest
  Дата 19.6.2009, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 300
Регистрация: 30.11.2008

Репутация: нет
Всего: 1



PM MAIL WWW   Вверх
rrrFer
Дата 4.4.2013, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 208
Регистрация: 11.5.2008
Где: Красноярск

Репутация: нет
Всего: 1



Если к лекциям не мешают исходники, я тоже добавлю чуть чуть: 
Параллельные программы на Prolog [SWI Prolog]
Сортировка слиянием [Prolog]
Задачи на списки [Prolog]
Быстрая сортировка
Ввод данных в SWI Prolog
Циклы на прологе. Часть 2


Это сообщение отредактировал(а) rrrFer - 4.4.2013, 14:35
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума Prolog
Void
  • Пожалуйста, создавайте темы с содержательными названиями.
  • Уважаемые учащиеся, здесь всегда рады помочь Вам, но не делать за Вас вашу работу. У вас гораздо больше шансов получить помощь, если Вы приложите усилия и поделитесь с нами проблемами и результатами. В противном случае добро пожаловать в раздел Центр Помощи.
  • Получив ответ на интересующий Вас вопрос, не забудьте пометить его как решённый.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Prolog | Следующая тема »


 




[ Время генерации скрипта: 0.1507 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.