Использование составных объектов
Объекты утверждений представляют собой данные. Тип простых данных ограничен 6-ю стандартными типами.
любит (петр, музыка)
Оба объекта петр, музыка имеют простую структуру, они представляют самих себя. Любой объект представляющий сам себя называетяс простым объектом. Структура, состоящая из простых объектов, называетяс простой. Объект, представляющий другой объект или совокупность объектов, называется составным объектом, а использующая такие объекты структура, называетяс составной структурой.
Пример:
любит (том, яблоки, апельсины, бананы).
Все 3 вида фруктов можно объединить в одной структуре:
фрукты (яблоки, апельсины, бананы).
В результате появится составной объект, который поясняет отношение:
любит (том, фрукты (яблоки, апельсины, бананы)).
Функтор составного объекта фрукты является предметом, хотя он и выставлен внутри другого предиката. Главным функтором здесь является предикат любит.
domains
любимые_фрукты = фрукты (тип1, тип2, тип3)
имя, тип1, тип2, тип3 = symbol
predicates
любит (имя, любимые_фрукты)
Это одноуровневый составной объект.