Define Relation

Enter all attributes of your relation

No functional dependencies added yet

Example: StudentID → StudentName means StudentID determines StudentName

Attribute Closure

Candidate Keys

Analyze the relation to find candidate keys

Normalization Analysis

1NF

First Normal Form

Pending

All attributes must have atomic (indivisible) values.

2NF

Second Normal Form

Pending

No partial dependency of non-prime attributes on candidate key.

3NF

Third Normal Form

Pending

No transitive dependency of non-prime attributes.

BCNF

Boyce-Codd Normal Form

Pending

For every FD X → Y, X must be a superkey.

BCNF Decomposition

Verification

Lossless Join Property
Dependency Preservation