# Armstrong's axioms

Armstrong's axioms are a set of axioms (or, more precisely, inference rules) used to infer all the functional dependencies on a relational database. They were developed by William W. Armstrong in his 1974 paper.[1] The axioms are sound in generating only functional dependencies in the closure of a set of functional dependencies (denoted as ${\displaystyle F^{+}}$ ) when applied to that set (denoted as ${\displaystyle F}$ ). They are also complete in that repeated application of these rules will generate all functional dependencies in the closure ${\displaystyle F^{+}}$ .

More formally, let ${\displaystyle \langle R(U),F\rangle }$ denote a relational scheme over the set of attributes ${\displaystyle U}$ with a set of functional dependencies ${\displaystyle F}$ . We say that a functional dependency ${\displaystyle f}$ is logically implied by ${\displaystyle F}$ ,and denote it with ${\displaystyle F\models f}$ if and only if for every instance ${\displaystyle r}$ of ${\displaystyle R}$ that satisfies the functional dependencies in ${\displaystyle F}$ , r also satisfies ${\displaystyle f}$ . We denote by ${\displaystyle F^{+}}$ the set of all functional dependencies that are logically implied by ${\displaystyle F}$ .

Furthermore, with respect to a set of inference rules ${\displaystyle A}$ , we say that a functional dependency ${\displaystyle f}$ is derivable from the functional dependencies in ${\displaystyle F}$ by the set of inference rules ${\displaystyle A}$ , and we denote it by ${\displaystyle F\vdash _{A}f}$ if and only if ${\displaystyle f}$ is obtainable by means of repeatedly applying the inference rules in ${\displaystyle A}$ to functional dependencies in ${\displaystyle F}$ . We denote by ${\displaystyle F_{A}^{*}}$ the set of all functional dependencies that are derivable from ${\displaystyle F}$ by inference rules in ${\displaystyle A}$ .

Then, a set of inference rules ${\displaystyle A}$ is sound if and only if the following holds:

${\displaystyle F_{A}^{*}\subseteq F^{+}}$

that is to say, we cannot derive by means of ${\displaystyle A}$ functional dependencies that are not logically implied by ${\displaystyle F}$ . The set of inference rules ${\displaystyle A}$ is said to be complete if the following holds:

${\displaystyle F^{+}\subseteq F_{A}^{*}}$

more simply put, we are able to derive by ${\displaystyle A}$ all the functional dependencies that are logically implied by ${\displaystyle F}$ .

## Axioms (primary rules)

Let ${\displaystyle R(U)}$ be a relation scheme over the set of attributes ${\displaystyle U}$ . Henceforth we will denote by letters ${\displaystyle X}$ , ${\displaystyle Y}$ , ${\displaystyle Z}$ any subset of ${\displaystyle U}$ and, for short, the union of two sets of attributes ${\displaystyle X}$ and ${\displaystyle Y}$ by ${\displaystyle XY}$ instead of the usual ${\displaystyle X\cup Y}$ ; this notation is rather standard in database theory when dealing with sets of attributes.

### Axiom of reflexivity

If ${\displaystyle X}$ is a set of attributes and ${\displaystyle Y}$ is a subset of ${\displaystyle X}$ , then ${\displaystyle X}$ holds ${\displaystyle Y}$ . Hereby, ${\displaystyle X}$ holds ${\displaystyle Y}$ [${\displaystyle X\to Y}$ ] means that ${\displaystyle X}$ functionally determines ${\displaystyle Y}$ .

If ${\displaystyle Y\subseteq X}$ then ${\displaystyle X\to Y}$ .

### Axiom of augmentation

If ${\displaystyle X}$ holds ${\displaystyle Y}$ and ${\displaystyle Z}$ is a set of attributes, then ${\displaystyle XZ}$ holds ${\displaystyle YZ}$ . It means that attribute in dependencies does not change the basic dependencies.

