|Normalization is Data Reification|
|[ DI/UM ]|
Abstract: This report presents a constructive, calculational approach to relational database normalization theory. The main corpus of the report is devoted to showing that relational database model theory can be regarded as a subset of SETS , a data reification calculus based on set-theory and (a modest use of) category theory. We present a new set of SETS laws which prevent from the violation of normal forms caused by partial dependencies, transitive dependencies and multivalued dependencies. These are isomorphism laws which eliminate a ``semantic'' datatype invariant and induce a ``concrete'' data invariant in the reification process corresponding to the normalization task taking place. The scope of SETS is much wider than the relation model and extends to recursive datatypes, imperative programming etc. However, database design has been so far one of its most relevant areas of practical application, including industrial information system design.