Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сборник задач по множествам, булевым функциям и математической логике. Учебное пособие.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
Задачи 71
c
d
b
g
e
f
Рис. 3: Граф G из задачи 241.
(а)(∃x
(б)(∀x
)(Φ∨Ψ)≡(∃x)Φ∨(∃x)Ψ;
)(Φ∧Ψ)≡(∀x)Φ∧(∀x)Ψ;
(в) (x)(y(y)(x)Φ;
(г) (x)(y(y)(x)Φ.
243. Доказать следующие эквивалентности:
(а) (x)(x y Φ) (Φ)
(б) (x)(x y Φ) (Φ)
x
;
y
x
;
y
(в) Φ (x(x;
(г) Φ (x(x.
244. Доказать следования:
a
~
~
(а) (x)(Φ Ψ) (x(x)Ψ;
(б) (x(x(x)(Φ Ψ);
(в) (x)(Φ Ψ) (x(x)Ψ;
(г) (x)(y(y)(x)Φ.
245.
Привести примеры формул без отрицаний элементарной ариф­метики, которые показывают, что следования из предыдущей задачи в обратную сторону неверны.
246.
Привести к предварённому виду следующие формулы,Q— двух­местный предикатный символ:
(а) ¬(∀z)¬(∀x)(y)(u)(Q(x, y) Q(z, u));
(б) (x)(y)Q(x, y) (x)(y)Q(y, x);
~
~
72 10. Логика предикатов
(в) ¬((∀x)((y)Q(x, y) Q(x, z)) ∨((∀z)Q(z, x) ∧¬(∃y)Q(y, x))).
247.
С помощью преобразований доказать следующие эквивалентно­сти, формула Θ не содержит переменной x свободно:
(а) (x)(Φ Ψ) (x(x)Ψ;
(б) (x)(Θ Φ) Θ (x)Φ;
(в) (x)(Φ Θ) (xΘ.
248.
Доказать, что бескванторная формула логики предикатов Φ, которая не содержит знака равенства≈, тождественно истинна то­гда и только тогда, когда она может быть получена из некоторой тождественно истинной булевой формулы Ψ заменой всех вхождений каждой пропозициональной переменной в Ψ на некоторую атомную подформулу из Φ.
~
~
~

Логика предикатов и базы данных 73

11. Логика предикатов и базы данных
С х е м аn-местного отношенияR— это набор ( тов, каждый из которых содержит имя и область значений: С х е м а б а з ы д а н н ы х состоит из перечня имён отношений с указанием схемы каждого из них. С о с т о я н и е базы данных — это отображение из схемы базы данных в множество конечных отношений, имеющих соответ­ствующие схемы.
С точки зрения логики предикатов схема базы данных — это сигнатура, состояние базы данных — это интерпретация, в которой все отношения конечны.
Р е л я ц и о н н а я а л г е б р а — это простейшие операции над отно­шениями, по своим выразительным возможностям реляционная алгебра совпадает с логикой предикатов. Основные действия реляционной алгебры:
еслиRиS— два отношения с одной и той же схемой Σ, то их о б ъ е д и н е н и е это отношения с той же самой схемой Σ;
еслиRиS— два отношения со схемами ΣΣSсоответственно, то их д е к а р т о в о п р о и з в е д е н и е схемой R, именами, то, чтобы различать их, к именам добавляют имя отношения. Например, вместо атрибута с именемAв схемах ΣΣSбудут атрибуты с именами R.A и S.A в схеме R, ΣS);
еслиR— отношение со схемой Σ, Θ — булева комбинация равенств и других отношений предметной области, использующая имена атрибу­тов, то результатом ф и л ь т р а ц и и (R: Θ) является отношение
R S
, п е р е с е ч е н и е
ΣS). Если ΣRи ΣSсодержат атрибуты с одинаковыми
A1, A2, . . . , An) атрибу-
Ai= (
R S
и р а з н о с т ь
R × S
— это отношение со
Ai, Di).
R \S
R
0
74 11. Логика предикатов и базы данных
со схемой Σ, содержащее в точности те наборыR, которые удовле­творяют формуле Θ;
еслиR— это отношение со схемой ( екцииX= (
A
/B1, . . . , A
i
1
/Bm), причём имена
i
m
различны, то п р о е к ц и е й отношенияRнаXявляется отношение
S[X
] со схемой (
да (
a
, . . . , a
i
1
Bj=
A
i
R[A
, . . . , A
i
1
для всехj= 1
j
B1, . . . , Bm), которое состоит из всех наборов ви-
), где (
i
m
a1, . . . , an) — всевозможные элементыR. Если
, . . . , m
].
i
m
Из основных операций реляционной алгебры можно построить некото-
рые производные, широко используемые на практике:
пустьRиS— это отношения со схемами ( и (
B1, . . . , Bm, C1, . . . , Ck) соответственно (общие атрибуты изобра-
жены для удобства по краям, но вообще это не требуется). Тогда е с т е с т в е н н о е с о е д и н е н и е схему
(A1, . . . , An, B1, . . . , Bm, C1, . . . , Ck)
и состоит из всевозможных наборов вида
(a1, . . . , an, b1, . . . , bm, c1, . . . , ck),
A1, . . . , An), и задана схема про-
B1, . . . , Bmпопарно
, то проекцию обозначают просто как
A1, . . . , An, B1, . . . , Bm)
R on S
отношенийRиSимеет
где (a1, . . . , an, b1, . . . , bm) R, (b1, . . . , bm, c1, . . . , ck) S.
пустьRиS— это отношения со схемами ΣΣSсоответственно, Θ — булева комбинация равенств и других отношений предметной области, использующая имена атрибутов. Тогда Θ - с о е д и н е н и е
RΘon S
ных наборов вида ( Θ, где (
отношенийRиSимеет схему R,
a1, . . . , an, b1, . . . , bm), удовлетворяющих формуле
a1, . . . , an)
R
, (
b1, . . . , bm)
S
ΣS) и состоит из всевозмож-
. Как и в случае декартова произведения при совпадении имён в ΣΣSк ним добавляется имя соответствующего отношения.
Задачи
249. Пусть заданы следующие атрибуты:
(A, {a1, a2, a3}), (B, ω), (C, {c1, c2, c3}), (D, ω).
Задачи 75
Сотрудники
Номер
Сотрудника
1 Иванов А.А. торговый менеджер 7000 2 Сидоров Н.П. плановый экономист 5000 3 Сидорова М.И. торговый 4 Ольгина Н.А. плановый экономист 5500 5 Горев С.В. плановый зав. отделом 10000
НомерСотрудника Этаж НомерКомнаты
3 2 17
1 2 17
7 2 18 5 3 7 2 3 27
Этаж НомерКомнаты Название
2 17 компьютер 2 17 принтер 3 7 ксерокс 3 25 принтер
ФИО Отдел Должность
зав. складом
Комнаты
Оборудование
Оклад
6000
Рис. 4: Состояние базы данных.
Пусть отношение R со схемой (A, B, C ) равняется
R = {(a1, 7, c1), (a1, 5, c2), (a2, 7, c1), (a3, 4, c3)},
а отношение S со схемой (C, D) равняется
S = {(c1, 2), (c2, 8), (c2, 7), (c1, 4), (c2, 5)}.
Определить результаты следующих выражений реляционной алгебры:
76 11. Логика предикатов и базы данных
(а) (R : A a1);
(б) R[B] × S[D];
(г) R[A, C] on R[C];
(д) R
R.C6≈S.C R.B>S.D
on S.
(в) R on S;
250.
Определить, являются ли операции фильтрации и проекции
дистрибутивными относительно объединения, пересечения и разности, то есть выполняются ли равенства
(а) (R S : Θ) = (R : Θ) (S : Θ);
(б) (R S : Θ) = (R : Θ) (S : Θ);
(в) (R \ S : Θ) = (R : Θ) \(S : Θ);
(г) (R S)[X] = R[X] S[X ];
(д) (R S)[X] = R[X] S[X ];
(е) (R \ S)[X] = R[X] \ S[X ].
251.
Для базы данных на рис. 4 на предыдущей странице построить
выражение реляционной алгебры, задающее список фамилий сотруд­ников, в комнатах которых нет никакого оборудования. Построить формулу логики предикатов, определяющую то же отношение.
252.
Пусть есть отношенияRиSсо схемами (
и (
B1, . . . , Bm) соответственно. Ч а с т н ы м
A1, . . . , An, B1, . . . , Bm)
R/S
от деления отноше­нияRна отношениеSназывается наибольшее отношениеQс атри­бутами набором ние реляционной алгебры, эквивалентное
A1, . . . , An, каждый наборtкоторого в соединении с каждым
s S
входит вR, то есть
Q × S R
R/S
. Построить выраже-
, и формулу логики
предикатов, определяющую это отношение.
253.
Написать SQL-запросы и соответствующие формулы для полу­чения следующей информации из базы данных на рис. 4 на предше­ствующей странице, вычислить результат:
~
~
~
~
(а) найти всех сотрудников с окладом больше 5500;
(б)
найти все отделы, в которых есть сотрудники с окладом больше
8000;
Задачи 77
(в) составить список должностей и получаемых по ним окладов;
(г)
составить список сотрудников торгового отдела, получающих
зарплату от 6000 до 6500 и работающих не на третьем этаже;
(д)
составить список комнат, где все сотрудники получают оклад
меньше 7500.
254.
Определить, какие из следующих ограничений целостности вы­полняются для состояния базы данных на рис. 4 на стр. 75,:
(а) (n)(x)(y)(z)(v)(x1)(y1)(z1)(v1)
(Сотрудники(n,x, y, z, v) Сотрудники(n, x1, y1, z1, v1)
x x1∧ y ≈ y1∧ z ≈ z1∧ v ≈ v1);
(б) (ns)(x)(y)(Комнаты(ns, x, y)
(z)(u)(v)(w)Сотрудники(ns, z, u, v, w));
(в) (x)(y)(z)(v)(o)(Сотрудники(x, y, z, v, o)
1000 < o o < 25000).
255.
Написать формулы, выражающие следующие ограничения це­лостности для базы данных на рис. 4 на стр. 75, определить, какие из них выполняются для приведённого её состояния:
~
~
(а)
в отношении Комнаты набор атрибутов (НомерСотрудника,
НомерКомнаты) является ключом;
(б) для каждого человека из отношения Сотрудники в отношении
Комнаты определено его место работы;
(в)
в отношении Комнаты номера всех комнат на втором этаже
больше 10, но меньше 20, а номера всех комнат на третьем
этаже больше 20.
~
78 Ответы и решения

Ответы и решения

Множества, отношения и функции
1.P( 3 }, {{1, 2}, }, {a, {1, 2}, }}.
2. D, F и G.
3. (A B) \C = {{}, {a, c, d}, e, {a}, {b}}, |(A B) \C| = 5.
4. (A \ B) C = {b, {}}, |(A \ B) C| = 2.
5. A × B={(0, a),(0, b),(0, c),(1, a),(1, b),(1, c)},B × A={(a,0),(a,1),(b,
0), (b, 1), (c, 0), (c, 1)}.
6. A×B=B ×A B
что
x A,x 6∈ B
случай. Пусть рассматривается аналогично.
7.
(б)
C \ D = {b }, F3= {(3, b) }.
8.
x A то есть x A.
9.
По определению пересечения множеств это значит, что По определению объединения а значит,
x (A B)∪(A C
) =
{}
, P(
{}
) =
{∅, {}}
}, {2,3}, {1,2,3}}
пусто. В обратную сторону очевидно. В прямую сторону: предположим,
A 6=B,A 6=∅,B 6=∅
(а)
A \ B={0,1},C D={a, c },F1={(0
A B={2},C D={a, c },F2={(2
(а) Если
или
x B
(б) Докажем, что
x (A B)∪(A C
, P(
{a, {1, 2}, }
тогда и только тогда, когдаA=Bили одно из множествA,
. Тогда существует такой элементx, что либо
, либо
x A B
x 6∈ A,x B
y B
. Получаем (
, то
x Aиx B
, то есть
x A B
A (B C)⊆(A B)∪(A C
). Докажем, что (
, P(
{1, 2, 3 }
) =
. Предположим, что имеет место первый
x, y)∈ A ×B
. (б) Если
x B
или
). Если же
) =
{∅, {1}, {2}, {3}, {1,2}, {1,
{∅, {a}, {{1,2}}, {}, {a, {1,2}}, {a,
, (
x, y)6∈ B ×A
, a),(0, c),(1, a),(1, c)}
, a),(2, c)}
, то есть
x C
x C
A B)∪(A C)⊆ A ∩(B C
x A
x A \B
). Пусть
. Если
, то
. Второй случай
, (в)
B \ A={3}
. Если
, то
x Aиx B C
x B
x A C
x A
x Aиx 6∈ B
x A (B C
, то
x A B
и снова
, то
, ,
,
).
.
,
).
Множества, отношения и функции 79
Пусть значит, что Тогда
x Aиx C
Докажем
x /∈ B ∪ C
что означает Если но
(
Следовательно, Докажем ( Получаем, что
(ж) Докажем
x Aиx /∈ B \ C x /∈ B x B A \(B \C)⊇(A \B)∪(A C x A C x /∈ B \ Cиx A \(B \ C Следовательно, x /∈ B \ C и x A \ (B \ C).
10.
A)∪(U \ B
(в)
A\B
((
∪ (B \ A) = B \ A.
11.
x A ×(B C x A ×B
и в этом случае есть произведения получаемx= ( x = (y, z) A × (B C). Аналогично для случая z C.
12.
Если P(A) P(B) и x A, то {x} ⊆ A, поэтому {x} ⊆ B и x B.
x (A B)∪(A C
x A B
x B C
x (A \ B)∩(A \ C
x /∈ Bиx /∈ C
A \ B)∩ C ⊆(A C)\ B
получаем получаем
Используем тождества из задачи 9. (а)
A \¯B=A \(U \ B
¯
= (
U \A)\B=U \(AB
U \A)\U)∪((U \A)∩B
(а) Докажем включение
= (
y, z),y A,z B C
, поэтому
x A × B
Пусть
, и следовательно,
. Значит,
A \(B C)⊆(A \ B)∩(A \ C
, то есть
A\B)∩C ⊇(AC)\B
. В случае
) =¯A ¯B
A Bиx P(A
x /∈ Bиx /∈ C
x (A \B)∩(A \C
. Получаем
x Aиx /∈ B
x Aиx C
A \(B \ C)⊆(A \ B)∪(A C
. Последнее означает, что
x A \B x A C
; (б)
). По определению декартова произведения это значит, что
x (A ×B)∪(A ×C x (A×B)∪(A×C
или
x A × C
). По определению объединения множеств это
или
x A C
x A (B C
x B C
), то
. Если
и, следовательно,
и, следовательно,
x A \ B
). В случае
A B=U \(A B
) = (
) = ((
. Тогда
), тогда
, и следовательно,
. Следовательно,
). Докажем
x A \ Bиx A \ C
x /∈ B ∪ Cиx A \(B C
x (A \ B)∩ C
. Таким образом,
. Если
. Следовательно,
). Если
получаем
A \ U)∪(A B
) =
A B
U \(AU))∪((U B)\A
A ×(B C)⊆(A × B)∪(A × C
z B
). Если
). Пусть теперь
. В первом случае по определению декартова
y, z
) для
x A
. Если
x (A \B)∪(A C
x A B
). Если же
). Если
x (AC)\B
x A C
=¯A¯B
или
y A,z B
, следовательно,
x A \(B C
x A \ Bиx A \ C
A \(B C)⊇(A \B)∩(A \C
. Следовательно,
, то
x A Cиx (A C)\B
, то
x A \ Bиx (A \ B)∩ C
). Если
x /∈ B
x (A \ B)∪(A C
x (A \B)∪(A C
x A
A B=U \(A B
) = (
) =
; (д)¯A\¯B
z C
z C
или
, но
x /∈ B
получаем
U \ A)∩(U \ B
(A B
)) = ((
. Если
, то (
y, z)∈ A × C
x (A×B)∪(A×C
. Тогда
, то
x Aиx B
x A C
x A (B C
), то
). (е) Докажем
x A \ Bиx C
x A Cиx /∈ B
x A \(B \ C
x C
). Докажем
), то
x A \B
. Следовательно,
x Aиx C
) =
= (
U \A)\(U \B
U \U)∪(B\A
z B
, то (
z B C
x Bиx P(B
, то
). (г)
x A
x A
), то
. В случае
). В случае
или
) = (
U \
) =¯A ¯B
A B
; (г)
) =
)) =
). Пусть
y, z)∈
, значит,
), то
.
и
,
).
,
. . . .
.
;
и
).
80 Ответы и решения
13.
(а) Пусть
то есть
A BиA C x B C
любого что и x B \ C . Поэтому x B \ C.
14.
x B x P(A)∩P(B x A Bиx P(A B x P(B
ПустьA= но P(A)∪P(B) = следовательно,
x=∅ Тогда P(A \ B) = {∅, {a}}, но (P(A) \ P(B)) ∪{} = {∅, {a}, {a, b}}.
15.
y},R R=R,R R−1={( rng R={0,1, . . . ,10},R−1=R,
(в)
{(x, y
ω:x 610},rng R={x2: R R={(x, x4) : dom R={a, b, c, d},rng R={b, c, d},R−1={( R R={(a, c),(a, d),(b, b),(b, d),(c, b),(d, c),(d, d)},R R−1={(
(b, b), (b, c), (c, b), (c, c), (d, a), (d, d)}.
16.
антисимметрично, транзитивно; (в) R3антисимметрично, транзитивно.
17. A={a, b},R={(a, b),(b, a)}
только транзитивные отношения и {(a, a)}.
18. P и R.
19. Все отношения рефлексивны.
20. Все отношения симметричны.
21. (а) и (г).
22. (а) и (г).
x Bиx C
x A
A B
A C=∅
(а) Пусть
, поэтому
. Тогда
(а)
dom R\ {0},rng R=ω,R−1={(
dom R=ω,rng R={3x
) :
x, y ω и y = 9x + 4},R R−1={(
(а)
R1рефлексивно, симметрично, транзитивно; (б)
A B C
. Тогда для любого
. Следовательно„ что
получаем
, аAиCне имеют общих элементов,
. Тогда для любого
x P(A B
x P(A
), тогда
), значит,
{a},B={b}
x A
{∅, {a}, {b}}
x Aиx B=∅
x
(P(A)\P(B))
x ω и x 6 10},R R−1={(
. Тогда для любого
. Это означает, что
x A
получаем
A B C
x B \ C
), значит,
) и
x P(A
). (б) Если
или
, где
x, y
+ 1 :
x ω и x 6 10},R−1={(
, то есть
x A
x P(B
) и
x P(B
x B
a 6=b
. Тогда P(
. (в) Пусть
. Получаем
∪ {}
) :
x, y ω \ {0}}
R R=R R−1={(
x ω},R−1={(
. На множествах∅и
. (б) Пусть
получаем
x A B
), то есть
), значит,
x P(A)∪P(B
, поэтому
x P(A \B
. ПустьA=
x A
A BиA C
x Bиx /∈ C
A B
x P(A
x, y
x, x
b, a),(c, b),(d, b),(d, c),(b, d)}
получаем
x Bиx C
A B \ C
A C=∅
x Bиx /∈ C
, следовательно,
x P(A)∩P(B
x Aиx B
), то
x A Bиx P(A B
) =
{∅, {a}, {b}, {a, b}}
), значит,
), а если
{a, b},B={b}
) :
x, y ωиx
; (б)
dom R={0,1, . . . ,10}
x, y
x, y
) :x= 3y+ 1},
) :
x ω}
; (г)
x2, x
) :
x, x
) :
x ω и x 6 10}
x B C
. Пусть теперь
, то есть
. Тогда для
. Это означает,
. Пусть
, то есть
x A
). Пусть
, поэтому
x P(A
x A \ B
x P(B
, где
делится на
) : 0
6 x, y 610}
dom R={x
x ω и x 6 10}
a, a),(a, d),
R2рефлексивно,
{a}
существуют
A B
) или
), то
a 6=b
R R
; (д)
,
и
).
, ,
.
, ;
=
,
,
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]