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

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

Обработка списков и строк символов






 

Список в Прологе представляется множеством элементов, разделенных запятой и ограниченных квадратными скобками. Пример:

X=[a, b, c, d].

Для разделения списка на части используется предикат " ½ ". Он делит список на " голову" и " хвост" (подсписок, являющийся исходным списком без элементов головы). Так, если 1) X=[a, b, c, d] и X=[Y ½ Z], то, например, Y=a (здесь в качестве головы берется только первый элемент исходного списка), Z=[b, c, d]; 2) X=[a] и X=[Y ½ Z], то Y=a, Z=[ ] - пустой подсписок.

Принадлежность элемента списку. Принадлежность элемента X списку Y записывается в виде предиката принадлежит(X, Y). Для определения истинности этого предиката вначале проверяется идентичность X и первого элемента списка Y. Если они совпадают, то можно записать: принадлежит (X, [X ½ _ ]), где " _" -анонимная переменная, соответствующая остальной части списка Y завычетом его первого элемента, равного X. Если идентичности X и первого элемента списка Y нет, просматривается хвост “_” списка Y на предмет наличия в нем X, что оформляется как принадлежит (X, [_ ½ Z]), где “_” – уже первый элемент списка Y, а Z – остальная его часть-хвост. Поскольку анализ хвоста проводится вначале тоже путем проверки идентичности X и первого элемента подсписка Z, то можно записать правило: принадлежит (X, [_ ½ Z]): - принадлежит (X, Z). Ясно, что программа приходит к решению первоначальной задачи: принадлежит(X, [X ½ _ ]), где “_” – соответствует списку Z завычетом его первого элемента. Программа работы оказывается рекурсивной:

10 принадлежит(X, [X ½ _ ]).

20 принадлежит (X, [_ ½ Z]): -

принадлежит (X, Z).

Пример. Имеется запрос: принадлежит(седло, [руль, рама, колесо, седло]). Процедура поиска решения имеет следующий порядок.

Первый цикл. Унификация начального состояния стека вопросов

выводится с помощью правила R, то в сети имеется дуга, которая соединяет вершины G и R от G к R. Пример сети вывода с правилами П1-П3 показан на рис 9.1:

 
П1: Если ТВ & РВ то ОС,

П2: Если ТВ Ú РВ то ОС,

П3: Если ТБ Ú АШ то РВ.

 

 
 

 

 


 

 


 

Рис. 9.1. Сеть вывода

 

При решении конкретной задачи (режим консультации) с помощью сети делается попытка найти в сети вывода путь от вершин, представляющих исходные данные (например, наличие тяжелой формы бронхиальной астмы в сочетании с высокой травматичностью) к вершине выбранной цели (предполагаемая необходимость общего обезболивания). Если такое возможно, цель считается достигнутой (в нашем случае допустимые связи в сети через правила П1 и П3 имеются, цель разрешена).

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







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



Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Типовые ситуационные задачи. Задача 1. Больной К., 38 лет, шахтер по профессии, во время планового медицинского осмотра предъявил жалобы на появление одышки при значительной физической   Задача 1. Больной К., 38 лет, шахтер по профессии, во время планового медицинского осмотра предъявил жалобы на появление одышки при значительной физической нагрузке. Из медицинской книжки установлено, что он страдает врожденным пороком сердца....

Типовые ситуационные задачи. Задача 1.У больного А., 20 лет, с детства отмечается повышенное АД, уровень которого в настоящее время составляет 180-200/110-120 мм рт Задача 1.У больного А., 20 лет, с детства отмечается повышенное АД, уровень которого в настоящее время составляет 180-200/110-120 мм рт. ст. Влияние психоэмоциональных факторов отсутствует. Колебаний АД практически нет. Головной боли нет. Нормализовать...

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

Решение Постоянные издержки (FC) не зависят от изменения объёма производства, существуют постоянно...

ТРАНСПОРТНАЯ ИММОБИЛИЗАЦИЯ   Под транспортной иммобилизацией понимают мероприятия, направленные на обеспечение покоя в поврежденном участке тела и близлежащих к нему суставах на период перевозки пострадавшего в лечебное учреждение...

Кишечный шов (Ламбера, Альберта, Шмидена, Матешука) Кишечный шов– это способ соединения кишечной стенки. В основе кишечного шва лежит принцип футлярного строения кишечной стенки...

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