значений кортежей (при этом может быть получена бесконечная
последовательность кортежей, что недопустимо).
2) Реляционное исчисление доменов (Лакруа и Пиро).
В реляционном исчислении доменов используются переменные, значения
которых берутся из доменов (а не из кортежей отношений). Если P(a1 : d1, a2 :
d2, …, an : dn) – предикат с переменными домена d1, d2, …, dn (определенными
на атрибутах a1, a2, …, an соответственно), то множество переменных домена,
для которых предикат истинен:
{d1, d2, …, dn | P(a1 : d1, a2 : d2, …, an : dn)}.
Задача реляционного исчисления доменов – проверить условие
принадлежности, чтобы определить, принадлежат ли значения указанному
отношению (например, выражение R(x : rx, y : “y1”) считается истинным тогда
и только тогда, когда в отношении R имеется кортеж со значениями rx
(переменная домена – содержит текущее значение атрибута) и “y1”(литерал -
константа) в его атрибутах x и y соответственно.
Например, есть отношение SN(S#, NAME, RATING) – данные о студенте:
{N | R (SN (NAME : N, RATING : R)
∃
R > 7.8)} – получить значения
всех студентов с рейтингом больше 7,8 (проверка существует ли кортеж с
атрибутами NAME (переменная N) и RATING (переменная R) в отношении SN,
причем значение атрибута RATING в этом кортеже > 7,8).
Если формулы безопасны, то реляционное исчисление доменов
семантически эквивалентно реляционному исчислению кортежей.
4.3.3.3.3. Связь реляционного исчисления и реляционной алгебры
Существует алгоритм («алгоритм редукции Кодда»), с помощью которого
выражение реляционного исчисления (кортежей) можно преобразовать в
семантически эквивалентное выражение реляционной алгебры (т.е.
79