Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Сборник задач по множествам, булевым функциям и математической логике. Учебное пособие.pdf

Задачи 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— два отношения со схемами ΣRи ΣSсоответственно,
то их д е к а р т о в о п р о и з в е д е н и е
схемой (ΣR,
именами, то, чтобы различать их, к именам добавляют имя отношения.
Например, вместо атрибута с именемAв схемах ΣRи Σ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— это отношения со схемами ΣRи ΣSсоответственно,
Θ — булева комбинация равенств и других отношений предметной
области, использующая имена атрибутов. Тогда Θ - с о е д и н е н и е
RΘon S
ных наборов вида (
Θ, где (
отношенийRиSимеет схему (ΣR,
a1, . . . , an, b1, . . . , bm), удовлетворяющих формуле
a1, . . . , an)
∈ R
, (
b1, . . . , bm)
∈ S
ΣS) и состоит из всевозмож-
. Как и в случае декартова
произведения при совпадении имён в ΣRи Σ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 \(A∪B
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 ⊇(A∩C)\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 \(A∪U))∪((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 ∈(A∩C)\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
; (д)
,
и
).
,
,
.
,
;
=
,
,
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
