Edgar F. Codd released his original article "A Relational Model of Data for Large Shared Databanks" in June 1970.
All work after this, including the Boyce–Codd normal form method was based on this relational model.
[1] BCNF was formally developed in 1974 by Raymond F. Boyce and Edgar F. Codd to address certain types of anomalies not dealt with by 3NF as originally defined.
[2] As mentioned, Chris Date has pointed out that a definition of what we now know as BCNF appeared in a paper by Ian Heath in 1971.
A relational schema R is in Boyce–Codd normal form if and only if for every one of its functional dependencies X → Y, at least one of the following conditions hold:[5] If a relational schema is in BCNF, then it is automatically also in 3NF because BCNF is a stricter form of 3NF.
Beeri and Bernstein showed in 1979 that, for example, a set of functional dependencies {AB → C, C → B} cannot be represented by a BCNF schema.
[7] Consider the following non-BCNF table whose functional dependencies follow the {AB → C, C → B} pattern: For each Person / Shop type combination, the table tells us which shop of this type is geographically nearest to the person's home.
This would imply contradictory answers to the question: "What is Eagle Eye's Shop Type?"
Unfortunately, although this design adheres to BCNF, it is unacceptable on different grounds: it allows us to record multiple shops of the same type against the same person.