How to define a multi-valued MVD (transition rule) dependency?

I have some difficulties in determining the MVD for the following relationship

R=(A,B,C,D,E) where A->>B and B->>D 

Given the following tuples:

  (0,1,2,3,4) and (0,5,6,7,8) 

I would like to define all tuples that can complete the relation.

As I understand it, if tuples t(A)=u(A) must have a third tuple v(A)=t(A) and v(B)=t(B ) fourth tuple w(A)=t(A) and w(B)=u(B)

So I tried:

  ABCDE t 0 1 2 3 4 u 0 5 6 7 8 v 0 1 2 3 4 w 0 5 6 7 8 

However, I suppose I could have missed something (aka transitivity). Since the tuple does not include tuples ( v and w ):

  1.(0,1,2,7,4) 2.(0,1,2,3,8) 3.(0,1,6,3,4) 4.(0,5,2,7,8) 

where at least one of the tuples must be true. I just can't get it together and would appreciate any help! Regarding transitivity, I realized that A->>B and B->>D so A->>(DB) or that A->>BD , but I just can't fix it.

+5
source share
1 answer

In your example, with the given MVDs, it is misleading to make an example with two tuples like:

  (0,1,2,3,4) and (0,5,6,7,8) 

since there is no way to say from the example if for some B there are several values ​​of D (you have two different values ​​of B ), and there may be other multi-valued dependencies, since you have different values ​​for C and E with the same value of A

To show this more clearly, I am trying to rephrase your example using different, more specific data. Suppose your relationship is with multilevel companies, and the attributes are:

 A company name (N) (a company has a single name) B site (S) (a company can have multiple sites) C website (W) (a company has a single web site) D phone number (P) (a company site can have multiple phone numbers) E CEO (E) (a company has a single CEO) 

So, we can rewrite the circuit as C(N,S,W,P,E) and N->>S and S->>P , as in your example. It just means that you can have several sites for each company and several phones for each site.

Suppose company N1 has two sites S1 and S2 , and the phone numbers for each site are: P11 and P12 for site S1 and P21 and P22 for site S2 . Therefore, in C , at least the following two tuples must be present:

  (N1, S1, W1, P11, E1) and (N1, S2, W2, P21, E1) 

but, as in the case of your example, knowing only these two tuples does not give any other information about the existence of other tuples (this is because there can only be two sites with one (single) different phone for each site. Instead, from the description of a specific example we know that the following tuples must be present in C :

 NSWPE N1 S1 W1 P11 E1 N1 S2 W1 P21 E1 N1 S1 W1 P12 E1 N1 S2 W1 P22 E1 

Finally, with regard to transitivity, you correctly say that from A->>B and B->>D we can conclude that A->>(DB) , but not this A->>BD (this is a completely different thing! )

0
source

All Articles