Functional dependencies rule out certain tuples from being in a relation. Multivalued dependency, however, do not rule out the existence of certain tuples; instead, they require that other tuples of a certain form be present in the relation.

Definition

Let be a relation schema and let .

The multivalued dependency ( multidetermines ) holds on if in any legal relation , for all pairs of tuples such that , there exists tuples that satisfies all of the followings:

The following is a tabular representation of the multivalued dependency .

EAC
EBC
EAD
EBD

Alternate definition

Let be a relation schema with a set of attributes that are partitioned into 3 nonempty subsets .

Then, holds on if and only if for all possible relations :

Note that since the behaviour of and are identical, it follows that .

Use of multivalued dependencies

Multivalued dependencies can be used to:

  • Test relations to determine whether they are legal under a given set of functional and multivalued dependencies.
  • Specify constraints on the set of legal relations.

If a relation fails to satisfy a given multivalued dependency, a relation that satisfies the multivalued dependency can be constructed by adding additional tuples to .