First introduced Armstrong ' s axioms,
The Reflection Law (reflexivity rule) for any LA (b) Subset of La (a), La (a)->la (b) is established
Add law (argumentation rule) if La (a)->la (b) is established, then La (a) La (y)->la (b) La (y) is established
Transfer law (transitivity rule) If there is La (a)->la (b), La (b)->la (c), then there is La (a)->la (c)
By the above rules, we can push and export the rules.
If there is a merger law (Union rule) La (a)->la (b), La (a)->la (c), there is La (a)->la (b) La (c);
Proof: According to Axiom, can be converted to LA (a)->la (b) La (a), La (a) La (b)->la (c) La (b), with the result of a transfer rate.
Split law (decomposition rule) If there is La (a)->la (b) La (c), then La (a)->la (b), La (a)->la (c) is established
Proof: According to Axiom, La (b) La (c)->la (b), La (b) La (c)->la (c) ... And then you know.
Pseudo-transitive law, if La (a)->la (b), and La (BC)->la (d), then La (a) La (c)->la (d);
It's foolish to ask for a dependency closure. The way to do this is to enumerate all the two tuples in a function dependency set to see if any of the above operations can be applied, and if so, add the result to the function dependency set to the next round, until the operation cannot calculate any results.
The following describes the property closures:
For a set of properties La (a), where F is present in R, the property in La (a) can be derived by f a set of properties that can be dominated by LA (a) +, which is calculated as
Set Result=la (a);
While (result does not change)
For (all the functional dependency F LA (x)->la (y))
if (X is a subset of result) result+=y;
For an attribute closure application:
In order to determine whether a is a super-key, you can find a + if it is r, then A is a super-key, otherwise it is not.
You can verify that a function dependency exists, for example, if I want to check La (a)->la (b), then I find that La (a) + if LA (b) is a la (a) + subset, then it exists, otherwise it does not exist.
We can also do this by finding each of La (a) in the set of properties in R and La (a) + and then combining all the sets of the subsets of La (a) + into La (a)->s into the f+, which is an alternative to the function dependency closure.
Database Learning notes A detailed explanation of _10_ function dependence--the axiom of function dependence and its law of pushing and property closure