Inference Rules
Armstrong’s axioms are the complete set of basic inference rules used to infer all the functional dependencies on the relational database. An inference rule is a type of assertion that a user can apply to a set of functional dependencies to derive other FD (functional dependencies). These axioms in database management system were developed by the William w. Armstrong in 1974.
Following are the six most important rules for functional dependency:
1. Reflexive Rule
In the reflexive rule, if X is a set of attributes and Y is the subset of X, then X functionally determines Y.
If Y ? X, then X ? Y.
Example:
Lastname ? Firstname,
Lastname
then, Firstname, Lastname ? Lastname
2. Augmentation Rule
In the augmentation rule, if X determines Y and Z is any attribute set, then XZ determines YZ. It is also called as a partial dependency.
If X ? Y then XZ ? YZ for any Z.
Example:
Regno ?
Firstname, Lastname
then, Regno, address ? Firstname,
Lastname, address
3. Transitive Rule
In the transitive rule, if X determines Y and Y determines Z, then X also determines Z.
If X ? Y and Y ? Z then X ? Z.
Example:
Rollno ? addressand address ? Pincode
then Rollno ? Pincode
4. Union Rule
This rule is also known as additive rule. In the union rule, if X determines Y and X determines Z, then X also determines both Y and Z.
If X ? Y and X ? Z, then X ? YZ.
Proof of this Rule:
X ? Y (given) …. (1)
X ? Z (given) …. (2)
X ? XY (using Rule 2 on (1) by augmentation
with X) …. (3)
XY ? YZ (using Rule 2 on (2) by augmentation
with Y) …. (4)
X ? YZ (using Rule 3 on (3) and (4))
Example:
Rollno ? name and Rollno ? address
then Rollno ? name, address
5. Decomposition Rule
This rule is the reverse of Union rule and also known as project rule.In the decomposition rule, if X determines Y and Z together, then X determines Y and Z separately.
If X ? YZ then, X ? Y and X ? Z.
Proof of this Rule:
X ? YZ (given)…. (1)
YZ ? Z and YZ ?Y
( using reflexive method) …. (2)
X ? Y and X? Z (using transitive rule) …. (3)
Example:
Rollno ?
Firstname, Lastname
then, Rollno ? Firstname and Rollno ? Lastname
6. Pseudo transitive Rule
In the pseudo transitive rule, if X determines Y, and YZ determines W, then XZ also determines W.
If X ? Yand YZ ? W then XZ ? W.
Proof of this Rule:
X ? Y (given) …. (1)
YZ ? W (given) …. (2)
XZ ? YZ (using augmentation rule in (1))
…(3)
XZ ? W (using a transitive rule in (2) and (3))
Example:
Rollno ? name and name, marks ?percentage
then, Rollno,marks ? percentage