Welcome to TDBSoverflow, Our class's own StackOverflow. Our rules:
  1. Use only meaningful and self-explanatory titles
  2. Tag your questions with meaningful keywords
  3. Use upvotes and downvotes to rate the answers
  4. When you receive a satisfying answer - Click the "V" button
Remember: you may get up to 5 bonus points to your final grade!

Functional Dependency Preservation definition and clarification

0 votes
Hi all,

Lets say we have the relation R(A,B,C,D)

with the following function dependencies:

A, B -> C

B -> A

and we decompose R as follows:
R1( A,B) - Is in BCNF with superkey {B} and the FD B -> A holds in it.
R2(B, C, D).

My questions are:
1. Does the FD A,B -> C holds in R1?
2. Does the FD B->C holds in R2?

As a follow-up question to both, if the answer is yes, is it because of transitivity in the original set of FDs where B->A (B -> A, B -> C => B -> C holds in R) or is it because we have R2 in which B->A holds? If the answer is no, does it mean we lost that FD?

asked Feb 5, 2018 by uribracha (3,110 points)
edited Feb 5, 2018 by uribracha
Do you have a typo? C is not in R2, and A is not in R1, so you can't talk about FDs involving columns not in the relation
Indeed I had a typo.

1 Answer

+1 vote
Best answer

B --> C holds in R2 - this Dependency is deduced from the given ones, and will be valid in any relation involving B and C. (For the followup - it's deduced from transitivity)

C is not in R1 so any FD involving it isn't relevant there

answered Feb 5, 2018 by Assaf (31,090 points)
selected Feb 5, 2018 by uribracha