где K - один из ключей множества R над F.
5. Для практической задачи из прил.7 найти редуцированное покрытие и один из ключей.
В качестве исходного множества ФЗ использовать неизбыточное покрытие, полученное при выполнении задания 1. Результаты обосновать, проверив правильность их вручную.
Содержание отчета
1. Текст программы.
2. Результаты выполнения программы редуцирования на контрольных примерах.
3. Результат решения практической задачи.
Задание 3
Соединение без потерь информации. Сохранение множества
функциональных зависимостей
Содержание и порядок выполнения работы
1. Изучить методы проверки свойства соединения без потерь информации (выводимости
F |= *[ρ]), изложенные в разделе 1.2.
2. Разработать алгоритм метода прогонки табло и реализовать его в виде программной процедур (функции). Исходными данными для алгоритма должны выступать: R - множество атрибутов, F - множество ФЗ,
- схема БД.
Результат работы алгоритма: .TRUE., если F |= *[р], и .FALSE., если F |¹ *[ρ].
3. Изучить и реализовать в виде программной процедуры (функции) алгоритм проверки свойства сохранения F, приведенный в прил.5. Исходные данные для алгоритма те же, что и для алгоритма метода прогонки табло. Результат работы алгоритма: .TRUE., если р сохраняет F , и .FALSE, в противном случае.
4. Проверить корректность работы программ на контрольных примерах 1 - 6 из табл.3.4.
Таблица 3.4
Номер примера |
Исходные данные: R, F, ρ |
Результаты |
||
Сохранение F |
Сохранение без потерь |
Множество ключей |
||
1 |
R = ABC, F = 0, ρ = {R(ABC)} |
.TRUE. |
.TRUE. |
{ABC} |
2 |
R = ABC, F = 0, ρ = {R1(AB), R2(BC)} |
.TRUE. |
.FALSE. |
{ABC} |
3 |
R = ABC, F = {AB → C, C → B}, ρ = {R1(AC), R2(BC)} |
.FALSE. |
.TRUE. |
{AB, AC} |
4 |
R = ABCDE, F = {A → BC, B → DA, E → D, CD → E, BD → E}, ρ = {R1(AB), R2(ACDE), R3(BE)} |
.TRUE. |
.TRUE. |
{A, B} |
5 |
R = ABCD, F = {AD → C, CD → A,B → D}, ρ = {R1(ABC), R2(CD)} |
.FALSE. |
.FALSE. |
{AB, BC} |
6 |
R = ABCD, F = {A → B, B → A, AC → D}, ρ = {R1(ABC), R2(ACD)} |
.TRUE. |
.TRUE. |
{AC, BC} |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.