-1

What is the closure of these functional dependencies of a relation?

  1. A -> DC
  2. D -> B

Ans: A -> BC (using pseudo transitivity rule).

Am I correct or am I missing something?

philipxy
  • 14,867
  • 6
  • 39
  • 83

1 Answers1

2

The closure of a given set of FDs is the set of all FDs that must hold when the ones in the given set hold. Ie the set of every FDs that is derivable from one in the given set by some sequence of Armstrong's axioms. You will have been told that every set has such a closure and it is unique. And that we can find the closure by repeatedly applying some axiom in some new way using FDs given and/or derived so far until no new FDs are derived.

You found one FD implied by the original set {A -> DC, D -> B}, namely A -> BC, by applying one rule to certain FDs in the set. If you couldn't get a new one by applying any other rules then the closure would be the set {A -> DC, D -> B, A -> BC}. But that is not the closure, because you can still generate at least one more FD, namely A-> BDC. And then there's A -> A. Keep trying to apply. The closure will be the set of all the FDs that you can derive.

Google 'functional dependencies armstrong's axioms" for many academic explanations. Eg this one.

philipxy
  • 14,867
  • 6
  • 39
  • 83