Functional Dependency (FD)
The existing relationship between two attributes is known as Functional Dependency.
Determinant: The left-hand side of functional dependency.
Dependent: The right-hand side of the functional dependency
Let α, β be sets of attributes.
Definition: Consider a relation schema r(R). Let α Í R and β Í R.
Given an instance of r(R), the instance satisfies the ‘functional dependency’ α à β, if for all pairs of tuples t1 and t2 in the instance such that t1[α] = t2[α], it is also the case that t1[β] = t2[β].
Example-1 :
Consider the following relation :
A | B | C | D |
a1 | b1 | c1 | d1 |
a1 | b2 | c1 | d2 |
a2 | b2 | c2 | d2 |
a2 | b3 | c2 | d3 |
a3 | b3 | c2 | d4 |
Here, some of the possible functional dependencies (FDs) are :
A→ C | D→B | AB→ C | CD → A |
A →A | B→ B | C →C | D →D |
Functional Dependency is further categorised into two parts:
- Trivial Functional dependency
- Non-Trivial Functional dependency
Trivial Functional Dependency:
- If B is a subset of A, A → B has trivial functional dependency.
- The following dependencies are also trivial like A → A, B → B
Non- Trivial Functional Dependency:
- if B is not a subset of A. A → B has a non-trivial functional dependency
- When A intersection B is NULL, then A → B is called complete non-trivial.
Reference Link