Skip to content
Official PYQ · 2003

GATE CS 2003 Q85 — Normal Forms

Explain with AI

Consider the following functional dependencies in a database.Date_of_Birth →AgeAge →EligibilityName →Roll_numberRoll_number →NameCourse_number →Course_nameCourse_number →Instructor(Roll_number, Course_number) →Grade\begin{array}{|l|l|}\hline \text{Date\_of\_Birth } \to \text{Age} & \text{Age } \to \text{Eligibility} \\ \hline \text{Name } \to \text{Roll\_number} & \text{Roll\_number }\to \text{Name} \\ \hline \text{Course\_number }\to \text{Course\_name} & \text{Course\_number } \to\text{Instructor} \\ \hline \text{(Roll\_number, Course\_number) }\to\text{Grade} & \text{} \\ \hline \end{array}The relation (Roll_number, Name, Date_of_birth, Age) is

Choose one option
View worked solution

Answer: D

To determine the normal form of the relation R(Roll_number,Name,Date_of_birth,Age)R(\text{Roll\_number}, \text{Name}, \text{Date\_of\_birth}, \text{Age}), let us analyze its functional dependencies (FDs) and candidate keys.

1. Identify Relevant Functional Dependencies

From the given set of FDs, the ones applicable to the attributes in RR are:

  • Date_of_birth→Age\text{Date\_of\_birth} \to \text{Age}
  • Name→Roll_number\text{Name} \to \text{Roll\_number}
  • Roll_number→Name\text{Roll\_number} \to \text{Name}

2. Find the Candidate Keys

Let us compute the attribute closures to find the candidate keys:

  • (Roll_number,Date_of_birth)+={Roll_number,Date_of_birth,Name,Age}(\text{Roll\_number}, \text{Date\_of\_birth})^+ = \{\text{Roll\_number}, \text{Date\_of\_birth}, \text{Name}, \text{Age}\}
  • (Name,Date_of_birth)+={Name,Date_of_birth,Roll_number,Age}(\text{Name}, \text{Date\_of\_birth})^+ = \{\text{Name}, \text{Date\_of\_birth}, \text{Roll\_number}, \text{Age}\}

Since Date_of_birth\text{Date\_of\_birth} does not appear on the right-hand side of any FD, it must be part of every candidate key. Thus, the candidate keys of RR are:

Candidate Keys={Roll_number,Date_of_birth} and {Name,Date_of_birth}\text{Candidate Keys} = \{\text{Roll\_number}, \text{Date\_of\_birth}\} \text{ and } \{\text{Name}, \text{Date\_of\_birth}\}

3. Classify Attributes

  • Prime attributes (part of any candidate key): {Roll_number,Name,Date_of_birth}\{\text{Roll\_number}, \text{Name}, \text{Date\_of\_birth}\}
  • Non-prime attribute: {Age}\{\text{Age}\}

4. Check for Normal Forms

  • Second Normal Form (2NF): A relation is in 2NF if and only if there are no partial dependencies (i.e., no non-prime attribute depends on a proper subset of any candidate key).
    Consider the FD: Date_of_birth→Age\text{Date\_of\_birth} \to \text{Age} Here, Date_of_birth\text{Date\_of\_birth} is a proper subset of the candidate key {Roll_number,Date_of_birth}\{\text{Roll\_number}, \text{Date\_of\_birth}\} and it determines the non-prime attribute Age\text{Age}. This is a partial dependency.

Since the relation violates 2NF, it is not in 2NF. Consequently, it cannot be in 3NF or BCNF.

Therefore, the relation is in none of the above normal forms.

Free practice · Your answers on this page are not saved.

Published
Report a correction
Keep exploringMore Normal Forms questions