
Сводка теорем алгебры кортежей
.pdfСводка определений и теорем алгебры кортежей
Сокращения
АК – алгебра кортежей ДП – декартово произведение множеств
ДНФ – дизъюнктивная нормальная форма КНФ – конъюнктивная нормальная форма
1. Основные определения
Элементарный кортеж – кортеж элементов.
Многоместное (n-местное) отношение – это подмножество элементарных кортежей ДП X1 X2 … Xn.
Пусть некоторое отношение R задано как подмножество ДП X1 X2 … Xn. Тогда будем считать данное ДП универсумом этого отношения:
U = X1 X2 … Xn. Из этого следует: R U.
В дальнейшем будем называть имена множеств, из которых сформирован универсум, атрибутами этого отношения, элементы этих множеств – значениями соответствующих атрибутов, а сами множества значений – доменами этих атрибутов.
Компонентой называется произвольное подмножество атрибута Xi.
Фиктивные компоненты:
–полная ( ) равна домену соответствующего атрибута;
–пустая ( ) равна пустому множеству.
Схемой (заголовком) отношения называется заключенная в квадратные скобки последовательность атрибутов, ДП которых выражает универсум данного отношения.
Например, имя трехместного отношения R2[X1X4X6] означает, что универсумом отношения R2 является ДП U = X1 X4 X6.
Однотипные отношения – отношения, заданные в одном и том же универсуме.
2. АК-объекты
АК-объекты – это варианты отображения n-местных отношений, которые являются сжатыми множествами однотипных n-местных элементарных кортежей.
C-кортеж – это n-местное отношение, равное ДП содержащихся в нем компонент, которые записаны в виде кортежа, ограниченного квадратными скобками.
Например, АК-объект R[XYZ] = [A B] – это C-кортеж, причем A X, B Z, а компонента « » равна домену соответствующего атрибута (в данном случае, поскольку « » находится на второй позиции, то в соответствии со схемой отношения = Y). Этот C-кортеж можно преобразовать в обычное трехместное отношение с помощью ДП следующим образом:
R[XYZ] = A Y B.
C-система – это отношение, равное объединению однотипных C-кортежей, которые записываются в виде строк матрицы, ограниченной квадратными скобками.
A1 |
|
A3 |
|
есть C-система, при этом A1 X, A3 |
Z и т. д. |
Например, Q[XYZ] = B |
B |
|
|
||
1 |
2 |
|
|
|
|
Данная C-система преобразуется в обычное отношение с помощью ДП следующим образом:
Q[XYZ] = (A1 Y A3) (B1 B2 Z).
Диагональная C-система – это C-система размерности n n, у которой все недиагональные компоненты – полные ( ).
|
A |
|
|
|
|
Например, Q[XYZ] = |
|
|
B |
|
– диагональная C-система. |
|
|
|
|
|
|
|
|
|
|
C |
|
|
|
|
|
|
|

