Inference Rules - Problems
Inference Rules - Problems
W->Y
WX->XY
….
2) X->Y , Z is a subset of Y then prove X->Z
3) X->Y, Z->W , prove XZ->YW
Z->W
XZ->XW
XZ->W---------(1)
X->Y
XZ->ZY
XZ->Y-----------(2)
4) Consider a relation schema R with attributes
A,B,C,D,E,F and FD
A->BC
B->E
CD->EF
prove that functional dependency
AD->F in R
A->BC
A->C
AD->CD------(1)
CD->EF-------(2)
AD->EF
AD->F
5) X->Y, Y->Z prove X->YZ
Y->Z
YY->YZ
Y->YZ----(1)
X->Y------(2)
6) X->Y, Z->W prove XZ->YW
X->Y
XZ->YZ----------(1)
Z->W
YZ->YW---------(2)
7) X->Y, XY->Z prove X->Z
i) X->Y, X->W, WY->Z prove X->Z
ii) XY->Z, Y->W prove XW->Z
iii) X->Z, Y->Z prove X->Y
iv) XY->Z, Z->X prove Z->Y
v) XY->Z, Z->W prove X->W
Is B->G in F+ where
R={ A,B,C,D,E,F,G} and
F={ B->CD,
E->F
D->E
B->A
AD->B
F->G } using the algorithm compute B+ and
check if it contains G.
B+= B
BCD
BCDE
BCDEF
BCDEFG
R={V,W,X,Y,Z}
F={ W->XY
Y->V
Z->V
X->V }
compute X+ then determine
a) X is a key of R?
b) X ->VZ holds in R
Stages of Normalisation
Unnormalised
(UDF)
Remove repeating groups
First normal form
(1NF)
Remove partial dependencies
Second normal form
(2NF)
Remove transitive dependencies
Third normal form
(3NF)
Remove remaining functional
dependency anomalies
Boyce-Codd normal
form (BCNF)
Remove multivalued dependencies
Fourth normal form
(4NF)
Remove remaining anomalies
Fifth normal form
(5NF)
Unnormalised Normal Form (UNF)
ORDER
Customer No: 001964 Order Number: 00012345
Name: Mark Campbell Order Date: 14-Feb-2002
Address: 1 The House
Leytonstone
E11 9ZZ
1. Remove the outermost repeating group (and any nested repeated groups it may
contain) and create a new relation to contain it. (rename original to indicate 1NF)
ORDER-1 (order-no, order-date, cust-no, cust-name, cust-add, order-total
(prod-no, prod-desc, unit-price, ord-qty, line-total)
2. Add to this relation a copy of the PK of the relation immediately enclosing it.
ORDER-1 (order-no, order-date, cust-no, cust-name, cust-add, order-total
(order-no, prod-no, prod-desc, unit-price, ord-qty, line-total)
3. Name the new entity (appending the number 1 to indicate 1NF)
ORDER-LINE-1 (order-no, prod-no, prod-desc, unit-price, ord-qty, line-total)
4. Determine the PK of the new entity
ORDER-LINE-1 (order-no, prod-no, prod-desc, unit-price, ord-qty, line-total)
Second Normal Form (2NF)
Definition: A relation is in 2NF if, and only if, it is in 1NF and every
non-key attribute is fully dependent on the primary key.
Remove partial functional dependencies into a new relation
(prod-desc, unit-price)
2. Add to this relation a copy of the attribute(s) which determines these offending
attributes. These will automatically become the primary key of this new relation..
ORDER-LINE-1 (order-no, prod-no, ord-qty, line-total)
(prod-no, prod-desc, unit-price)
3. Name the new entity (appending the number 2 to indicate 2NF)
PRODUCT-2 (prod-no, prod-desc, unit-price)
4. Rename the original entity (ending with a 2 to indicate 2NF)
ORDER-LINE-2 (order-no, prod-no, ord-qty, line-total)
Third Normal Form (3NF)
Definition: A relation is in 3NF if, and only if, it is in 2NF and every
non-key attribute is non-transitively dependent on the primary key.
Remove transitive dependencies into a new relation
(cust-name, cust-add )
2. Add to this relation a copy of the attribute(s) which determines these offending
attributes. These will automatically become the primary key of this new relation..
ORDER-2 (order-no, order-date, cust-no, order-total
order-no prod-no
ORDER PRODUCT