Название: Базы знаний интеллектуальных систем - Гаврилова Т.А. Жанр: Информатика Рейтинг: Просмотров: 1257 |
спецификатор ::= терм-спецификатора {{ || терм-спецификатора || терм-спецификатора ::= первичное-спецификатора {{ && первичное-спецификатора }} первичное-спецификатора::= || || < || значение-первичн-спецификатора || II II <= II || II II == II II II II != || II II II >= I| II II II > II || || ( спецификатор ) I| значение-первичн-спецификатора ::= || значение || || ||пусто || || VAR-переменная || || || || one_fгоm || || GET-переменная || || II II all_from || ||
Знаки отношений имеют стандартную семантику для чисел и семантику сравнения ASCI-кодов для символов и строк. В тех случаях, когда значение в первич-ном-спецификатора является множеством, все знаки отношений имеют следующую интерпретацию: • < — строгое включение множества значений спецификатора во Множество значений слота; • <= — нестрогое включение множества значений спецификатораво множество значений слота; • = = — совпадение множества значений спецификатора с множеством значений слота; • != — несовпадение множества значений спецификатора с множеством значений слота; • >= — нестрогое покрытие множества значений спецификатора множеством значений слота; • > — строгое покрытие множества значений спецификатора множеством значений слота. Дополнительно к этому значение-первичного-спецификатора может быть VAR-или GET-переменной, которым предшествует префикс one_from (один из элементов в переменной должен быть использован); all_from (все элементы переменной должны быть использованы). Пустой префикс соответствует операции one_from. Возможности образцов лучше рассмотреть на примерах. Пусть в текущей базе имеются следующие фреймы, причем порядок их расположения в базе такой, как описано ниже:
[ F1 is_a prototype; [ F2 is_a F1; [ F3 is_a F1; S1 Int, by_default 8 ; S2 = "x" ]; S1=0]; 82 char];
Имеются также переменные $V1 (типа frame) и $V2 (типа char), которые до применения каждого из образцов содержат следующие значения:
$V1 = ╎F1 ╎F2 ╎F3 $V2 = ╎'a' ╎'b' ╎
Примеры образцов с их значениями и значениями переменных $V1 и $V2 после применения этих образцов к описанной базе представлены ниже.
N/N Образец Результат 1 ?[ F : S] false 2 ?[F1 : 82] true 3 ?[F2 : 81 {== 8}] true 4 ?[ >>$V1 = all_of *: S1{==8}] , true 5 ?[* : S2 {== <<$V2} ] true 6 ?[one_of $V1>> : S1{== one_from {1,0}} ] true 6a ?[one_of $V1>> : S1 {== all_from {1,0}} ] false 7 ?[$V1<<: S1{==8}; >$V2=S2] true 8 ?[* : *] true
Образцы 1 и 2 представляют собой запросы на наличие в базе соответствующих слотов-фреймов. Поскольку [F:S] в базе нет, a [F1:S2] — есть, значения образцов 1 и 2 соответственно false и true. Образец 3 более избирателен, он проверяет базу на наличие в ней фрейма F2 со слотом S1, имеющим значение 8. Такой фрейм в определенной нами базе имеется (вспомним, что фрейм-экземпляр наследует слоты своего прототипа), поэтому значение образца — true. Образец 4 ищет все (all_of) фреймы со слотами S1, равными 8, записывая при этом их имена в переменную $V1. Префикс этой переменной предписывает заносить в нее значения слева с сохранением. В образце 5 значение слота S2 берется из переменной $V2 (слева без сохранения), причем имя фрейма может быть любым (*). Но фрейм со слотом S2 = "а" в базе один (F2). Ключевое слово one_of в образце 6, явно указывающее на поиск только первого подходящего фрейма, — не обязательно, такая стратегия подразумевается по умолчанию. Для успешного сопоставления с этим образцом фрейм F3, имя которого взято справа без сохранения из переменной $V1, должен иметь слот S1, значением которого может быть одно из (one_from) чисел: 1 или 0. Условие соблюдается, и значение образца — true. Вместо one_from может быть указано all_from (образец 6а), в этом случае значением слота должно быть все множество {1,0}. Образец 7 показывает, что можно проверять значения нескольких слотов сразу. Семантика его следующая: найти первый фрейм со слотами S1 = 8 и S2; если такой фрейм будет найден, записать его имя в переменную $V1 справа, протолкнув верхушку стека справа, а значение слота S2 — в переменную SV2 слева, без сохранения значения в верхушке стека. С помощью образца 8 проверяется, есть ли вообще в текущей базе какие-нибудь фреймы. |
| Оглавление| |
- Акмеология
- Анатомия
- Аудит
- Банковское дело
- БЖД
- Бизнес
- Биология
- Бухгалтерский учет
- География
- Грамматика
- Делопроизводство
- Демография
- Естествознание
- Журналистика
- Иностранные языки
- Информатика
- История
- Коммуникация
- Конфликтология
- Криминалогия
- Культурология
- Лингвистика
- Литература
- Логика
- Маркетинг
- Медицина
- Менеджмент
- Метрология
- Педагогика
- Политология
- Право
- Промышленность
- Психология
- Реклама
- Религиоведение
- Социология
- Статистика
- Страхование
- Счетоводство
- Туризм
- Физика
- Филология
- Философия
- Финансы
- Химия
- Экология
- Экономика
- Эстетика
- Этика
Лучшие книги
Гражданский процесс: Вопросы и ответы
ЗАПАДНОЕВРОПЕЙСКОЕ ИСКУССТВО от ДЖОТТО до РЕМБРАНДТА
Коммуникации стратегического маркетинга
Консультации по английской грамматике: В помощь учителю иностранного языка.
Международные экономические отношения