-1

I just want to be sure... If i've two dependencies like

  • a -> c
  • b -> c

Will it be the same as this one

  • a b -> c
Renzo
  • 26,848
  • 5
  • 49
  • 61
Zialt
  • 3
  • 1
  • What reference are you using? What is the *definition* of "FD"? What have you tried? Why do you suspect yes, and why no? What happens when you try numerous small examples (in case that disproves one choice)? What has your googling told you? Please read [ask]. – philipxy Jun 13 '17 at 20:34
  • It's not clear what you mean by "if... the same as" or what the "it" is that the 3rd FD would be "the same as". Look at what happens if we replace the FDs by other statements: If x=1 will it be the same as x>0? Do you mean, Are the *statements* "the same", or If x=1 then is x>0? Please use technical terms and clear sentences. Do you mean, is the pair holding the same as the 3rd holding? Or, if those 1st two hold, does that 3rd also hold? Ie, if the truth value of the conjunction of the 1st two is TRUE, will that truth value be the same as the truth value of the 3rd? ("if"+""the same as"=ugly.) – philipxy Jun 13 '17 at 22:02

1 Answers1

1

If I understand correctly your question, you are asking if the two sets of functional dependencies {a → c, b → c} and {ab → c} are equivalent. The answer to this question is no.

From either a → c or b → c you can prove ab → c (by applying the definition of functional dependency: x → y if and only if, when two tuples have the same values for x, they have also the same values for y). You can also derive ab → c with the Armstrong’s Axioms (e.g. starting from a → c and applying first the augmentation axiom with b, obtaining ab → bc, then applying the decomposition to obtain ab → c).

But the viceversa is not true: you cannot prove from ab → c that a → c, neither that b → c, and equivalently you cannot derive any of the two dependencies from ab → c through the Armstrong’s Axioms. For an example, consider the dependency StudentNumber, CourseName → Grade (that asserts that there can be only a Grade from a certain couple StudentNumber and CourseName). From this dependency you cannot assert that for a StudentNumber there is only a Grade, or for a CourseName there is only a Grade.

Renzo
  • 26,848
  • 5
  • 49
  • 61