vashu
vashu

Reputation: 105

Non trivial functional dependency in DBMS

What are the non-trivial functional dependencies in the following table?

A             B               C
1             1               1
1             1               0
2             3               2
2             3               2

What the basic concept?

Upvotes: 7

Views: 39074

Answers (6)

Sheldon vibes
Sheldon vibes

Reputation: 1

A FD (functional dependency) is trival, non-trivial or semitrivial.

Write what all attributes have functional dependency between them:

A->B, B->A, C->A, C->B

Using the augmentation inference rule we also get:

AC->B, BC->A

Augmentation says that if A -> B holds then AX -> BX holds.

So in total we have 5 non-trivial functional dependencies.

Upvotes: 0

user4280884
user4280884

Reputation: 121

Trivial: If an FD X → Y holds where Y subset of X, then it is called a trivial FD. Trivial FDs are always hold.

Non-trivial: If an FD X → Y holds where Y is not subset of X, then it is called non-trivial FD.

Completely non-trivial: If an FD X → Y holds where x intersect Y = Φ, is said to be completely non-trivial FD.

For example:

X = { b, c } and Y = { b, a }. If X → Y, then the FD is non-trivial but not completely non-trivial.

Upvotes: 12

user4831712
user4831712

Reputation: 1

non trivial dependency means X-->Y that is if Y is not proper subset of X table or relation with X then it said to be non trivial functional dependency.

Upvotes: 0

Dharmendra Verma
Dharmendra Verma

Reputation: 1

Trivial fd: x,y some attributes sets, if y is a subset of x then x->y implies is a trivial fd.

Non-trivial fd; x,y some attributes sets , if x intersection y goes to phi. then x->

Upvotes: -1

kayakpim
kayakpim

Reputation: 995

See the examples here: http://en.wikipedia.org/wiki/Functional_dependency

Especially the lecture one. I think in this case (for the data set you show) for instance if A=1 B=2 and if A=2 B=3. That is probably the dependency you are talking about.

Upvotes: 0

A functional dependency answers the question, "Given one value for X, do I find one and only one value for Y?" Both X and Y are sets; each one represents one or more attributes.

So we can ask ourselves, "Given one value for 'A', do I find one and only one value for 'B'?" And the answer is "Yes". (Assuming the sample data is representative.) That leads to the nontrivial functional dependency A->B.

And we continue with the question, "Given one value for 'A', do I find one and only one value for 'C'?" And the answer is "No". Given 1 for 'A', we find two different values for 'C': 1 and 0. No functional dependency there.

Repeat for every possible combination of attributes.

Upvotes: 13

Related Questions