[Relational Theory] [Carol's HomePage]
Coloured Line

Functional Dependencies (FDs)

Coloured Line

Coloured Line

Functional Dependency

Functional Determinancy (or Dependency)  Two data items, A and B, are said to be in a functionally determinant or dependent relationship if the same value of data-item B always appears with the same value of data-item A.

(Benynon-Davies 2004:584)


The
Functional dependency 

Describes the relationship between attributes in a relation. For example, if A and B are attributes of relation R, B is functionally dependent on A (denoted A → B), if each value of A is associated with exactly one value of B. (A and B may each consist of one of more attributes).

(Connolly & Begg 2005:393)


A functional dependency is a constraint between two sets of attributes from the database.

(Elmasri & Navathe 2004:304)


Functional dependency (FD) is a term derived from mathematical theory; it concerns the dependence of values of one attribute or set of attributes on those of another attribute or set of attributes. Formally, a set of attributes X is functionally dependent on a set of attributes Y if a given set of values for each attribute in Y determines a unique value for the set of attributes in X. The notation Y → X is often used to denote that X is functionally dependent on Y. The attributes in Y are sometimes known as the determinate of the FD Y → X.

(Hawryszkiewycz 1984:25)


Informally functional dependencies are a formal representation of single-valued facts.

(Hawryszkiewycz 1990:20)


A functional dependency (FD) defines the most commonly encountered type of relatedness property between data items of a database.

(O'Neil 1994:330)


The term functional dependence can be defined most easily this way: The attribute B is functionally dependent on A if A determines B. More precisely:
The attribute B is functionally dependent on the attribute A if each value in column A determines one and only one value in column B.

(Rob & Coronel 2002:63)


A functional dependency on a relation R is a statement of the form "If two tuples of R agree on attributes A1,A2,...,An (i.e., the tuples have the same values in their respective components for each of these attributes), then they must also agree in another attribute, B." We write this dependency formally as A1A2...An → B and sat that "A1,A2,...,An functionally determine B."

(Ullman & Widom 1997:118-9)

[Top]

Coloured Line

Full Functional Dependency

Y is 'fully functionally dependent' on X if it is dependent on all of X, not on any part of X.

(Carter 1995:119)


A functional dependency X → Y is a full functional dependency if removal of any attribute A from X means that the dependency does not hold anymore; that is, for any attribute A ∈ X, (X - {A}) does not functionally determine Y.

(Elmasri & Navathe 2007:362)


full functional dependency  Attribute Y of relation R is fully functionally dependent on X (could be a set of attributes) if it is functionally dependent on X (X → Y) and there is no Z a proper subset of X such that Z → Y

(Peterson 2006:9)

[Top]

Coloured Line

Partial Dependency


A partial dependency exists when a non-prime attribute is dependent on a proper subset (a part) of a candidate key.

Edmondson


A partial dependency exists when a non-null proper subset of a candidate key determines a non-prime attribute.

Edmondson


An attribute, a, is partially dependent on a set of attributes, S, if a is functionally determined by a proper subset of S.

Edmondson

[Top]

Coloured Line

Transitive Dependency

A binary relation R on a set A is transitive if for all elements x, y, z of A
x R y & y R z → x R z (Daintith and Nelson, 1989)
where '&' means 'and' and '→' mean 'implies'.

(Carter 1995:125)


Transitive dependency  A condition where A, B, and C are attributes of a relation such that if A → B and B → C, then C is transitively dependent on A via B (provided that A is not functionally dependent on B or C).

(Connolly & Begg 2005:397)


By the Transitivity FD Inference Rule, if X → Y and Y → Z then X → Z.
X → Z is a transitive dependency.

Edmondson


transitive functional dependency  If X → Z and Z → Y and Z is not a candidate key or a component of a candidate key, then X → Y transitively (or Y is transitively dependent on X via Z)

(Peterson 2006:9)


[Top]

Coloured Line

Carol Edmondson   <carol@cs.anu.edu.au>
URL: http://computer/people/Carol.Edmondson/theory/FDs.shtml
Last modified: 05 January 2007 15:20:38 EST