Необходимость диагональной C-системы в АК обусловлена тем, что с ее помощью можно точно выразить дополнение C-кортежа.
В диагональной C-системе не обязательно, чтобы неполные компоненты были расположены в матрице строго по диагонали. Главное, чтобы в каждом атрибуте и в каждой строке содержалась единственная неполная компонента. Например,
|
|
B |
|
||
Q[XYZ] можно, переставляя строки, выразить так: Q[XYZ] = |
|
|
|
C |
. |
|
|
|
|
|
|
|
A |
|
|
|
|
|
|
|
|
|
|
D-кортеж – это отношение, равное диагональной C-системе и записанное как ограниченный перевернутыми квадратными скобками кортеж ее диагональных компонент.
|
a,c |
|
|
|
|
Например, Q1[XYZ] = |
|
|
f ,g |
|
= ]{a, c} {f, g} {c}[. |
|
|
|
|
|
|
|
|
c |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
D-система – это отношение, равное пересечению однотипных D-кортежей, записанное как ограниченная перевернутыми квадратными скобками матрица компонент, в строках которой расположены участвующие в операции D-кортежи.
|
{a,d} |
|
{b} |
|
||
Например, |
{a,c} |
{d,c,d} |
|
|
– D-система. |
|
|
|
|
|
|
|
|
|
|
|
{b} |
{c,d} |
|
|
|
|
|
|
|
|
|
Если считать, что компоненты АК-объектов представляют одноместные предикаты Pk(xi), у которых переменные xi соответствуют определенным атрибутам, то C-кортежи являются интерпретацией конъюнкции одноместных предикатов с разными переменными, а D-кортежи – интерпретацией дизъюнкции одноместных предикатов с разными переменными. Соответственно C-системы – это интерпретации ДНФ, а D-системы это интерпретации КНФ. Все АК-объекты также являются интерпретацией предикатов.
3.Операции с атрибутами в АК
САК-объектами, используя указанные ниже теоремы, можно выполнять обычные
операции алгебры множеств: пересечение ( ), объединение ( ) и дополнение (Ri ).
Чтобы выполнять операции с АК-объектами, имеющими разные схемы отношения, а также cделать возможной интерпретацию формул с кванторами, требуются помимо операций алгебры множеств операции с атрибутами. Перечислим основные.
Добавление фиктивного атрибута (+X) – операция, при которой в схему отношения АК-объекта добавляется новый атрибут X, а в матрицу на соответствующем месте вставляется столбец с фиктивными компонентами. При этом в C-кортежи и C- системы добавляются фиктивные компоненты " ", а в D-кортежи и D-системы – фиктивные компоненты " ".
Эта операция позволяет решить задачу сопряжения АК-объектов с разными схемами отношения за счет того, что разнотипные АК-объекты при добавлении недостающих фиктивных атрибутов без потери смысла преобразуются в однотипные АК-объекты.
Рассмотрим пример. Пусть задана C-система
a,b |
c, f ,g |
|
|
|
P[XY] = |
. |
|
|
|
f |
h,k |
|
|
|
|
a,b |
c, f ,g |
|
|
Тогда (+Z)P[XY] = P[XYZ] = |
f |
h,k |
. |
|
|
|
|
Операция +X является интерпретацией правила обобщения (Gen) исчисления предикатов в следующей формулировке, которая отличается от традиционной его формулировки без всяких условий:
из формулы A выводима формула x(A) при условии, что в формуле A нет свободных вхождений переменной x, а если переменная x свободна в A, то она фиктивная.
Фиктивной переменной в логической формуле A называется свободная переменная x, для которой справедливо равенство A = x(A).
Элиминация атрибута (–X) – это операция, при которой из схемы отношения АК-объекта удаляется атрибут X, а из матричного представления – соответствующий столбец.
В отличие от операции +X элиминация атрибута существенно изменяет смысл АК-объекта. Подробнее об этом в Теоремах 31 и 32.
Проекция АК-объекта – результат выполнения одной или нескольких операций элиминации атрибута (–X) при условии, что АК-объект задан как C-кортеж или C-система (алгоритмы преобразования D-кортежей или D-систем в C-системы сформулированы в Теоремах 23, 25 и 27).
4. Обобщенные операции и соотношения
Обобщенными операциями G и G в АК называются операции пересечения ( ) и
объединения ( ) произвольных АК-объектов с предварительным приведением их к единой схеме отношения за счет добавления недостающих фиктивных атрибутов.
Например, пусть заданы C-системы
|
a,b |
c,f ,g |
|
a,b |
c, f ,g |
||||
Q1[X1 X2] = |
|
h,k |
и Q2[X2 |
X3] = |
|
h,k |
. |
||
|
f ,d |
|
|
|
f ,d |
|
|||
|
|
|
|
|
|
|
|
||
Тогда Q[X1 X2 X3] = Q1 [X1 X2] G Q2[X2 X3] = |
|
|
|
||||||
a,b |
c,f ,g |
|
|
a,b |
c,f ,g |
|
|
|
|
= |
h,k |
|
|
f ,d |
|
. |
|
|
|
f ,d |
|
|
|
h,k |
|
|
|
||
Обобщенными соотношениями |
|
G и |
G |
в АК называются соотношения |
включения и равенства произвольных АК-объектов, перед проверкой которых АК-объекты приводятся к единой схеме отношения за счет добавления недостающих фиктивных атрибутов.
5.Теоремы алгебры кортежей
Вформулировках теорем схемы отношений в именах АК-объектов не указаны, так как речь в них идет об однотипных отношениях.
Теорема 1 (проверка включения C-кортежей). Пусть даны два однотипных
C-кортежа P = [P1 P2 … PN] и Q = [Q1 Q2 … QN]. Тогда P Q, если и только если Pi Qi верно для всех соответствующих пар компонент сравниваемых C-кортежей.
Теорема 2 (пересечение C-кортежей). Пусть даны |
два |
однотипных |
C-кортежа |
||||||
P = [P1 P2 … PN] и Q = [Q1 Q2 … QN].. Тогда P Q = [P1 |
Q1 |
P2 |
Q2 |
… PN QN]. |
|||||
Теорема 3 (пустое пересечение однотипных |
C-кортежей). |
Пусть |
даны два |
||||||
однотипных C-кортежа P = [P1 P2 … PN] и Q = [Q1 Q2 … QN], и в них имеется, по крайней |
|||||||||
мере, одна пара Pi и Qi компонент, для которых Pi Qi = . Тогда P Q = . |
|
||||||||
Теорема 4 (объединение однотипных C-кортежей). Пусть даны |
два однотипных |
||||||||
C-кортежа P = [P1 P2 … PN] и Q = [Q1 Q2 … QN]. Тогда |
|
|
|
|
|
|
|||
P Q [P1 Q1 P2 Q2 … PN QN]. |
|
|
|
|
|
|
|
||
Теорема 5. Для |
однотипных |
C-кортежей |
P = [P1 P2 … PN] |
и |
Q = [Q1 Q2 … QN] |
||||
равенство P Q = [P1 |
Q1 P2 Q2 |
… PN QN] |
соблюдается |
только |
при |
следующих |
|||
условиях: |
|
|
|
|
|
|
|
|
|
1)P Q или Q P;
2)для всех пар Pi и Qi выполняется Pi = Qi, за исключением одной пары.

