Функциональные зависимости: замыкание атрибутов, неприводимые множества функциональных зависимостей, их построение — различия между версиями
Darkey (обсуждение | вклад) (→Основное свойство замыкания множества атрибутов) |
Darkey (обсуждение | вклад) (→Замыкание атрибутов) |
||
Строка 42: | Строка 42: | ||
2) <tex>X_S^+ \subset X_S^* </tex> <br/> | 2) <tex>X_S^+ \subset X_S^* </tex> <br/> | ||
Доказательство от обратного: Пусть <tex>X_S^+ \not\subset X_S^* => \exists A: A \in X_S^+ \text{ and } A \not\in X_S^*.\; A \in X_S^+ => X \to A =></tex> есть вывод <tex> X \to X_1^+, ..., X_n^+ \to A</tex>. В этой цепочке найдём первую свежую ФЗ, то есть она не была в базовых ФЗ <tex>X</tex>. Такая фз точно есть в этой цепочке, например, <tex>X_n^+ \to A</tex>, т.к. <tex>A \in X_S^+ \text{ and } A \not\in X_S^* => </tex> такое правило не могло быть в <tex>X</tex>. | Доказательство от обратного: Пусть <tex>X_S^+ \not\subset X_S^* => \exists A: A \in X_S^+ \text{ and } A \not\in X_S^*.\; A \in X_S^+ => X \to A =></tex> есть вывод <tex> X \to X_1^+, ..., X_n^+ \to A</tex>. В этой цепочке найдём первую свежую ФЗ, то есть она не была в базовых ФЗ <tex>X</tex>. Такая фз точно есть в этой цепочке, например, <tex>X_n^+ \to A</tex>, т.к. <tex>A \in X_S^+ \text{ and } A \not\in X_S^* => </tex> такое правило не могло быть в <tex>X</tex>. | ||
+ | }} | ||
+ | |||
+ | == Неприводимые множества функциональных зависимостей == | ||
+ | {{Определение | ||
+ | |definition= | ||
+ | Множество ФЗ <tex>S</tex> '''неприводимо''', если: <br> | ||
+ | * Каждая правая часть ФЗ содержит один атрибут | ||
+ | * Каждая левая часть ФЗ минимальна по включению | ||
+ | * <tex>S</tex> минимально по включению | ||
}} | }} |
Версия 11:45, 29 декабря 2020
Содержание
Замыкание атрибутов
Определение: |
Замыкание множества атрибутов | над множеством ФЗ - максимальное по включению множество атрибутов функционально зависящих от .
Максимальный размер равен числу атрибутов в отношении.
Основное свойство замыкания множества атрибутов
Теорема: |
Доказательство: |
По определению замыкания атрибутов. |
Данная теорема позволяет проверять эквивалентность множеств ФЗ без вычисления замыканий ФЗ:
Даны множества и и пусть для простоты , необходимо проверить является ли эквивалентным . Для этого достаточно построить замыкание и по теореме проверить все фз из , которые отсутствуют в . Если доказать, что из выводимы все базовые правила , то их замыкания ФЗ будут совпадать, следовательно, два множества эквивалентны. Например, пусть , тогда если , то .
Утверждение: |
Следствие: - надключ - множество всех атрибутов |
- множество всех атрибутов и по теореме , то по определению функциональной зависимости соответствует ровно один и значит - надключ. |
Данное следствие позволяет формально выделять ключи и надключи.
Построение
= X do foreach : if then while есть изменения
Теорема: |
Доказательство: |
1) |
Неприводимые множества функциональных зависимостей
Определение: |
Множество ФЗ
| неприводимо, если: