Лекция 8

Дедуктивные БД и их использование в ЭС.

Язык любого исчисления, используемого для формальной постановки задачи запроса и дедуктивного вывода для получения ответа на запрос, обычно называют Datalog , а описание на нем Дейталог-программой. Часть Дейталог-программы, не содержащую фактов, называют Дейталог-правилами.

Множество всех атомов Дейталог-программы, являющихся фактами, называют экстенсионалом. Множество всех остальных конкретизированных атомов, выводимых с помощью Дейталог-программы, называют интенсионалом.

Существуют 2 уровня использования языков представления данных:

•  Верхний уровень, включающий в себя различные языки, используемые для формальной постановки задачи запроса.

•  Нижний уровень, реализующий представление данных в виде таблиц.

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

Важная часть – разработка перехода от Дейталог-исчисления к языку представления данных, например, SQL .

Пример.

Заказ (товар) Поставка (товар)

 

Заказ (компьютер) заказ (периферия) заказ (офисное оборудование) своевременная оплата (товар) заказ (товар)

На языке SQL :

Таблицы

Данные

Выборка

USE expert

SELECT client.name, tovar.name, idzakaz, tovar.idtovar, kolpost, summapost

FROM zakaz

INNER JOIN tovar ON zakaz.idtovar = tovar.idtovar

INNER JOIN client ON zakaz.idclient = client.idclient

WHERE priznakpost = 0

Результат

client2 computer1 1 1 1 800.0000
client2 printer1 1 4 1 100.0000
client1 phone2 2 6 10 200.0000