BCNF Stands for Boyce–Codd Normal Form: Meaning, Condition, and Why It Matters

BCNF Stands for Boyce–Codd Normal Form: Meaning, Condition, and Why It Matters

Verified Sources
Nov 4, 2026

Boyce-Codd Normal Form (BCNF) Explained

BCNF stands for Boyce–Codd Normal Form. In multiple-choice terms, that corresponds to (iii) Boyce Codd Normal Form.

To be precise, a relation schema RR is in BCNF if, for every FD of the form X→YX \rightarrow Y, at least one of these holds:

  • it’s a trivial dependency (the RHS YY is contained in XX), or
  • XX is a superkey for RR.

Conceptually, BCNF strengthens 3NF by insisting that the determinant of any non-trivial dependency must be a superkey—reducing anomalies that can still remain after 3NF.

Direct answer to the prompt

Correct option: (iii) Boyce Codd Normal Form.

Key terms to remember:

  • BCNF
  • Boyce
  • Codd
  • FD

How to check whether a relation is in BCNF

  1. 1
    Step 1

    Obtain all relevant FDs for the relation RR.

  2. 2
    Step 2

    Ignore trivial ones where Y⊆XY \subseteq X.

  3. 3
    Step 3

    Check if XX determines every attribute of RR (i.e., whether XX is a superkey).

  4. 4
    Step 4

    If there exists any non-trivial X→YX \rightarrow Y where XX is not a superkey, then RR is not in BCNF.

  5. 5
    Step 5

    Use the violated FD to decompose so that the dependency is enforced in a smaller schema (details depend on the decomposition approach).

Pro Tip

When checking BCNF, focus on determinants (the left side of FDs). BCNF violations happen when a determinant is not a superkey even though it functionally determines something.

Warning about the most common confusion

BCNF is not the same as 3NF. It is stricter: even if a dependency is allowed by 3NF due to prime attributes, BCNF may still reject it if the determinant is not a superkey. The refinement matters for eliminating certain redundancy.

BCNF vs. 3NF (high-level comparison)

Both aim to reduce redundancy and anomalies, but BCNF’s key constraint is stronger.

Normal formConstraint on non-trivial FD XrightarrowYX\\rightarrow Y
3NFEither XX is a superkey, or YY consists of prime attributes (depending on the specific formulation)
BCNFXX is a superkey (for every non-trivial FD)

Normalization hierarchy (conceptual roadmap)

Atomic values

1NF

Restructure to ensure domains are atomic."

No partial dependency

2NF

Eliminate partial dependencies on composite keys."

Controlled transitive effects

3NF

Reduce redundancy via 3NF rules."

Determinant must be a superkey

BCNF

Eliminate anomalies not removed by 3NF."

Visual intuition: when BCNF fails

A BCNF failure corresponds to a non-trivial FD where the determinant is “too weak.”

Knowledge Check

Question 1 of 4
Q1Single choice

BCNF stands for which of the following?