Добавил:
logic-cor.narod.ru Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Сводка теорем алгебры кортежей

.pdf
Скачиваний:
1
Добавлен:
13.07.2025
Размер:
439.9 Кб
Скачать

Сводка определений и теорем алгебры кортежей

Сокращения

АК – алгебра кортежей ДП – декартово произведение множеств

ДНФ – дизъюнктивная нормальная форма КНФ – конъюнктивная нормальная форма

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.