Функциональные зависимости: замыкание, эквивалентность и правила вывода — различия между версиями
(Добавила структуру конспекта.) |
Darkey (обсуждение | вклад) (→Замыкание множества функциональных зависимостей) |
||
Строка 2: | Строка 2: | ||
=== Определение и примеры === | === Определение и примеры === | ||
=== Правила вывода функциональных зависимостей === | === Правила вывода функциональных зависимостей === | ||
− | === Замыкание множества функциональных зависимостей === | + | == Замыкание множества функциональных зависимостей == |
− | + | {{Определение | |
+ | |definition= | ||
+ | Замыкание множества функциональных зависимостей <tex>S</tex> - множество всех функциональных зависимостей, обозначаемое <tex>S^+</tex>, которые следуют из заданного множества функциональных зависимостей <tex>S</tex>. | ||
+ | }} | ||
+ | === Построение === | ||
+ | |||
+ | Set<E> '''buildClosure'''(s: Set<E>): | ||
+ | closure = Set<E>(s.addAll()) | ||
+ | changed = true | ||
+ | '''while''' (changed): | ||
+ | changed = false | ||
+ | '''for''' f in closure: | ||
+ | '''for''' rule in rules: //rules - правила вывода | ||
+ | new_f = rule.apply(f) | ||
+ | changed = closure.add(new_f) //add - возвращает true, если элемент был добавлен, false - иначе | ||
+ | '''return''' closure | ||
+ | |||
=== Эквивалентность множеств функциональных зависимостей === | === Эквивалентность множеств функциональных зависимостей === | ||
TODO | TODO |
Версия 22:53, 28 декабря 2020
Содержание
Функциональные зависимости
Определение и примеры
Правила вывода функциональных зависимостей
Замыкание множества функциональных зависимостей
Определение: |
Замыкание множества функциональных зависимостей | - множество всех функциональных зависимостей, обозначаемое , которые следуют из заданного множества функциональных зависимостей .
Построение
Set<E> buildClosure(s: Set<E>): closure = Set<E>(s.addAll()) changed = true while (changed): changed = false for f in closure: for rule in rules: //rules - правила вывода new_f = rule.apply(f) changed = closure.add(new_f) //add - возвращает true, если элемент был добавлен, false - иначе return closure
Эквивалентность множеств функциональных зависимостей
TODO