Теорема 6 (объединение C-систем). Объединение однотипных C-систем есть C-система, в которую включены все C-кортежи объединяемых C-систем.
Теорема 7 (пересечение C-кортежа и C-системы). Пусть даны однотипные C-кортеж P и C-система Q. Результатом их пересечения будет C-система, содержащая все непустые пересечения C-кортежа P с каждым C-кортежем из Q.
Теорема 8 (пересечение двух C-систем). Пусть даны однотипные C-системы P и Q. Результатом их пересечения будет C-система, содержащая все непустые пересечения каждого C-кортежа из P с каждым C-кортежем из Q.
Теорема 9. Дополнение C-кортежа P = [P1 P2 ... Pn-1 Pn] есть диагональная C-система
|
|
|
|
|
|
|
|
|
||
P |
... |
|
|
|
||||||
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
R = |
|
P2 |
... |
|
размерности n n, где каждая диагональная компонента |
|
– |
|||
P |
||||||||||
... |
... |
... |
... |
|
i |
|||||
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
||
|
... |
P |
|
|
|
|
||||
|
|
|
|
|
||||||
|
|
|
|
|
n |
|
|
|
дополнение соответствующей компоненты Pi в C-кортеже P.
Теорема 10. Пусть даны C-кортеж P = [P1 P2 ... Pn] и D-кортеж Q = ]Q1 Q2 ... Qn[. Тогда
|
|
= ] |
|
|
|
|
|
|
... |
|
|
[; |
|
|
|
|
|
|
|
||
|
P |
P1 |
|
|
P2 |
Pn |
|
|
|
|
|
|
|
||||||||
|
|
= [ |
|
|
|
|
... |
|
]. |
|
|
|
|
|
|
||||||
|
Q |
Q1 |
|
|
Q2 |
Qn |
|
|
|
|
|
|
|||||||||
Теорема 11. Дополнение C-системы есть D-система той же размерности, все |
|||||||||||||||||||||
компоненты |
которой |
равны |
дополнениям |
соответствующих |
компонент |
исходной |
|||||||||||||||
C-системы. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
Теорема 12. Дополнение D-системы есть C-система той же размерности, все |
|||||||||||||||||||||
компоненты |
которой |
равны |
дополнениям |
соответствующих |
компонент |
исходной |
|||||||||||||||
D-системы. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
Теорема 13. Дополнение |
C-кортежа P = [ … |
Pi … ] |
с единственной (i-ой) |
||||||||||||||||||
неполной компонентой равно C-кортежу PC = [ … |
|
… ] с единственной неполной |
|||||||||||||||||||
Pi |
компонентой Pi .
Теорема 14 (объединение однотипных D-кортежей). Пусть даны два однотипных D-кортежа P = ]P1 P2 … PN[ и Q = ]Q1 Q2 … QN[. Тогда
P Q = ]P1 Q1 P2 Q2 … PN QN[.
Теорема 15 (равное универсуму объединение однотипных D-кортежей). Пусть даны два однотипных D-кортежа P = ]P1 P2 … PN[ и Q = ]Q1 Q2 … QN[, и существует, по крайней мере, одна пара Pi и Qi компонент, для которых Pi Qi = . Тогда P Q равно универсуму.
Теорема 16 (пересечение однотипных D-кортежей). Пусть даны два однотипных D-кортежа P = ]P1 P2 … PN[ и Q = ]Q1 Q2 … QN[. Тогда
]P1 Q1 P2 Q2 … PN QN[ P Q.
Теорема 17 (проверка включения однотипных D-кортежей). Пусть даны два
однотипных D-кортежа P = ]P1 P2 … Pn[ и Q = ]Q1 Q2 … Qn[. Тогда P Q, если и только если соблюдается Pi Qi для всех соответствующих пар компонент сравниваемых D-кортежей.
Теорема 18. Для однотипных D-кортежей P = ]P1 P2 … PN[ и Q = ]Q1 Q2 … QN[ равенство P Q = ]P1 Q1 P2 Q2 PN QN[ соблюдается в следующих двух случаях:
1)P Q или Q P;
2)для всех пар Pi и Qi, за исключением одной пары, имеет место Pi = Qi.
Теорема 19 (пересечение D-систем). Пересечение однотипных D-систем равно D-системе, строки которой составлены из всех D-кортежей исходных D-систем.
Теорема 20 |
(проверка |
включения |
C-кортежа |
в |
однотипный D-кортеж). Для |
C-кортежа P = [P1 P2 … PN] |
и D-кортежа Q = ]Q1 Q2 … QN[ справедливо P Q, если и |
||||
только если по крайней мере для одного i соблюдается Pi Qi. |
|||||
Теорема 21 |
(проверка |
включения |
C-кортежа |
в однотипную D-систему). Для |
|
C-кортежа P и |
D-системы |
Q справедливо P Q, |
если |
и только если для каждого |
D-кортежа Qj из Q выполняется P Qj.
Теорема 22 (проверка включения C-системы в однотипную D-систему). Для C- системы P и D-системы Q справедливо P Q, если и только если каждый C-кортеж из P включен в каждый D-кортеж из Q.
Теорема 23 (преобразование D-кортежа в C-систему). Каждый D-кортеж
|
|
P1 |
|
... |
|
|
|
|
|
P |
... |
|
|
P = ]P1 |
P2 |
… Pn[ эквивалентен диагональной C-системе P = |
2 |
|
. |
|
... |
... |
|||||
|
|
... |
... |
|||
|
|
|
|
... |
|
|
|
|
|
Pn |
Теорема 24 (преобразование C-кортежа в D-систему). Каждый C-кортеж P = [P1 P2 … Pn] эквивалентен диагональной D-системе
|
|
P1 |
|
... |
|
|
|
|
P |
... |
|
[P1 |
P2 |
… Pn] = |
2 |
|
. |
|
... |
||||
|
|
... ... |
... |
||
|
|
|
|
... |
|
|
|
|
Pn |
Теорема 25 (преобразование D-системы в C-систему). D-система P, содержащая M D-кортежей, эквивалентна C-системе, которая является пересечением всех C-систем, полученных с помощью преобразования каждого D-кортежа из P в диагональную C-систему.
Теорема 26 (преобразование C-системы в D-систему) C-система P, содержащая M C-кортежей, эквивалентна D-системе, которая является объединением всех D-систем, полученных с помощью преобразования каждого C-кортежа из P в диагональную D-систему.
Теорема 27. D-кортеж P = ]P1 P2 ... Pm-1 Pm[ преобразуется в эквивалентную ему ортогональную C-систему:
P1 |
|
... |
|
|
|
||
|
|
|
|
|
|
|
|
P |
|
P ... |
|||||
|
1 |
2 |
|
|
|
|
|
Port = ... ... ... ... |
... . |
||||||
|
|
|
|
|
|
|
|
P |
|
P ... |
P |
||||
|
1 |
|
2 |
|
m 1 |
|
|
|
P |
|
P ... |
P |
P |
|
|
|
1 |
2 |
|
m 1 |
m |
Теорема 28. Добавление нового фиктивного атрибута с компонентами « » в D-кортеж или D-систему соответствует тому, что в эквивалентные им C-системы добавляется фиктивный атрибут с полными компонентами.
Теорема 29. Алгебра кортежей с обобщенными операциями G , G и отношениямиG , G , G изоморфна алгебре множеств и является полной алгебраической системой.
Теорема 30. Если логической формуле P, не содержащей свободной переменной x, соответствует АК-объект Q, в схеме отношения которого отсутствует атрибут X, то АК-объект +X(Q) соответствует логической формуле x(P).
Теорема 31. Пусть интерпретацией логической формулы P(…, x, …) со свободной переменной x является C-система Q[…X…], у которой отсутствуют C-кортежи с пустыми компонентами в атрибуте X. Тогда C-система –X(Q) есть интерпретация логической формулы x(P).

Теорема 32. Пусть интерпретацией логической формулы P(…, x, …) со свободной переменной x является D-система Q[…X…], у которой отсутствуют D-кортежи с полными компонентами в атрибуте X. Тогда D-система –X(Q) есть интерпретация логической формулы x(P).
Теорема 33. Если АК-объекты SA и SB – интерпретации логических формул A и B, то общезначимость импликации A B равносильна соотношению SA G SB.
Теорема 34. Пусть посылки рассуждения выражены АК-объектами A1, ..., An и задан АК-объект B. Тогда B есть следствие A1, ..., An тогда и только тогда, когда
A1 G ... G An G B = .
Теорема 35. Пусть посылки рассуждения выражены АК-объектами A1, ..., An и задан АК-объект B. Тогда B есть следствие A1, ..., An тогда и только тогда, когда
(A1 G ... G An) G B.