Как я могу проверить, находится ли разложение в BCNF? - PullRequest
0 голосов
/ 17 марта 2020

У меня есть следующее отношение: R = (ABCDE) с функциональными зависимостями F = {A → B, B → CDE, E → AC}. У меня есть два разложения: R1 = (BCDE) и R2 = (AE). Как я могу проверить, есть ли эти разложения в BCNF? Я знаю, как проверить, сохраняются ли они без потерь и зависимостей (в этом случае я думаю, что оба ответа да), а не как проверить, находятся ли они в BCNF.

1 Ответ

2 голосов
/ 17 марта 2020

Предполагая, что F является покрытием функциональных зависимостей R, отношение уже находится в BCNF.

Фактически, чтобы проверить, что отношение является BCNF, мы можем проверить, все ли У зависимостей оболочки есть определитель, который является суперключем. В вашем случае это верно (поскольку ключи-кандидаты отношения A, B и E), поэтому нет необходимости разлагать его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...