Dependências funcionais são usadas no processo de normalização de tabelas em projetos de bancos de dados relacionais e possuem propriedades que permitem a derivação de novas dependências. Considerando-se os atributos A, B, C de uma tabela relacional T, a derivação que NÃO é válida é:
- A)A, B, C ➙ A, B;
Certa, pois pela reflexividade todo conjunto de atributos determina qualquer subconjunto seu.
- B)se A ➙ B e A ➙ C então A ➙ B, C;
Certa, pois se A determina B e C separadamente, entao A determina o conjunto B, C.
- C)se A ➙ B e B ➙ C então A ➙ C;
Certa, pois vale a transitividade: se A -> B e B -> C, entao A -> C.
- D)se A ➙ C então A, B ➙ B, C;
Certa, pois pela regra de aumentacao, acrescentar o mesmo atributo em ambos os lados preserva a dependencia funcional.
- E)se B ➙ A e C ➙ A então B ➙ C.
Errada, porque dois atributos determinarem o mesmo atributo nao permite concluir dependencia entre eles.
Gabarito: E
Dependencias funcionais sao a base da normalizacao: elas dizem que, ao conhecer certo conjunto de atributos, voce consegue determinar outro. Em provas, a banca adora cobrar as propriedades classicas para derivar novas dependencias, como reflexividade, aumentacao e transitividade. Parece simples, mas uma troca de lado ou de conjunto ja derruba a resposta. Aqui, o ponto central esta na chamada reflexividade: se Y esta contido em X, entao X -> Y. Por isso, de A, B, C voce consegue concluir A, B, C -> A, B, e tambem que A -> B, C quando as premissas permitem agrupar dependencias. A alternativa D tambem segue a regra de aumentacao: se A -> C, entao acrescentar B dos dois lados gera A, B -> C, B, e a ordem dos atributos nao altera o sentido da dependencia. A letra E quebra a logica: de B -> A e C -> A nao se pode concluir B -> C. O fato de dois atributos determinarem o mesmo atributo nao faz um determinar o outro. Em outras palavras, ter o mesmo 'destino' nao transforma um determinante em outro, e isso costuma ser a armadilha favorita em questoes de dependencia funcional. Esse conteudo vem da teoria de normalizacao de bancos relacionais, especialmente das propriedades de Armstrong, que sao a base doutrinaria para inferir dependencias funcionais.