Na teoria do projeto de bancos de dados relacionais, o estabelecimento das dependências funcionais tem um papel importante, pois é a partir dessas relações que é possível proceder à normalização dos bancos. Essas dependências funcionais podem ser manipuladas por meio de um conjunto básico de axiomas. Com relação aos atributos X, Y, W e Z, analise as seguintes derivações propostas. I. Se X -> Y e Y -> Z então X -> Z. II. Se X -> Y então XW -> ZW. III. Se Y está contido num conjunto qualquer de atributos, como XYZW, por exemplo, então XYZW -> Y. Sobre essas derivações, está correto o que é proposto em:
- A)I, somente;
Errada, porque a afirmativa I está correta e a III também.
- B)I e II, somente;
Errada, porque a II é falsa e a III também é verdadeira.
- C)I e III, somente;
Certa, pois a I decorre da transitividade e a III decorre da reflexividade.
- D)II e III, somente;
Errada, porque a II está incorreta, embora a III esteja correta.
- E)I, II e III.
Errada, porque a II não pode ser concluída apenas de X -> Y.
Gabarito: C
Em dependências funcionais, voce trabalha com regras bem clássicas, chamadas axiomas de Armstrong. Os mais cobrados sao reflexividade, aumento e transitividade. A ideia é simples: se um conjunto de atributos determina outro, voce pode combinar, ampliar ou encadear essas relaçoes para descobrir novas dependencias. Na afirmativa I, temos a transitividade: se X determina Y e Y determina Z, entao X determina Z. Perfeito. É o famoso efeito dominó das dependencias funcionais: uma vai levando à outra. Então a I está correta. Na II, a banca tentou misturar aumento com uma troca indevida de atributo. Se X -> Y, voce pode concluir XW -> YW, e nao XW -> ZW. Para chegar em ZW, faltou uma dependencia que ligasse Y a Z. Então a II está errada. Na III, se Y está contido em XYZW, entao XYZW -> Y vale pela reflexividade, porque todo conjunto de atributos determina seus próprios subconjuntos. Logo, a III está correta. Assim, o gabarito é C: I e III, somente.