What Actually Determines What: Functional Dependencies Explained

August 16, 2026 · Part 3 of 20

Opening Scene

In the distillery’s records, knowing a batch’s source vineyard reliably tells you the region it came from — every batch from that vineyard is always from the same region, without exception. But knowing a batch’s alcohol content doesn’t reliably tell you anything else about it; two batches with identical alcohol content can differ in every other way imaginable. The first relationship is a genuine, reliable dependency. The second is just a coincidence of shared value. Distinguishing between the two, precisely, is the real foundation of organizing the records correctly.

A functional dependency captures this exact same precise, reliable relationship.

In Plain English

A functional dependency exists between two attributes when knowing the value of one reliably determines the value of the other — written as A → B, meaning “A determines B.” If vineyard reliably determines region, that’s written vineyard → region. Functional dependencies are the actual mathematical foundation underlying every normal form covered in this series; each normal form is defined precisely in terms of which functional dependencies are, and aren’t, allowed to exist in a properly normalized table.

The Old Way

Correctly identifying genuine functional dependencies, rather than mistaking coincidental correlation for real dependency, has always required careful, deliberate analysis:

  • A genuine functional dependency must hold universally, not just for the data currently on hand — if there’s any plausible future case where the same vineyard value could correspond to two different regions, the dependency doesn’t actually hold, regardless of what today’s data happens to show.
  • Distinguishing a real dependency from mere correlation is a common source of design mistakes — two attributes that happen to align in a small sample might simply be coincidental, not truly, reliably dependent.
  • Functional dependencies can involve combinations of attributes, not just single columns — a batch’s actual alcohol content might depend on the combination of its source vineyard and fermentation duration together, neither alone being sufficient to determine it.

Getting this right has always meant testing a suspected dependency against genuine domain knowledge and a representative range of data, not just the specific rows currently visible.

What’s Changing (and Why AI Is the Reason)

  1. AI-assisted functional dependency discovery can analyze real data at scale and propose likely functional dependencies automatically, dramatically speeding up what has traditionally been slow, manual analysis. Rather than a modeler manually testing dependency after dependency by inspection, AI-assisted analysis of a dataset’s actual value patterns can surface strong candidate dependencies for human confirmation, covered more deeply in Article 17.
  2. AI-assisted dependency validation can distinguish a genuine, universal functional dependency from a coincidental correlation present only in the current data, catching a common and genuinely costly design mistake. Since a functional dependency needs to hold universally, not just for currently visible data, AI-assisted analysis that reasons about a dependency’s plausibility across a wider range of scenarios can flag suspiciously narrow “dependencies” that might break under future data.
  3. Every subsequent normal form covered in this series — from 1NF through 5NF — is ultimately defined in terms of functional dependencies, meaning correctly identifying them is a genuine prerequisite for correctly applying any of that later material. Getting functional dependencies wrong at this foundational stage propagates errors into every later normalization decision built on top of them.

The Metaphor, Fully Extended

Distillery ElementFunctional Dependency Concept
Knowing a batch’s vineyard reliably tells you its region, every single timeA genuine functional dependency: vineyard → region
Two batches sharing the same alcohol content but differing in every other wayThe absence of a genuine dependency — coincidental shared value, not reliable determination
A reading only reliably determined by the combination of vineyard and fermentation duration togetherA functional dependency involving a combination of attributes, not a single column
A master distiller testing a suspected relationship against years of records before trusting itTesting a suspected functional dependency against genuine domain knowledge and representative data
A quality lab systematically scanning years of batch records for reliable determining relationshipsAI-assisted functional dependency discovery surfacing candidate dependencies from real data at scale

For Beginners: What to Actually Do

  • Practice the A → B notation and what it actually claims: knowing A always, reliably tells you B, not just usually or coincidentally.
  • Get comfortable distinguishing a genuine functional dependency from a coincidental correlation that only happens to hold in a small or current sample of data.
  • Before treating a relationship as a real dependency, ask whether it’s genuinely universal, or whether a plausible future case could break it.
  • Notice that a dependency can involve a combination of columns together, not just a single column determining another single column.

For Practitioners and Leaders: The Deeper Layer

  • Use AI-assisted functional dependency discovery to accelerate identifying genuine dependencies in your real data, treating proposals as candidates for human confirmation rather than final answers.
  • Use AI-assisted dependency validation to catch coincidental correlations mistaken for genuine, universal dependencies before they propagate into flawed normalization decisions.
  • Recognize that every normal form covered throughout the rest of this series depends on correctly identifying functional dependencies first, making this foundational step worth genuine investment.
  • Build a shared team discipline around testing suspected dependencies against domain knowledge and representative data, not just the specific rows currently on hand.

Quick Recap

  • A functional dependency exists when knowing one attribute’s value reliably, universally determines another’s, forming the mathematical foundation every normal form is defined on.
  • Genuine dependencies must hold universally, not just for current data, and can involve combinations of attributes rather than single columns.
  • AI-assisted functional dependency discovery can surface candidate dependencies from real data automatically, and AI-assisted validation can catch coincidental correlations mistaken for genuine dependencies.
  • Correctly identifying functional dependencies is a genuine prerequisite for correctly applying every normal form covered throughout the rest of this series.

Where This Fits in the Series

Article 2 covered the foundational concept of keys. This article covered what actually determines what — functional dependencies. Article 4 looks at one substance per vessel — First Normal Form.