SlideShare a Scribd company logo
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 1
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Module4
Relational Database Design
Algorithms and Further
Dependencies
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 3
Inference Rules for FDs (1)
 Given a set of FDs F, we can infer additional FDs that
hold whenever the FDs in F hold
 Armstrong's inference rules:
 IR1. (Reflexive) If Y subset-of X, then X -> Y
 IR2. (Augmentation) If X -> Y, then XZ -> YZ
 (Notation: XZ stands for X U Z)
 IR3. (Transitive) If X -> Y and Y -> Z, then X -> Z
 IR1, IR2, IR3 form a sound and complete set of
inference rules
 These are rules hold and all other rules that hold can be
deduced from these
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 4
Inference Rules for FDs (2)
 Some additional inference rules that are useful:
 Decomposition: If X -> YZ, then X -> Y and X ->
Z
 Union: If X -> Y and X -> Z, then X -> YZ
 Psuedotransitivity: If X -> Y and WY -> Z, then
WX -> Z
 The last three inference rules, as well as any
other inference rules, can be deduced from IR1,
IR2, and IR3 (completeness property)
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 5
Inference Rules for FDs (3)
 Closure of a set F of FDs is the set F+ of all FDs
that can be inferred from F
 Closure of a set of attributes X with respect to F
is the set X+ of all attributes that are functionally
determined by X
 X+ can be calculated by repeatedly applying IR1,
IR2, IR3 using the FDs in F
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
ALGORITHM - CLOSURE
Slide 11- 6
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Algorithm for Finding a Key K for R Given a
set F of Functional Dependencies
 Input: A universal relation R and a set of
functional dependencies F on the attributes
of R.
1. Set K := R;
2. For each attribute A in K {
Compute (K - A)+ with respect to F;
If (K - A)+ contains all the attributes in R,
then set K := K - {A};
}
Slide 11- 7
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 8
Equivalence of Sets of FDs
 Two sets of FDs F and G are equivalent if:
 Every FD in F can be inferred from G, and
 Every FD in G can be inferred from F
 Hence, F and G are equivalent if F+ =G+
 Definition (Covers):
 F covers G if every FD in G can be inferred from F
 (i.e., if G+ subset-of F+)
 F and G are equivalent if F covers G and G covers F
 There is an algorithm for checking equivalence of sets of
FDs
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 9
Minimal Sets of FDs (1)
 A set of FDs is minimal if it satisfies the
following conditions:
1. Every dependency in F has a single attribute for
its RHS.
2. We cannot remove any dependency from F and
have a set of dependencies that is equivalent to
F.
3. We cannot replace any dependency X -> A in F
with a dependency Y -> A, where Y proper-
subset-of X ( Y subset-of X) and still have a set
of dependencies that is equivalent to F.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 10
Minimal Sets of FDs (2)
 Every set of FDs has an equivalent minimal set
 There can be several equivalent minimal sets
 There is no simple algorithm for computing a
minimal set of FDs that is equivalent to a set F of
FDs
 To synthesize a set of relations, we assume that
we start with a set of dependencies that is a
minimal set
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 11
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 12
Properties of Relational
Decompositions (1)
 Relation Decomposition and
Insufficiency of Normal Forms:
 Universal Relation Schema:
 A relation schema R = {A1, A2, …, An}
that includes all the attributes of the
database.
 Universal relation assumption:
 Every attribute name is unique.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 13
Properties of Relational
Decompositions (2)
 Relation Decomposition and
Insufficiency of Normal Forms (cont.):
 Decomposition:
 The process of decomposing the universal relation
schema R into a set of relation schemas D =
{R1,R2, …, Rm} that will become the relational
database schema by using the functional
dependencies.
 Attribute preservation condition:
 Each attribute in R will appear in at least one
relation schema Ri in the decomposition so that no
attributes are “lost”.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 14
Properties of Relational
Decompositions (2)
 Another goal of decomposition is to have each
individual relation Ri in the decomposition D be in
BCNF or 3NF.
 Additional properties of decomposition are
needed to prevent from generating spurious
tuples
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 15
Properties of Relational
Decompositions (3)
 Dependency Preservation Property of a
Decomposition:
 Definition: Given a set of dependencies F on R,
the projection of F on Ri, denoted by pRi(F) where
Ri is a subset of R, is the set of dependencies X 
Y in F+ such that the attributes in X υ Y are all
contained in Ri.
 Hence, the projection of F on each relation
