11

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

[7/100%]
Показать
LaTeX
Задача 274

Пусть заданы следующие атрибуты:

(A,{a1,a2,a3}),(B,ω),(C,{c1,c2,c3}),(D,ω). \left(A,\left\{ a_{1}, a_{2}, a_{3}\right\} \right), \quad (B, \omega ), \quad \left(C,\left\{ c_{1}, c_{2}, c_{3}\right\} \right), \quad (D, \omega ).

Пусть отношение RR со схемой (A,B,C)(A, B, C) равняется

R={(a1,7,c1),(a1,5,c2),(a2,7,c1),(a3,4,c3)}, R=\left\{ \left(a_{1}, 7, c_{1}\right),\left(a_{1}, 5, c_{2}\right),\left(a_{2}, 7, c_{1}\right),\left(a_{3}, 4, c_{3}\right)\right\} ,

а отношение SS со схемой (C,D)(C, D) равняется

S={(c1,2),(c2,8),(c2,7),(c1,4),(c2,5)}. S=\left\{ \left(c_{1}, 2\right),\left(c_{2}, 8\right),\left(c_{2}, 7\right),\left(c_{1}, 4\right),\left(c_{2}, 5\right)\right\} .

Определить результаты следующих выражений реляционной алгебры:

?
(а)

(R:A≈a1)\left(R: A \approx a_{1}\right);

(б)

R[B]×S[D]R[B] \times S[D];

(в)

R⋊SR \rtimes S;

(г)

R[A,C]⋈R[C]R[A, C] \bowtie R[C];

(д)

RR.C≭S.C∧R.B>S.D⋉SR \underset {\ltimes }{R. C \not\asymp S. C \wedge R. B>S. D} S.

Задача 275

Определить, являются ли операции фильтрации и проекции дистрибутивными относительно объединения, пересечения и разности, то есть выполняются ли равенства

?
(а)

(R∪S:Θ)=(R:Θ)∪(S:Θ)(R \cup S: \Theta )=(R: \Theta ) \cup (S: \Theta );

(б)

(R∩S:Θ)=(R:Θ)∩(S:Θ)(R \cap S: \Theta )=(R: \Theta ) \cap (S: \Theta );

(в)

(R\S:Θ)=(R:Θ)\(S:Θ)(R \backslash S: \Theta )=(R: \Theta ) \backslash (S: \Theta );

(г)

(R∪S)[X]=R[X]∪S[X](R \cup S)[X]=R[X] \cup S[X];

(д)

(R∩S)[X]=R[X]∩S[X](R \cap S)[X]=R[X] \cap S[X];

(е)

(R\S)[X]=R[X]\S[X](R \backslash S)[X]=R[X] \backslash S[X].

Задача 276

Для базы данных на рис. 7 на предыдущей странице построить выражение реляционной алгебры, задающее список фамилий сотрудников, в комнатах которых нет никакого оборудования. Построить формулу логики предикатов, определяющую то же отношение.

Рис. 7: Состояние базы данных.Рис. 7: Состояние базы данных.

?
Задача 277

Пусть есть отношения RR и SS со схемами (A1,…,An,B1,…,Bm)(A_{1}, \ldots , A_{n}, B_{1}, \ldots , B_{m}) и (B1,…,Bm)(B_{1}, \ldots , B_{m}) соответственно. Частным R/SR / S от деления отношения RR на отношение SS называется наибольшее отношение QQ с атрибутами A1,…,AnA_{1}, \ldots , A_{n}, каждый набор tt которого в соединении с каждым набором s∈Ss \in S входит в RR, то есть Q×S⊆RQ \times S \subseteq R. Построить выражение реляционной алгебры, эквивалентное R/SR / S, и формулу логики предикатов, определяющую это отношение.

?
Задача 278

Написать SQL-запросы и соответствующие формулы для получения следующей информации из базы данных на рис. 7 на предшествующей странице, вычислить результат:

?
(а)

найти всех сотрудников с окладом больше 5500 ;

(б)

найти все отделы, в которых есть сотрудники с окладом больше 8000;

(в)

составить список должностей и получаемых по ним окладов;

(г)

составить список сотрудников торгового отдела, получающих зарплату от 6000 до 6500 и работающих не на третьем этаже;

(д)

составить список комнат, где все сотрудники получают оклад меньше 7500.

Рис. 7: Состояние базы данных.Рис. 7: Состояние базы данных.

Задача 279

Определить, какие из следующих ограничений целостности выполняются для состояния базы данных на рис. 7 на стр. 83,:

?
(а)

(∀n)(∀x)(∀y)(∀z)(∀v)(∀x1)(∀y1)(∀z1)(∀v1)(\forall n)(\forall x)(\forall y)(\forall z)(\forall v)\left(\forall x_{1}\right)\left(\forall y_{1}\right)\left(\forall z_{1}\right)\left(\forall v_{1}\right)

( Сотрудники (n,x,y,z,v)∧ Сотрудники (n,x1,y1,z1,v1)→→x≈x1∧y≈y1∧z≈z1∧v≈v1); \begin{aligned} (\text{ Сотрудники }(n, x, y, z, v) & \wedge \text{ Сотрудники }\left(n, x_{1}, y_{1}, z_{1}, v_{1}\right) \rightarrow \\ & \left.\rightarrow x \approx x_{1} \wedge y \approx y_{1} \wedge z \approx z_{1} \wedge v \approx v_{1}\right) ; \end{aligned}
(б)

(∀ns)(∀x)(∀y)((\forall n s)(\forall x)(\forall y)( Комнаты (ns,x,y)→(n s, x, y) \rightarrow

→(∃z)(∃u)(∃v)(∃w) Сотрудники (ns,z,u,v,w));  \rightarrow (\exists z)(\exists u)(\exists v)(\exists w) \text{ Сотрудники }(n s, z, u, v, w)) \text{; }
(в)

(∀x)(∀y)(∀z)(∀v)(∀o)((\forall x)(\forall y)(\forall z)(\forall v)(\forall o)( Сотрудники (x,y,z,v,o)→(x, y, z, v, o) \rightarrow

→1000<o∧o<25000). \rightarrow 1000<o \wedge o<25000).

Рис. 7: Состояние базы данных.Рис. 7: Состояние базы данных.

Задача 280

Написать формулы, выражающие следующие ограничения целостности для базы данных на рис. 7 на стр. 83, определить, какие из них выполняются для приведённого её состояния:

?
(а)

в отношении Комнаты набор атрибутов (НомерСотрудника, НомерКомнаты) является ключом;

(б)

для каждого человека из отношения Сотрудники в отношении Комнаты определено его место работы;

(в)

в отношении Комнаты номера всех комнат на втором этаже больше 10, но меньше 20, а номера всех комнат на третьем этаже больше 20.

Рис. 7: Состояние базы данных.Рис. 7: Состояние базы данных.