We define the closure of F to be set of all FD, including those that can be inferred.
For example, if we have FDs X → Y and Y -> Z, even if not explicitly stated, Y - Z is logically implied.
Redundant FDs are not included in this set.
To compute it, we use Armstrong's axioms.
- Reflexitivity: if X is subset of Y, then X → Y
- Union: if X → Y and X →Z, then X → YZ
- Augmentation: if X → Y, then XZ → YZ
- Decomposition: if X → YZ, then X → Y and X → Z
- Transitivity: if X → Y and Y → Z, then X → Z
- Pseudo-Transitivity: if X → Y and Y → Z, then XY → Z