Классификация функциональных зависимостей.
Функциональная зависимость.
R(X,Y); X,Y Í схема R.
Если не может существовать более одного кортежа R, совпадающего по всем значениям из Х и отличающегося хотя бы по одному значению по Y, то зависимость называют функциональной зависимостью по Х.
1. Полная функциональная зависимость(ФЗ).
Y зависит от Х, но не зависит от любого подмножества Х.
2. Неполная ФЗ.
Y зависит от Х и от какого-нибудь подмножества Х.
3. Тривиальная ФЗ.
Y является подмножеством Х.
4. Транзитивная ФЗ.
R(X,Y,Z); X,Y,Z Í R
X®Z, Z®Y, X®Y.
В этом случае Х функционально определяет Z, Z определяет Y, когда Х не определяет функцию Y.
5. Многозначная ФЗ.
Говорят, что в отношении R с наборами атрибутов X,Y,Z имеется многозначная ФЗ, если существует множество значений Z, соответствующее паре значений X и Y, которое зависит функционально от Y, но не зависит функционально от Z.
Сформулируем правила вывода:
1. Рефлексивность.
X,Y Í схема R
Если X Í Y, то Y®X.
2. Присоединение.
X,Y,Z
W Í Z
XZ=XÈZ
Если X®Y, то XZ®YW.
3. Транзитивность.
X,Y,Z
Если X®Y и Y®Z, то X®Z
4. Псевдотранзитивность.
X,Y,Z,W
XÈW=XW
YÈW=YW
Если X®Y, XW®YW, YW®Z, то YW®Z
5. Объединение.
X,Y,Z
Если X®Y, X®Z, то X®YZ
6. Декомпозиция.
X,Y,Z
Если X®YZ, то X®Y и X®Z.