
- DBMS Tutorial
- DBMS - Home
- DBMS - Overview
- DBMS - Architecture
- DBMS - Data Models
- DBMS - Data Schemas
- DBMS - Data Independence
- Entity Relationship Model
- DBMS - ER Model Basic Concepts
- DBMS - ER Diagram Representation
- DBMS - Generalization, Aggregation
- Relational Model
- DBMS - Codd's Rules
- DBMS - Relational Data Model
- DBMS - Relational Algebra
- DBMS - ER to Relational Model
- DBMS- SQL Overview
- Relational Database Design
- DBMS - Database Normalization
- DBMS - Database Joins
- Storage and File Structure
- DBMS - Storage System
- DBMS - File Structure
- Indexing and Hashing
- DBMS - Indexing
- DBMS - Hashing
- Transaction And Concurrency
- DBMS - Transaction
- DBMS - Concurrency Control
- DBMS - Deadlock
- Backup and Recovery
- DBMS - Data Backup
- DBMS - Data Recovery
- DBMS Useful Resources
- DBMS - Quick Guide
- DBMS - Useful Resources
- DBMS - Discussion
What is an equivalence of sets of functional dependencies?
A set of functional dependencies (FD) F is said to cover another set of functional dependencies E if every FD in E is also in F closure; that is, if every dependency in E can be inferred from F.
Alternatively, we can say E is covered by F. Two sets of functional dependencies E and F are equivalent if E+= F+. That is E is equivalent to F if E covers F and F covers E.
To determine whether F covers E we calculate X+ with respect to F for each FD X->y in E and then check whether X+ includes the attributes Y.
Example
R=(A,B,C,D,E,F)
F1={A->BC, B->CDE, AE->F}
F2={A->BCF, B->DE, E->AB}
Check whether F1 and F2 are equivalent or not.
Solution
To check F1 covers F2 −
A+={A,B,C,D,E,F} contains B,C,F
B+={B,C,D,E} contains D,E
E+={E} contains A,B
So F1 does not cover F2.
Hence F1 and F2 are not equivalent.
Example
Consider another example where two functional dependencies are equivalent.
R=(A,C,D,E,H)
F1={A->C, AC->D, E->AD, E->H},
F2={A->CD, E->AH}
Check whether F1 and F2 are equivalent or not?
Solution
To check F1 covers F2 −
A+={A,C,D} contains C,D
E+={A,D,E,H} contains A,H
So F1 covers F2
To check F2 covers F1:
A+={A,C,D} contains C
{ A,C}+={A,C,D} contains D
E+={A,C,D,E,H} contains A,D,H
So F2 covers F1.
Hence F1 and F2 are equivalent.
This is represented diagrammatically as follows −
- Related Articles
- What is the minimal set of functional dependencies or canonical cover of FD?
- Basics of Functional Dependencies and Normalization for Relational Databases
- Explain the inference rules for functional dependencies in DBMS
- Which normal form is the highest that satisfies the functional dependencies(DBMS)?
- What are Control dependencies?
- Types of dependencies in DBMS
- What is the role of test automation in functional testing?
- Explain the problems for equivalence of two regular expressions.
- What is functional dependency in DBMS?
- What is Functional Testing (Types & Examples)?
- Write the dependencies of backbone.js in javascript?
- What is Functional Interface in Java 8?
- What is a functional interface in Java?
- What is the generic functional interface in Java?
- What is functional dependency and transitive dependency (DBMS)?
