0

In wikipedia BCNF definition is as follows

A relational schema R is in Boyce–Codd normal form if and only if for every one of its dependencies X → Y, at least one of the following conditions hold:

X → Y is a trivial functional dependency (Y ⊆ X)

X is a superkey for schema R

I am wondering , why it is defined as "Superkey" instead of a "minimal Superkey".

Consider a relation schema R(A,B,C,D,E) ,let (A,B) be a key(its minimal). Then AB->CDE, holds (also no other nontrivial functional dependecies are present,as per the definition of schema, in this particular example). Also (A,B,C) is a superkey. ABC->DE also holds but its trivial. My doubt is, if we only specify the condition for minimal superkey , condition for superkey is already implied isn't it ? In all the BCNF example problem I did, to check if a schema is in BCNF. If the LHS of all non trivial functional dependencies present, is a "key". Then the schema is in BCNF. If it is holding for a key ,then its true for all the superkeys based on that key , isn't it ?

  • Because that's how it is. If it said minimal/irreducible superkey, ie CK, it wouldn't give the condition we call BCNF. "Why" is not a helpful or meaningful question in math. We assume things & things follow. We can reasonably ask for a proof/explanation that something follows, or for the first bad step in an argument. What kind of answer do you expect? Why is 2+2=4 & not 47? Can you ask a clearer question? Maybe you have an expectation that some pair of conditions/definitions are equivalent based on certain reasoning that you can give that we can show the faults in or the correctness of? – philipxy Jan 12 '19 at 01:35
  • Eg: Maybe you think adding "minimal" would give a definition of the same condition, that we call BCNF? (It wouldn't.) If so, give your justification, so we can show some place(s) where it goes wrong. – philipxy Jan 12 '19 at 01:35
  • I asked it because, consider a relation schema R(A,B,C,D,E) ,let (A,B) be a key(its minimal). Then AB->CDE, holds (also no other nontrivial functional dependecies are present,as per the definition of schema, in this particular example). Also (A,B,C) is a superkey. ABC->DE also holds but its trivial. My doubt is, if we only specify the condition for minimal superkey , condition for superkey is already implied isn't it ? I thought there would be some reason for specifying the condition as superkey instead of minimal superkey, I was asking for that particular reason. – Mathews George Jan 12 '19 at 02:09
  • Please clarify via post edits, not comments. PS 1. Why you asked why or what your doubts are is not a question. So: What is your question? You mean, what's wrong with a certain argument, but you don't give it clearly. 2. ABC->DE is not trivial. However, it does hold when ABC is a superkey. 3. If the condition given by your definition with "minimal" holds, then BCNF holds. And superkeys that are proper supersets of a CK will be determinants. But they can violate your definition--they can fail both cases/bullets/conditions--eg ABC->DE. They can be present in BCNF but not per your definition. – philipxy Jan 12 '19 at 02:33
  • PS Notice that my last comment shows that you are wrong, but not "why" you are wrong in the sense of showing a certain flaw in your reasoning. Because "My doubt is, if we only specify the condition for minimal superkey , condition for superkey is already implied isn't it ?" is not clear--most importantly, the "is already implied" part. It's not clear enough to argue against. Use enough words, sentences & references to parts of examples to be clear. – philipxy Jan 12 '19 at 02:37
  • In all the BCNF example problem I did, to check if a schema is in BCNF. If the LHS of all non trivial functional dependencies present, is a "key". Then the schema is in BCNF. If it is holding for a key ,then its true for all the superkeys based on that key , isn't it ? I hope that ,my point is clear. – Mathews George Jan 12 '19 at 02:40
  • I just told you, there are BCNF cases where FDs with determinants that are non-minimal superkeys (proper supersets of CKs) fail your definition. Like ABC->DE! (If your definition is satisfied, we have BCNF; but BCNF can be satisfied when your definition isn't.) PS You are not clear. And please clarify via post edits. PS Maybe you want a definition with "X is *a superset of* a minimal superkey"--but that *is the same thing* as "X is a superkey". – philipxy Jan 12 '19 at 02:49
  • You are not clear when you write "if we only specify the condition for minimal superkey , condition for superkey is already implied". But think: *If* a FD is out of a CK then bullet 2 is satisfied. But all the FDs out of a proper superset of that CK will *fail* it because they are not out of a CK so your definition says the relation is not in BCNF when it is. I can't argue against the quoted sentence because it doesn't make sense. It's just a jumble of words that would be part of a clear argument. PS When AB->CDE holds so do other non-trivial FDs--superset of AB -> subset of CDE all hold. – philipxy Jan 12 '19 at 03:10
  • I am clear now. There was some misunderstanding with "trivial" and "non-trivial" functional dependencies. – Mathews George Jan 12 '19 at 03:12
  • I just told you "also no other nontrivial functional dependecies are present,as per the definition of schema, in this particular example" is wrong. I already told you "ABC->DE [is] trivial" is wrong. Hmm... your last edit was "34 minutes" ago, did you mean to post a newer one? PS See my last comment, I may have edited it since you read it. PS "If it is holding for a key ,then its true for all the superkeys based on that key , isn't it ?"--("based on" is not clear, but:) The bullet applies to *determinants of non-trivial FDs*. And it's *false* for determinants that are non-minimal superkeys. – philipxy Jan 12 '19 at 03:30
  • I am not a native english speaker. So the definitions, which are present in english, sometimes I misinterpret. Anyway,It is clear now. Thanks. – Mathews George Jan 12 '19 at 03:45
  • 1
    You can see [this answer](https://stackoverflow.com/a/54277901/2382734). – Renzo Jan 20 '19 at 16:05

0 Answers0