Правило 5. Псевдотранзитивность
Правило 4. Декомпозиция функциональных зависимостей
Декомпозиция функциональных зависимостей.
Если А→В,С , то А→В и А→С
|
|
Рис. 6.11 Правило 4: декомпозиция функциональных зависимостей.
|
Если X→Y и Y,W→Z то зависимость X,W→Z, называется псевдотранзитивной и является избыточной функциональной зависимостью.
|
|
Рис. 6.12 Правило 5: Псевдотранзитивная зависимость.
|
Набор ФЗ, получаемый из исходного набора ФЗ удалением всех избыточных ФЗ с помощью правила вывода называется минимальным покрытием.
Избыточные ФЗ следует удалять из набора ФЗ по одной, каждый раз заново анализируя полученный набор ФЗ на присутствие в нем избыточных ФЗ.
Для построения отношений базы данных произведем следующие действия:
1. Из атрибутов предметной области сформируем универсальное отношение.
2. Из универсального отношения выделим ряд функциональны зависимостей.
3. Нарисуем диаграмму функциональных зависимостей.
4. С помощью правил вывода проанализируем диаграмму функциональных зависимостей на наличие избыточных функциональных зависимостей.
5. Удалим все избыточные зависимости по одной.
На рисунке 6.13 изображена диаграмма функциональных зависимостей универсального отношения.
|
A → B,C
A → K
A → D
B,C → D
B → D
K → C
|
Рис 6.13 Диаграмма функциональных зависимостей универсального отношения
|
Шаг первый: Рассмотрим фрагмент
диаграммы универсального отношения.
| По правилу 2 зависимость BC → D является корректной, но избыточной. Производим ее удаление.
|
|
B,C → D
B → D
|
|
B → D
|
Рис. 6.14 Фрагмент диаграммы B,C → D, B → D Рис. 6.15 Удаление избыточной зависимости B,C → D
|
| | | |
В результат действий первого шага получаем следующую диаграмму:
|
A → B,C
A → K
A → D
B → D
K → C
|
Рис. 6.16 Диаграмма после удаления избыточной зависимости B,C → D
|
Шаг второй: Рассмотрим фрагмент
диаграммы полученной на первом шаге.
| По правилу 4 произведем декомпозицию зависимости A → B,C на A → B, A → C
|
| A → B,C
|
| A → B
|
A → C
|
Рис. 6.17 Фрагмент диаграммы A → B,C Рис. 6.18 Декомпозиция A → B,C на A → B, A → C
|
В результат действий второго шага получаем следующую диаграмму:
|
A → B
A → C
A → D
A → K
B → D
K → C
|
Рис. 6.19 Диаграмма после декомпозицию зависимости A → B,C на A → B, A → C
|
Шаг третий:: Рассмотрим фрагмент диаграммы полученной на втором шаге
| По правилу 1 зависимость A → C является транзитивной и подлежит удалению.
|
|
A → C
A → K
K → C
|
|
A → K
K → C
|
Рис. 6.20 Фрагмент диаграммы A → C, A → K, K → C
| Рис. 6.21 Удаление транзитивной зависимости A → C
|
| | | |
В результат действий третьего шага получаем следующую диаграмму:
|
A → B
A → D
A → K
B → D
K → C
| |
|
|
|
|
Рис. 6.22 Диаграмма после удаление транзитивной зависимости A → C
| |
Шаг четвертый:: Рассмотрим фрагмент иаграммы полученной на третьем шаге
| По правилу 1 зависимость A → D транзитивная и подлежит удалению
|
|
|
A → B
| A → B
|
A → D
| B → D
|
B → D
|
|
Рис. 6.23 Фрагмент диаграммы A → B, A → D, B → D
| Рис. 6.24 Удаление транзитивной зависимости A → D
|
В результат действий четвертого шага получаем следующую диаграмму:
|
A → B
A → K
B → D
K → C
|
Рис. 6.25 Диаграмма после удаление транзитивной зависимости A → D
|
После того как из диаграммы были удалены все избыточные зависимости, формируем следующие отношения:
|
R1 (B, D)
|
R2 (K, C)
|
R3 (A, B ,K)
|