This document discusses functional dependencies and database normalization. It begins by defining functional dependencies and providing examples. It then covers determining keys of relations, different types of relationships, properties of functional dependencies, and the closure algorithm. The document concludes by discussing problems that can arise from redundant data and how to decompose relations into Boyce-Codd Normal Form to eliminate anomalies through normalization.