Pular para o conteúdo principal

Questão de Banco de Dados — Conceitos e Fundamentos de Modelo Relacional — FGV 2023

Banco de DadosConceitos e Fundamentos de Modelo Relacional
Código
fg161097
Banca
FGV
Órgão
Pref Niterói
Ano
2023
Cargo
Ana ( )

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 é:

  1. AA, B, C \rightarrow A, B;
  2. Bse A \rightarrow B e A \rightarrow C então A \rightarrow B, C;
  3. Cse A \rightarrow B e B \rightarrow C então A \rightarrow C;
  4. Dse A \rightarrow C então A, B \rightarrow B, C;
  5. Ese B \rightarrow A e C \rightarrow A então B \rightarrow C.
Revelar gabarito e comentário

GabaritoE — se B \rightarrow A e C \rightarrow A então B \rightarrow C.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Axiomas de Armstrong e derivação de dependências funcionais

Gabarito: letra E. A derivação se B → A e C → A então B → C não é válida porque, embora B e C determinem individualmente A, isso não estabelece qualquer relação de determinação entre B e C — a regra correta seria a transitividade (X → Y e Y → ZX → Z), que exige uma cadeia, não dois determinantes do mesmo atributo. Essa é a essência dos Axiomas de Armstrong, o conjunto de regras de inferência que permite derivar novas dependências funcionais a partir de um conjunto inicial.

Os Axiomas de Armstrong são a base formal da normalização de bancos de dados relacionais. Eles garantem que, se uma dependência funcional pode ser derivada por essas regras, ela é logicamente implicada pelo conjunto original — e vice-versa (completude). As regras fundamentais são:

  • Reflexividade: se Y ⊆ X, então X → Y. Ou seja, um conjunto de atributos determina qualquer subconjunto seu.

  • Aumentatividade (ou expansibilidade): se X → Y, então XZ → YZ para qualquer Z. Acrescentar atributos dos dois lados preserva a dependência.

  • Transitividade: se X → Y e Y → Z, então X → Z. A determinação é transitiva.

A partir dessas três, derivam-se regras adicionais, como a união (se X → Y e X → Z, então X → YZ), a decomposição (se X → YZ, então X → Y e X → Z) e a pseudo-transitividade (se X → Y e YZ → W, então XZ → W).

A pegadinha da questão está em aplicar a transitividade de forma invertida: a alternativa E afirma que, se B e C determinam A, então B determina C. Isso seria válido apenas se houvesse uma cadeia do tipo B → A → C, o que não é dado. Na verdade, B → A e C → A apenas indicam que A é funcionalmente dependente de ambos, mas nada dizem sobre a relação entre B e C. Por exemplo, em uma tabela de alunos, tanto matrícula quanto CPF podem determinar nome, mas isso não implica que matrícula determine CPF.

Para resolver a questão, basta verificar cada alternativa contra os axiomas:

  • A) A, B, C → A, B — válida por reflexividade, pois {A, B} ⊆ {A, B, C}.

  • B) se A → B e A → C então A → B, C — válida pela regra da união.

  • C) se A → B e B → C então A → C — válida por transitividade.

  • D) se A → C então A, B → B, C — válida por aumentatividade (adiciona B aos dois lados) e depois decomposição.

  • E) se B → A e C → A então B → Cinválida, pois não há regra que permita concluir isso.

Alternativa A — ✅ Correta

A dependência A, B, C → A, B é válida pelo axioma da reflexividade: se o conjunto do lado esquerdo contém o conjunto do lado direito, a dependência é garantida. Aqui, {A, B} é subconjunto de {A, B, C}, então a derivação é correta.

Alternativa B — ✅ Correta

A derivação se A → B e A → C então A → B, C é válida pela regra da união (ou aditiva): se um atributo determina dois outros separadamente, ele determina a combinação deles. É uma das regras derivadas dos axiomas de Armstrong.

Alternativa C — ✅ Correta

A derivação se A → B e B → C então A → C é exatamente o axioma da transitividade: a determinação é transitiva, então se A determina B e B determina C, A determina C. É uma das regras fundamentais.

Alternativa D — ✅ Correta

A derivação se A → C então A, B → B, C é válida pela aumentatividade (adiciona B aos dois lados: A, B → C, B) e depois pela decomposição (A, B → B, C). É uma combinação válida de axiomas.

Alternativa E — ❌ Incorreta ⟵ GABARITO

A derivação se B → A e C → A então B → C não é válida. Não existe nenhum axioma que permita concluir que dois atributos que determinam o mesmo atributo sejam dependentes entre si. A transitividade exigiria uma cadeia, como B → A e A → C, o que não é o caso. Portanto, esta é a única derivação inválida.

NÃO CAIA NESSA!

A banca explora a tentação de aplicar a transitividade de forma invertida. O candidato vê B → A e C → A e pensa que pode concluir B → C, mas a transitividade exige que o consequente de uma dependência seja o antecedente da outra (B → A e A → C ⇒ B → C). Aqui, A é o consequente nas duas, então não há cadeia. Lembre-se: determinar o mesmo atributo não cria relação entre os determinantes.

PEGA ESSA DICA!

Para questões de derivação de dependências funcionais, monte uma tabela com os axiomas e suas fórmulas. Na hora da prova, verifique cada alternativa contra a lista: reflexividade (Y ⊆ X), aumentatividade (X → Y ⇒ XZ → YZ), transitividade (X → Y, Y → Z ⇒ X → Z), união (X → Y, X → Z ⇒ X → YZ), decomposição (X → YZ ⇒ X → Y, X → Z). Se não encaixar em nenhuma, é inválida.

Gabarito: letra E — a única derivação que não é válida é a da alternativa E.

Link permanente: /questoes/fg161097