schema Ri in the decomposition D is the set of
functional dependencies in F+, the closure of F,
such that all their left- and right-hand-side
attributes are in Ri.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 16
Properties of Relational
Decompositions (4)
 Dependency Preservation Property of a
Decomposition (cont.):
 Dependency Preservation Property:
 A decomposition D = {R1, R2, ..., Rm} of R is
dependency-preserving with respect to F if the
union of the projections of F on each Ri in D is
equivalent to F; that is
((R1(F)) υ . . . υ (Rm(F)))+ = F+
Claim 1:
 It is always possible to find a dependency-
preserving decomposition D with respect to F such
that each relation Ri in D is in 3nf.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 17
Properties of Relational
Decompositions (5)
 Lossless (Non-additive) Join Property of a
Decomposition:
 Definition: Lossless join property: a decomposition D = {R1, R2,
..., Rm} of R has the lossless (nonadditive) join property with
respect to the set of dependencies F on R if, for every relation
state r of R that satisfies F, the following holds, where * is the
natural join of all the relations in D:
* ( R1(r), ..., Rm(r)) = r
 Note: The word loss in lossless refers to loss of information, not
to loss of tuples. In fact, for “loss of information” a better term is
“addition of spurious information”
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 18
Algorithm: Testing for Lossless Join
Property
Input: A universal relation R, a decomposition D = {R1, R2, ..., Rm} of R,
and a set F of functional dependencies.
1. Create an initial matrix S with one row i for each relation Ri in D, and
one column j for each attribute Aj in R.
2. Set S(i,j):=bij for all matrix entries. (* each bij is a distinct symbol
associated with indices (i,j) *).
3. For each row i representing relation schema Ri
{for each column j representing attribute Aj
{if (relation Ri includes attribute Aj) then set S(i,j):= aj;};};
 (* each aj is a distinct symbol associated with index (j) *)
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 19
Algorithm: Testing for Lossless Join
Property
4. Repeat the following loop until a complete loop execution results in no changes to S
{for each functional dependency X Y in F
{for all rows in S which have the same symbols in the columns corresponding to
attributes in X
{make the symbols in each column that correspond to an attribute in Y be the
same in all these rows as follows:
If any of the rows has an “a” symbol for the column, set the other rows to that
same “a” symbol in the column.
If no “a” symbol exists for the attribute in any of the rows, choose one of the
“b” symbols that appear in one of the rows for the attribute and set the other rows
to that same “b” symbol in the column ;};
}; };
5. If a row is made up entirely of “a” symbols, then the decomposition has the
lossless join property; otherwise it does not.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 20
Properties of Relational Decompositions
(8)
Lossless (nonadditive) join test for n-ary decompositions.
(a) Case 1: Decomposition of EMP_PROJ into EMP_PROJ1 and
EMP_LOCS fails test.
(b) A decomposition of EMP_PROJ that has the lossless join property.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 21
Properties of Relational Decompositions (8)
Lossless (nonadditive) join
test for n-ary
decompositions.
(c) Case 2: Decomposition
of EMP_PROJ into EMP,
PROJECT, and
WORKS_ON satisfies test.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 22
Properties of Relational
Decompositions (9)
 Testing Binary Decompositions for Lossless
Join Property
 Binary Decomposition: Decomposition of a
relation R into two relations.
 PROPERTY LJ1 (lossless join test for binary
decompositions): A decomposition D = {R1, R2}
of R has the lossless join property with respect to
a set of functional dependencies F on R if and only
if either
 The f.d. ((R1 ∩ R2)  (R1- R2)) is in F+, or
 The f.d. ((R1 ∩ R2)  (R2 - R1)) is in F+.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 23
Properties of Relational
Decompositions (10)
 Successive Lossless Join Decomposition:
 Claim 2 (Preservation of non-additivity in
successive decompositions):
 If a decomposition D = {R1, R2, ..., Rm} of R has
the lossless (non-additive) join property with respect
to a set of functional dependencies F on R,
 and if a decomposition Di = {Q1, Q2, ..., Qk} of Ri
has the lossless (non-additive) join property with
respect to the projection of F on Ri,
 then the decomposition D2 = {R1, R2, ..., Ri-1, Q1, Q2, ...,
Qk, Ri+1, ..., Rm} of R has the non-additive join property
with respect to F.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 24
Algorithm: Relational Synthesis into 3NF
with Dependency Preservation (Relational
Synthesis Algorithm)
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 25
Algorithms for Relational Database
Schema Design (2)
 Algorithm 11.3: Relational Decomposition into BCNF with
Lossless (non-additive) join property
 Input: A universal relation R and a set of functional
