Normalization
Attribute Closure
Attribute closure repeatedly applies dependencies until no new attributes appear.
Attribute closure
Attribute closure is a fixpoint computation. Start with the chosen attributes, scan the dependencies in deterministic order, add anything newly implied, and repeat until nothing changes. The trace matters because it shows why the final closure is not an authored answer. Note: each row in the render is a dependency firing produced by the compiler.
Closure trace
The recomputed closure contains 3 attributes after 2 firings. Note: the render lists the fired dependencies, what each firing added, and the closure after that step.
FD closure, candidate keys, BCNF decomposition, and lossless-join checks are exact finite computations on tiny schemas; dependency inference beyond these traces and physical schema design tradeoffs are beyond this book - no product claims.
Summary
Closure is the basic exact operation underneath superkeys, candidate keys, BCNF, and the lossless-join check. Note: the book uses finite dependency traces only; broader dependency inference systems and physical design tradeoffs are outside this model.