Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Логические переменные, подстановки и примеры





Логические переменные служат для обозначения неопределенных объектов и соответственно этому используются. Рассмотрим их применение в вопросах. Предположим, мы хотим выяснить, чьим отцом был авраам. Для этого можно задавать вопросы: отец (авраам, лот)?, отец (авраам, милка)?..., отец (авраам, исаак)?,... до тех пор, пока не будет получен ответ да. С помощью переменной реализуется более удобный способ поиска ответа. Вопрос формулируется в виде отец (авраам, X)?. Ответом на вопрос является Х = исаак. Переменные в данном случае служит для представления совокупности вопросов. Как будет объяснено в дальнейшем, с помощью вопроса, содержащего переменную, выясняется, имеется ли такое значение переменной, при котором вопрос будет логическим следствием программы.

Использование переменных в логических программах отличается от использования переменных в традиционных языках программирования. В логических программах переменная обозначает неопределенный, но единственный объект, а не некоторую область памяти.

Введя переменные, мы можем определить единственную структуру данных в логических программах – термы. Определение термов индуктивно. Константы и переменные являются термами. Кроме того, термами являются составные термы, или структуры. Составной терм содержит функтор (называемый главным функтором терма) и последовательность из одного или более аргументов, являющихся термами. Функтор задается своим именем, которое суть атом, и своей арностью, или числом аргументов. Синтаксически составные термы имеют вид f(t,t,…t),где f – имя n-арного функтора, а t– аргументы. Примеры составных термов: s(0), горячий (молоко), имя (джон, доу), list(a, list (b, nil)), foo(X) и tree(tree(nil,3,nil), 5,R).

Вопросы, цели и вообще термы, в которые не входят переменные, называются основными. Термы, содержащие переменные, называются неосновными. Так, foo (a,b) – основной терм, a bar(X) – нет.

Определение. Подстановкой называется конечное (возможно, пустое) множество пар вида X= tгде X– переменная и tтерм; X¹ X, при i ¹ j и Xне входит в tпри любых i и j. •



Примером подстановки, состоящей из одной пары, может служить {X = исаак}. Подстановки могут применяться к термам. Результат применения подстановки Q к терму А, обозначается АQ, есть терм, полученный заменой каждого вхождения переменной Х в А на t для каждой пары вида Х = t из Q.

Результат применения {X = исаак} к терму отец (авраам, X) есть терм отец(авраам, исаак).

Определение: А называется примером В, если найдется такая подстановка Q, что А = BQ. •

По определению цель отец (авраам, исаак) является примером терма отец (авраам, X). Аналогично мать( сара, исаак) – пример терма мать (X, Y) при подстановке {X = сара, Y= исаак}.





Дата добавления: 2014-01-07; Просмотров: 446; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



ПОИСК ПО САЙТУ:


Рекомендуемые страницы:

Читайте также:
studopedia.su - Студопедия (2013 - 2021) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление
Генерация страницы за: 0.002 сек.