dependencies F on the attributes of R.
1. Set D := {R};
2. While there is a relation schema Q in D that is not in BCNF
do {
choose a relation schema Q in D that is not in BCNF;
find a functional dependency X  Y in Q that violates BCNF;
replace Q in D by two relation schemas (Q - Y) and (X υ Y);
};
Assumption: No null values are allowed for the join attributes.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 26
Algorithms for Relational Database
Schema Design (4)

More Related Content

PDF
7 relational database design algorithms and further dependencies
PPT
For mapping a category whose defining superclass Additional02.ppt
PPT
Chapter10in normalization for Data base management system .ppt
PPT
basic concepts of Entity relationship diagram
PPT
Normalization
PDF
4 the relational data model and relational database constraints
PDF
The Relational Data Model and Relational Database Constraints
PPTX
Normalization and Functional Dependencies
7 relational database design algorithms and further dependencies
For mapping a category whose defining superclass Additional02.ppt
Chapter10in normalization for Data base management system .ppt
basic concepts of Entity relationship diagram
Normalization
4 the relational data model and relational database constraints
The Relational Data Model and Relational Database Constraints
Normalization and Functional Dependencies

Similar to Module 4- Database Management System by Navathe (20)

PPTX
4-therelationaldatamodelandrelationaldatabaseconstraints-140128022150-phpapp0...
PDF
L8 design1
PPT
Cross-reference or relationship relation optionAdditional01.ppt
PPT
Function Dependencies and Normalization
PPTX
ch04-The Relational Data Model and Relational Database Constraints [Compatibi...
PPT
vdocuments.net_copyright-2007-ramez-elmasri-and-shamkant-b-navathe-slide-7-1.ppt
PPT
9 normalization
PPT
7. Relational Database Design in DBMS
PDF
Cs501 fd nf
PPT
ndnbfgdfgdfgModel and Relational Database Constraints.ppt
PPT
ch05-The Relational Data Model and Relational Database Constraints.ppt
PDF
ch07-Relational Database Design by ER- and EERR-to-Relational Mapping.pdf
PDF
5 the relational algebra and calculus
PPT
1. UNIT - III.ppt
PPTX
Decomposition using Functional Dependency
PPT
Normalization in Relational Database.ppt
PDF
PVP19 DBMS UNIT-4 Material.pdfvh kk ghkd DL of child gf
4-therelationaldatamodelandrelationaldatabaseconstraints-140128022150-phpapp0...
L8 design1
Cross-reference or relationship relation optionAdditional01.ppt
Function Dependencies and Normalization
ch04-The Relational Data Model and Relational Database Constraints [Compatibi...
vdocuments.net_copyright-2007-ramez-elmasri-and-shamkant-b-navathe-slide-7-1.ppt
9 normalization
7. Relational Database Design in DBMS
Cs501 fd nf
ndnbfgdfgdfgModel and Relational Database Constraints.ppt
ch05-The Relational Data Model and Relational Database Constraints.ppt
ch07-Relational Database Design by ER- and EERR-to-Relational Mapping.pdf
5 the relational algebra and calculus
1. UNIT - III.ppt
Decomposition using Functional Dependency
Normalization in Relational Database.ppt
PVP19 DBMS UNIT-4 Material.pdfvh kk ghkd DL of child gf
Ad

Recently uploaded (20)

PPTX
Construction Project Organization Group 2.pptx
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PPTX
Internet of Things (IOT) - A guide to understanding
PDF
PPT on Performance Review to get promotions
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
PPTX
Sustainable Sites - Green Building Construction
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPTX
Lecture Notes Electrical Wiring System Components
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPT
Mechanical Engineering MATERIALS Selection
Construction Project Organization Group 2.pptx
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
Model Code of Practice - Construction Work - 21102022 .pdf
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
Internet of Things (IOT) - A guide to understanding
PPT on Performance Review to get promotions
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
Sustainable Sites - Green Building Construction
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
Lecture Notes Electrical Wiring System Components
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Embodied AI: Ushering in the Next Era of Intelligent Systems
R24 SURVEYING LAB MANUAL for civil enggi
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
Mechanical Engineering MATERIALS Selection
Ad

Module 4- Database Management System by Navathe

  • 1. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 1
  • 2. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Module4 Relational Database Design Algorithms and Further Dependencies
  • 3. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 3 Inference Rules for FDs (1)  Given a set of FDs F, we can infer additional FDs that hold whenever the FDs in F hold  Armstrong's inference rules:  IR1. (Reflexive) If Y subset-of X, then X -> Y  IR2. (Augmentation) If X -> Y, then XZ -> YZ  (Notation: XZ stands for X U Z)  IR3. (Transitive) If X -> Y and Y -> Z, then X -> Z  IR1, IR2, IR3 form a sound and complete set of inference rules  These are rules hold and all other rules that hold can be deduced from these
  • 4. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 4 Inference Rules for FDs (2)  Some additional inference rules that are useful:  Decomposition: If X -> YZ, then X -> Y and X -> Z  Union: If X -> Y and X -> Z, then X -> YZ  Psuedotransitivity: If X -> Y and WY -> Z, then WX -> Z  The last three inference rules, as well as any other inference rules, can be deduced from IR1, IR2, and IR3 (completeness property)
  • 5. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 5 Inference Rules for FDs (3)  Closure of a set F of FDs is the set F+ of all FDs that can be inferred from F  Closure of a set of attributes X with respect to F is the set X+ of all attributes that are functionally determined by X  X+ can be calculated by repeatedly applying IR1, IR2, IR3 using the FDs in F
  • 6. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe ALGORITHM - CLOSURE Slide 11- 6
  • 7. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Algorithm for Finding a Key K for R Given a set F of Functional Dependencies  Input: A universal relation R and a set of functional dependencies F on the attributes of R. 1. Set K := R; 2. For each attribute A in K { Compute (K - A)+ with respect to F; If (K - A)+ contains all the attributes in R, then set K := K - {A}; } Slide 11- 7
  • 8. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 8 Equivalence of Sets of FDs  Two sets of FDs F and G are equivalent if:  Every FD in F can be inferred from G, and  Every FD in G can be inferred from F  Hence, F and G are equivalent if F+ =G+  Definition (Covers):  F covers G if every FD in G can be inferred from F  (i.e., if G+ subset-of F+)  F and G are equivalent if F covers G and G covers F  There is an algorithm for checking equivalence of sets of FDs
  • 9. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 9 Minimal Sets of FDs (1)  A set of FDs is minimal if it satisfies the following conditions: 1. Every dependency in F has a single attribute for its RHS. 2. We cannot remove any dependency from F and have a set of dependencies that is equivalent to F. 3. We cannot replace any dependency X -> A in F with a dependency Y -> A, where Y proper- subset-of X ( Y subset-of X) and still have a set of dependencies that is equivalent to F.
  • 10. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10- 10 Minimal Sets of FDs (2)  Every set of FDs has an equivalent minimal set  There can be several equivalent minimal sets  There is no simple algorithm for computing a minimal set of FDs that is equivalent to a set F of FDs  To synthesize a set of relations, we assume that we start with a set of dependencies that is a minimal set
  • 11. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 11
  • 12. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 12 Properties of Relational Decompositions (1)  Relation Decomposition and Insufficiency of Normal Forms:  Universal Relation Schema:  A relation schema R = {A1, A2, …, An} that includes all the attributes of the database.  Universal relation assumption:  Every attribute name is unique.
  • 13. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 13 Properties of Relational Decompositions (2)  Relation Decomposition and Insufficiency of Normal Forms (cont.):  Decomposition:  The process of decomposing the universal relation schema R into a set of relation schemas D = {R1,R2, …, Rm} that will become the relational database schema by using the functional dependencies.  Attribute preservation condition:  Each attribute in R will appear in at least one relation schema Ri in the decomposition so that no attributes are “lost”.
  • 14. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 14 Properties of Relational Decompositions (2)  Another goal of decomposition is to have each individual relation Ri in the decomposition D be in BCNF or 3NF.  Additional properties of decomposition are needed to prevent from generating spurious tuples
  • 15. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 15 Properties of Relational Decompositions (3)  Dependency Preservation Property of a Decomposition:  Definition: Given a set of dependencies F on R, the projection of F on Ri, denoted by pRi(F) where Ri is a subset of R, is the set of dependencies X  Y in F+ such that the attributes in X υ Y are all contained in Ri.  Hence, the projection of F on each relation schema Ri in the decomposition D is the set of functional dependencies in F+, the closure of F, such that all their left- and right-hand-side attributes are in Ri.
  • 16. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 16 Properties of Relational Decompositions (4)  Dependency Preservation Property of a Decomposition (cont.):  Dependency Preservation Property:  A decomposition D = {R1, R2, ..., Rm} of R is dependency-preserving with respect to F if the union of the projections of F on each Ri in D is equivalent to F; that is ((R1(F)) υ . . . υ (Rm(F)))+ = F+ Claim 1:  It is always possible to find a dependency- preserving decomposition D with respect to F such that each relation Ri in D is in 3nf.
  • 17. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 17 Properties of Relational Decompositions (5)  Lossless (Non-additive) Join Property of a Decomposition:  Definition: Lossless join property: a decomposition D = {R1, R2, ..., Rm} of R has the lossless (nonadditive) join property with respect to the set of dependencies F on R if, for every relation state r of R that satisfies F, the following holds, where * is the natural join of all the relations in D: * ( R1(r), ..., Rm(r)) = r  Note: The word loss in lossless refers to loss of information, not to loss of tuples. In fact, for “loss of information” a better term is “addition of spurious information”
  • 18. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 18 Algorithm: Testing for Lossless Join Property Input: A universal relation R, a decomposition D = {R1, R2, ..., Rm} of R, and a set F of functional dependencies. 1. Create an initial matrix S with one row i for each relation Ri in D, and one column j for each attribute Aj in R. 2. Set S(i,j):=bij for all matrix entries. (* each bij is a distinct symbol associated with indices (i,j) *). 3. For each row i representing relation schema Ri {for each column j representing attribute Aj {if (relation Ri includes attribute Aj) then set S(i,j):= aj;};};  (* each aj is a distinct symbol associated with index (j) *)
  • 19. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 19 Algorithm: Testing for Lossless Join Property 4. Repeat the following loop until a complete loop execution results in no changes to S {for each functional dependency X Y in F {for all rows in S which have the same symbols in the columns corresponding to attributes in X {make the symbols in each column that correspond to an attribute in Y be the same in all these rows as follows: If any of the rows has an “a” symbol for the column, set the other rows to that same “a” symbol in the column. If no “a” symbol exists for the attribute in any of the rows, choose one of the “b” symbols that appear in one of the rows for the attribute and set the other rows to that same “b” symbol in the column ;}; }; }; 5. If a row is made up entirely of “a” symbols, then the decomposition has the lossless join property; otherwise it does not.
  • 20. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 20 Properties of Relational Decompositions (8) Lossless (nonadditive) join test for n-ary decompositions. (a) Case 1: Decomposition of EMP_PROJ into EMP_PROJ1 and EMP_LOCS fails test. (b) A decomposition of EMP_PROJ that has the lossless join property.
  • 21. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 21 Properties of Relational Decompositions (8) Lossless (nonadditive) join test for n-ary decompositions. (c) Case 2: Decomposition of EMP_PROJ into EMP, PROJECT, and WORKS_ON satisfies test.
  • 22. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 22 Properties of Relational Decompositions (9)  Testing Binary Decompositions for Lossless Join Property  Binary Decomposition: Decomposition of a relation R into two relations.  PROPERTY LJ1 (lossless join test for binary decompositions): A decomposition D = {R1, R2} of R has the lossless join property with respect to a set of functional dependencies F on R if and only if either  The f.d. ((R1 ∩ R2)  (R1- R2)) is in F+, or  The f.d. ((R1 ∩ R2)  (R2 - R1)) is in F+.
  • 23. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 23 Properties of Relational Decompositions (10)  Successive Lossless Join Decomposition:  Claim 2 (Preservation of non-additivity in successive decompositions):  If a decomposition D = {R1, R2, ..., Rm} of R has the lossless (non-additive) join property with respect to a set of functional dependencies F on R,  and if a decomposition Di = {Q1, Q2, ..., Qk} of Ri has the lossless (non-additive) join property with respect to the projection of F on Ri,  then the decomposition D2 = {R1, R2, ..., Ri-1, Q1, Q2, ..., Qk, Ri+1, ..., Rm} of R has the non-additive join property with respect to F.
  • 24. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 24 Algorithm: Relational Synthesis into 3NF with Dependency Preservation (Relational Synthesis Algorithm)
  • 25. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 25 Algorithms for Relational Database Schema Design (2)  Algorithm 11.3: Relational Decomposition into BCNF with Lossless (non-additive) join property  Input: A universal relation R and a set of functional dependencies F on the attributes of R. 1. Set D := {R}; 2. While there is a relation schema Q in D that is not in BCNF do { choose a relation schema Q in D that is not in BCNF; find a functional dependency X  Y in Q that violates BCNF; replace Q in D by two relation schemas (Q - Y) and (X υ Y); }; Assumption: No null values are allowed for the join attributes.
  • 26. Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11- 26 Algorithms for Relational Database Schema Design (4)