Теоретико-множественные операции

Как было сказано ранее, теоретико-множественные операции – это традиционные операции над множествами, определяемые теорией множеств; к ним относятся:

- объединение

- вычитание

- пересечение

- прямое (декартово) произведение

Но следует отметить, что реляционные операции имеют существенное отличие от классических, определенных в теории множеств.

Рассмотрим это отличие на примере операции объединения.

Операция объединения в теории множеств определяется следующим образом:

Определение

Даны два множества – S1 и S2. Объединением этих множеств является множество S, элементы которого принадлежат первому множеству S1 и/или второму множеству S2:

S = S1 È S2 = {s | s Î S1 и/или s Î S2}

Графически это можно представить так:

В РМД рассматривается объединение множеств – доменов и/или отношений.

1. Объединение доменов.

В РМД домен представляет собой множество элементов одного типа. Объединение доменов в РМД должно создать новый домен.

Пусть даны следующие домены:

D1 = {1, 3, 5, 7, 9}, D2 = {‘a’, ‘b’, ‘c’}, D3 = {2, 4, 6, 8}.

Тогда в теории множеств определено новое множество:

S = D1 È D2 = {1, 3, 5, 7, 9, ‘a’, ‘b’, ‘c’}

Но в РМД полученное множество не является доменом, так как содержит элементы разных типов. Следовательно, данная операция в РМД для указанных операндов не определена.

С другой стороны, новое множество:

D = D1 È D3 = {1, 3, 5, 7, 9, 2, 4, 6, 8}

содержит элементы одного типа, т.е. является доменом. Следовательно, в данном случае, для данных операндов операция объединения определена.

2. Объединение отношений.

В РМД отношение представляет собой множество кортежей, удовлетворяющих одной схеме. Объединение отношений должно дать в результате также отношение.

Пусть определены следующие схемы отношений, определенные на приведенных выше доменах:

R1(A1:D1, A2:D1), R2(A1:D1, A2:D2), R3(A1:D1, A2:D3).

Реализации данных отношений могут иметь следующий вид:

r1 = {<1, 3>, <1, 1>}, r2 = {<1, ‘a’>, <2, ‘b’>}, r3 = {<1, 2>, <7, 2>}.

Тогда вы теории множеств определено новое множество:

r = r1 È r2 = {<1, 3>, <1, 1>, <1, ‘a’>, <2, ‘b’>}

Но в РМБ полученное множество не является отношением, так как кортежи этого множества соответствуют разным схемам отношений. С другой стороны, множество

r = r1 È r3 = {<1, 3>, <1, 1>, <1, 2>, <7, 2>}

является отношением, хотя схемы отношений R1 и R3 и разные.

В связи с этим в реляционной алгебре рассматривается свойство совместимости по объединению.

Определение

Простые домены считаются совместимыми по объединению, если они состоят из элементов одного типа.

Для приведенных выше примеров домены D1 и D2 не совместимы по объединению, а D1 и D3 – совместимы по объединению.

Определение

Два отношения считаются совместимыми по объединению, если

- оба отношения имеют одно и то же множество атрибутов,

- одноименные атрибуты двух отношений определены на совместимых по объединению доменах.

Так, в приведенных выше примерах отношения R1 и R3 совместимы по объединению, так как их одноименные атрибуты определены на совместимых по объединению доменах.

Если нужно проверить совместимость по объединению отношений, имеющих разные множества атрибутов, тогда в соответствии с семантикой атрибутов можно переименовать их, используя операцию переименования. После этого полученные отношения проверяются на совместимость по объединению. Например, если дано еще одно отношение R4(B1:D1, B2:D3) и надо проверить, совместимо ли по объединению данное отношение с отношением R1, то, используя операцию переименования:

R4: переименовать B1 в A1, B2 в A2

можно получить отношение R4(A1:D1, A2:D3), после чего проверить отношения R1 и R4 на совместимость по объединению. С таким же успехом можно использовать операцию переименования

R1: переименовать A1 в B1, A2 в B2.

Рассмотрим теперь все операции реляционной алгебры. В определении операций и примерах строчными буквами обозначены реализации отношений, прописными – схемы отношений; запись вида r(R) означает: реализация отношения r, удовлетворяющая схеме R.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: