Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Поиск решений





 

Пример: 1) likes (mary, аpples) – факт,

2) likes (beth, X):– likes (mary, Х) – правило.

Введем цель:

likes (beth, аpples)? – любит ли Бет яблоки? X= аpples

совпали подцель

Цель сопоставляется с фактом 1 пословно: терм предиката цели likes совпадает с термом факта 1. Т.е. сопоставление начинается слева направо до тех пор, пока очередное сопоставление окажется неуспешным. beth не совпадает c mary и поэтому дальше уже не проверяется. Пролог ищет следующую точку входа и находит правило 2. Если факт совпадает с левой частью правила – головой, то он пытается выполнить часть правила справа (тело). likes и beth совпали у обоих, но apples и Х не сопоставимы. Однако Х – это переменная, следовательно, она может быть сопоставлена с любым значением. Т.е. Х присваивается значение apples. Это связывание используется до тех пор, пока либо не будет вычислена цель, либо нельзя будет выполнить никакого другого сопоставления с учетом этого связывания. Следовательно, предикат likes(beth, X) имеет значение likes(beth, apples). Теперь пытаемся выполнить условие if likes(mary, X) и проверяем факт likes(mary, apples) как подцель. Снова сначала просматривается база и находится факт likes(mary, apples). Так как тело совпало, то цель достигнута, и решение есть X=apples и является истиной. Как цели, так и правила могут быть связаны с помощью союзов и (,) и или(;).

Число аргументов в предикате называется арностью. Если в предикате нет аргументов, то арность равна нулю. Совпадение проверяется на имя аргумента (likes – пример), на число аргументов (арность), на тип аргументов, на совпадение значений (слева направо)

При сравнении аpples, Х происходит процесс связывания: Х=аpples, так как переменная может принимать любое значение. Из этого следует, что цель совпала с головой. При появлении подцели начинается проверка заново.

Ответ задачи: X=аpples.

В теле правила может быть несколько подцелей, подцели обрабатываются последовательно слева направо. Если одна из подцелей несопоставима, то и вся цель является неуспешной. Сопоставление и поиск решений выполняются внутренними унификационными процедурами. Они выполняют сопоставление целей и подцелей с фактами и головами правил, чтобы доказать эти цели или подцели, а также определяют, сгенерированы ли новые подцели правой части. При сопоставлении с правилами, где имеется переменные Х, переменные сначала не имеют значения, т.е. они не означены, не идентифицированы, свободные. Когда переменная сопоставляется с объектом (apples), она связывается. Внешние цели заставляют программу выдать все решения, удовлетворяющие цели, а внутренние цели заставляют программу остановиться после первого успешного сопоставления целей. Таким образом, переменная освобождается после неуспешного сопоставления или при успешном достижении цели, и ее значения не являются одновременными.

Для присваивания значения переменным используется оператор (=), который практикуется двояко: как присваивание или как сравнение в зависимости от того является ли значение объектов свободными или означенными.

Пример:

1) аpples=аpples – это сравнение. Равенство истинно, цель достигнута.

2) аpples=oranges – это тоже сравнение. Равенство ложно, цель недостигнута

3) X=аpples, если Х не означено, то это присвоение, в противном случае это сравнение.

Если оба значения известны, то трактуется как сравнение, даже если оба объекты являются переменными: х=у

Если известно одно значение, то оно присваивается второму, независимо от того где оно стоит: аpples=X.

 







Дата добавления: 2015-10-19; просмотров: 449. Нарушение авторских прав; Мы поможем в написании вашей работы!




Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Прием и регистрация больных Пути госпитализации больных в стационар могут быть различны. В цен­тральное приемное отделение больные могут быть доставлены: 1) машиной скорой медицинской помощи в случае возникновения остро­го или обострения хронического заболевания...

ПУНКЦИЯ И КАТЕТЕРИЗАЦИЯ ПОДКЛЮЧИЧНОЙ ВЕНЫ   Пункцию и катетеризацию подключичной вены обычно производит хирург или анестезиолог, иногда — специально обученный терапевт...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...

Разработка товарной и ценовой стратегии фирмы на российском рынке хлебопродуктов В начале 1994 г. английская фирма МОНО совместно с бельгийской ПЮРАТОС приняла решение о начале совместного проекта на российском рынке. Эти фирмы ведут деятельность в сопредельных сферах производства хлебопродуктов. МОНО – крупнейший в Великобритании...

ОПРЕДЕЛЕНИЕ ЦЕНТРА ТЯЖЕСТИ ПЛОСКОЙ ФИГУРЫ Сила, с которой тело притягивается к Земле, называется силой тяжести...

Studopedia.info - Студопедия - 2014-2025 год . (0.009 сек.) русская версия | украинская версия