Use the definition of functional dependency to argue that each of Armstrong’s axioms (reflexivity, augmentation, and transitivity) is sound.


  • Reflexivity rule If is a set of attributes and , then holds.

Let be a relation schema. Let . Let and be two tuples in such that:

Let be any attribute in . Then the value of the attribute in is the same as the value of the attribute in (since ).Thus,

Therefore, by definition of functional dependency, holds.

  • Augmentation rule If holds and is a set of attributes, then holds.

Let be a relation schema and holds on . Let . Let and be two tuples in such that:

Let be an attribute in . Then either or . Suppose . Then the value of the attribute in is the same as the value of the attribute in (since and we assumed that ). Now suppose . Then the value of the attribute in is the same as the value of the attribute in (this is because of the functional dependency that holds on and the fact that and have the same values on all attributes in due to the condition ). Since was arbitrary in we conclude that

Thus holds.

  • Transitivity rule If holds and holds, then .

Let be a relation schema and the set of functional dependencies holds on . Let and be two tuples in such that:

Since we know that holds on , it follows from the definition of functional dependency that:

Then, since we know that holds on , it follows from the definition of functional dependency that:

Therefore, we have shown that, whenever and are tuples such that , it must be that . But that is exactly the definition of