Functional dependencies is dealing with one to one or one to many attributes. It can be trivial dependency or non trivial dependency. Let's get into some ffurther detail, if left hand side is totally independent of right hand side then it is known as non trivial dependency. For example A->B is a non trivial functional dependency if A and B both are independent of each other.
And a functional dependency is trivial functional dependency if left hand side have all the attributes that are at the right hand side of the functional dependency. Trivial means obvious, its obvious that if we have all the attributes on Right hand side at left hand side then the dependency follow.
Closure set of attributes is used to identify some more functional dependencies and sometimes it also helps in identifying candidate keys. Some other uses of closure set includes identifying equivalence of functional dependencies and find irreducible set of functional dependencies and many more...
And a functional dependency is trivial functional dependency if left hand side have all the attributes that are at the right hand side of the functional dependency. Trivial means obvious, its obvious that if we have all the attributes on Right hand side at left hand side then the dependency follow.
Before getting into Normal forms let us get familiar to closure set of attributes. Simple steps to find closure set of attributes:
1) Equate attribute to X for which closure needs to be identified.
2) Take functional dependencies one by one and check whether left hand side of functional dependency is available in X. If so, check whether right hand side of functional dependency is there in X or not and if those attributes are absent add them to X. Loop this step till no more attributes can be added to X from the given dependency.
3) When no more attributes can be added to X, it will give us the closure set of the attributes which were taken in step 1.
Comments
Post a Comment