Armstrong’s Axioms in DBMS
Armstrong’s Axioms
Armstrong’s Axioms are a set of rules of axioms. It was developed by William W.Armstrong in 1974. It is used to infer all the functional dependencies on a relational database.
Armstrong’s Axioms are sound in generating only functional dependencies in the closure of a set of functional dependencies (denoted as F+) when applied to that set (denoted as F).
Armstrong Inference Rules in DBMS
Armstrong’s Axioms has mainly two different sets of rules:
1. Primary Rule
2. Secondary Rule
Primary Rule
- Reflexive Rule
- Augmentation Rule
- Transitive Rule
Reflexive Rule:
If Y ⊆ X then X -> Y if Y is a subset of the attribute of X.
If X -> Y then XZ -> YZ for a pair of tuple t1 and t2.
∴ t1[X] = t2[X] then it implies that
∴ t1[Y] = t2[Y]
on the other hand,
If t1[XZ] = t2[XZ] then it implies that
∴ t1[YZ] = t2[YZ] then
∴ t1[XZ] = t2[YZ]
Augmentation Rule:
if X -> Y
then XZ -> YZ
Transitive Rule:
If X -> Y and Y -> Z
then If X -> Z
Secondary Rule
- Decomposition Rule
- Union Rule
- Pseudo Transitive Rule
Decomposition Rule:
If X -> YZ
then X -> Y and X -> Z
Union Rule:
If X -> Y and X -> Z
then X -> YZ
Pseudo Transitive Rule:
If X -> YZ and Y -> W
then X -> WZ
Armstrong Relation
Given a set of functional dependencies F, an Armstrong relation is a relation which satisfies all the functional dependencies in the closure 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.
The Rule of Armstrong Relation
In the traditional paradigm for designing a relational database scheme, the database designer. It determines a set of attributes and a set of data dependencies among the attributes. This information can be given as input to an algorithm that produces a database scheme satisfying a chosen set of properties