Представление знаний в интеллектуальных системах

Методическое пособие - Компьютеры, программирование

Другие методички по предмету Компьютеры, программирование

a одновременно и для точек двумерного и для точек трехмерного пространств и написать, например, так

tochka (X1, Y1) и tochka (X, Y, Z)

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

1)именем, синтаксис которого совпадает с синтаксисом атомов;

2)арностью - т.е. числом аргументов.

Все структурные объекты в Прологе - это деревья, представленные в программе термами. Рассмотрим еще два примера, чтобы понять насколько удобно сложные объекты данных представляются с помощью прологовских термов. На рис. 9 показано древовидная структура, соответствующая арифметическому выражению (а+в)*(с-5)

 

 

Этот, совершенно правильный прологовский терм, конечно не соответствует той форме, которую нам хотелось бы иметь при записи арифметических выражений. Хотелось бы применять обычную инфиксную запись принятую в математике.

29.Решетки типов, иерархия типов. Определение типа посредством рода и различия

 

Пусть t1 и t2 - метки типов, если t1 t2, то t1 - подтип типа t2, а t2 - надтип типа t1. Типы профессор и студент имеют много общих надтипов: работник умственного труда, человек, высшее млекопитающее. В графе работник умственного труда - наименьший общий надтип для профессора и студента. Типы профессор и сотрудник университета имеют общий подтип профессор университета. В графе профессор и студент не имеют общего подтипа.

Для преобразования иерархической формы в решётку надо ввести две особые метки соответственно в высшей и низшей точках иерархии - универсальный тип U (надтип всех типов) и абсурдный тип А (подтип всех типов). Иерархия типов даст решётку типов со всеми свойствами решётки:

любая пара меток t1 и t2 имеет наименьший общий надтип,

любая пара меток t1 и t2 имеет наибольший общий подтип,

для любого типа t выполняется соотношение А t U.

Данное отношение порядка представляется функциональным отношением Это. Конкр означает принадлежность индивида типу.

Решётки множеств и решётки типов

Можно также ввести отношение порядка для множеств (подмножество множества) с помощью предиката Подмн или связывающего узла с тем же именем. При одноэлементном подмножестве Подмн заменяется на Элем. Иерархия типов позволила упорядоченно классифицировать свойства типов, а иерархия множеств - свойства множеств. Следующий рисунок иллюстрирует различие составных частей двух иерархий. Введём на концептуальных графах (в духе классики) несколько функций и операторов, действующих над множеством типов. Прежде всего - функция тип. Она отображает множество концептов на множество Т, элементы которого называются метками (ярлыками) типа. Концепты с1 и с2 имеют один общий тип, если тип(с1) = тип(с2). Денотатом типа t называется множество всех тех сущностей, которые являются конкретизациями некоторого концепта типа t. Оператор, сопоставляющий типу t его денотат, обозначается через Денот. Тип профессор_университета есть подтип типа профессор. Следовательно, денотат Денот(профессор_университета) является подмножеством Денот(профессор).

 

 

Каждой конкретизации (например, Жак_2) сопоставимо два вида узлов: узел описания типа конкретизации и узел описания множества, которому принадлежит эта конкретизация. Таким образом, имеем три вида узлов: узел, представляющий индивида (конкретизацию), который через промежуточные связывающие узлы соединён с узлами типа (Конкр) и множества (Элем). Естественно ввести четвёртый вид: {x| тип} - для произвольного индивида {х} определённого типа (тип).

Профессор х (о котором больше ничего не известно) обозначен {х| проф}. Этот узел соединен с узлом, представляющим множество профессоров, через связывающий узел Элем. С другой стороны, он соединён с узлом, представляющим тип профессора, через связывающий узел Абст. Оператор Абст определяет тип (абстрактный концепт) по описанию какого-либо элемента этого типа. Наконец, можно определить оператор прототип_для, который можно считать приблизительно обратным оператору Абст. Оператор прототип_для (Протот) представляется связывающим узлом, который соединяет тип с описанием этого типа, даваемым прототипом. Последний позволяет сжато описать мир, разделённый по типам объектов. Описание, даваемое прототипом, можно рассматривать как описание некоторого типичного представителя множества. Следовательно, прототип - разновидность мифической константы. Узел прототипа отличается от узла {x| тип}, который доставляет множество общих свойств объектов одного типа или одного множества. В этом смысле операторы Абст и Протот не являются взаимно обратными.

С абстрактным концептом профессора университета связано свойство обладания докторской степенью. С другой стороны, вполне вероятно, что каждый индивид из множества профессоров университета имеет докторскую степень. Следовательно, соответствующие иерархии типов и множеств, приведённые на этом рисунке изоморфны (каждому элементу одной системы соответствует один элемент другой системы, а каждой операции в одной системе - операция в другой).

Определение типа посредством рода и различия.

Фраза Жак посылает книгу Мари. Соответствующа?/p>