Inference rules in DBMS:
- Reflexivity rule: If π is a set of attributes and πβπ, then πβ π holds. This rule states that a set of attributes always determines
itself or any of its subsets. The functional dependency πβ π proven by the reflexivity rule is called a trivial functional dependency.
- Augmentation rule: If πβ π holds and π² is a set of attributes then π²πβ π²π holds. This rule says that adding the same set of
attributes to both the left and right hand sides of a dependency results
in another valid dependency.
- Transitivity rule: If πβ π holds and πβ π² then πβ π² holds. This rule states that functional dependencies are transitive.
- Union rule: If πβ π holds and πβ π² holds then πβ ππ² holds. This rule allows us to combine a set of
functional dependency {X β A1, X β A2β¦ X β An
} into a single functional
dependency X β {A1, A2, β¦, An}.
- Pseudo transitivity rule: If πβ π and π²πβπ³ holds, then ππβπ³ holds.
- Decomposition rule: If πβ ππ² holds then πβ π holds and πβ π² holds.
Functional dependency is a constraint between two sets of
attributes A and B belonging to some relation R, such that for any tuples t1
and t2, if t1[A]=t2[A],then we must also have
t1[B]=t2[B] i.e. for a given value of A, there must be
only one value of B.
The functional
dependency is denoted as A β B i.e. B is
functionally dependent on A.
For ex:
Let A= ItemCd
B= { IName,
Op_stock, Cur_stock, Rate }
For a given value of ItemCd, there is only one value of all
the attributes in B or even a single attribute of B.
So we can say that
ItemCdβ { IName, Op_stock, Cur_stock, Rate }
and even
ItemCdβ IName or
ItemCdβ Op_stock and so on.
No comments:
Post a Comment