Definitions

Let be sets of attributes. Let the primary key be

  • Key attribute: In functional dependency, refers to any attribute that belongs to the primary key
  • Determinants: Attributes that determine another set of attributes, see below.
  • Partial Functional Dependency: A functional dependency where one or more non-key attributes depend upon a proper subset of the primary key. For example: and are partial dependency, but is not.
  • Transitive Dependency: A functional dependency consisting of only non-key attributes. is a transitive dependency.

Determinants

In functional dependency, a set of attributes determine another set of attributes if there each value of is associated with only one value of .

This is not the same as injective functions, as there can be multiple values in that map to the same , something that is not allowed in injective functions.

This does not mean each value in is mapped to only one value in

Another example is , meaning and together determine .

Armstrong’s Axioms

Let be sets.

Reflexivity

If is a subset of , then determines . This is obvious, since we can just take that value of that is in and use it on the left side.

This type of functional dependency is known as trivial

Augmentation

We can augment extra sets to a functional dependency, and it will still hold

Transitivity

This is different from transitive functional dependencies!

Functional dependencies are transitive.