If ${\displaystyle X\to Y}$ , then ${\displaystyle XZ\to YZ}$ for any ${\displaystyle Z}$ .

### Axiom of transitivity

If ${\displaystyle X}$ holds ${\displaystyle Y}$ and ${\displaystyle Y}$ holds ${\displaystyle Z}$ , then ${\displaystyle X}$ holds ${\displaystyle Z}$ .

If ${\displaystyle X\to Y}$ and ${\displaystyle Y\to Z}$ , then ${\displaystyle X\to Z}$ .

These rules can be derived from the above axioms.

### Decomposition

If ${\displaystyle X\to YZ}$ then ${\displaystyle X\to Y}$ and ${\displaystyle X\to Z}$ .

#### Proof

 1. ${\displaystyle X\to YZ}$ (Given) 2. ${\displaystyle YZ\to Y}$ (Reflexivity) 3. ${\displaystyle X\to Y}$ (Transitivity of 1 & 2)

### Composition

If ${\displaystyle X\to Y}$ and ${\displaystyle A\to B}$ then ${\displaystyle XA\to YB}$ .

#### Proof

 1. ${\displaystyle X\to Y}$ (Given) 2. ${\displaystyle A\to B}$ (Given) 3. ${\displaystyle XA\to YA}$ (Augmentation of 1 & A) 4. ${\displaystyle XA\to Y}$ (Decomposition of 3) 5. ${\displaystyle XA\to XB}$ (Augmentation 2 & X) 6. ${\displaystyle XA\to B}$ (Decomposition of 5) 7. ${\displaystyle XA\to YB}$ (Union 4 & 6)

### Union (Notation)

If ${\displaystyle X\to Y}$ and ${\displaystyle X\to Z}$ then ${\displaystyle X\to YZ}$ .

### Pseudo transitivity

If ${\displaystyle X\to ZY}$ and ${\displaystyle Y\to W}$ then ${\displaystyle X\to ZW}$ .

#### Proof

 1. ${\displaystyle X\to YZ}$ (Given) 2. ${\displaystyle Y\to W}$ (Given) 3. ${\displaystyle YZ\to WZ}$ (Augmentation of 2 & Z) 4. ${\displaystyle X\to WZ}$ (Transitivity of 1 and 3)

### Self determination

${\displaystyle I\to I}$ for any ${\displaystyle I}$ . This follows directly from the axiom of reflexivity.

### Extensivity

The following property is a special case of augmentation when ${\displaystyle Z=X}$ .

If ${\displaystyle X\to Y}$ , then ${\displaystyle X\to XY}$ .

Extensivity can replace augmentation as axiom in the sense that augmentation can be proved from extensivity together with the other axioms.

#### Proof

 1. ${\displaystyle XZ\to X}$ (Reflexivity) 2. ${\displaystyle X\to Y}$ (Given) 3. ${\displaystyle XZ\to Y}$ (Transitivity of 1 & 2) 4. ${\displaystyle XZ\to XYZ}$ (Extensivity of 3) 5. ${\displaystyle XYZ\to YZ}$ (Reflexivity) 6. ${\displaystyle XZ\to YZ}$ (Transitivity of 4 & 5)

## Armstrong relation

Given a set of functional dependencies ${\displaystyle F}$ , an Armstrong relation is a relation which satisfies all the functional dependencies in the closure ${\displaystyle F^{+}}$ and only those dependencies. Unfortunately, the minimum-size Armstrong relation for a given set of dependencies can have a size which is an exponential function of the number of attributes in the dependencies considered.[2]

## References

1. William Ward Armstrong: Dependency Structures of Data Base Relationships, page 580-583. IFIP Congress, 1974.
2. Beeri, C.; Dowd, M.; Fagin, R.; Statman, R. (1984). "On the Structure of Armstrong Relations for Functional Dependencies" (PDF). Journal of the ACM. 31: 30–46. CiteSeerX 10.1.1.68.9320. doi:10.1145/2422.322414.