# Bcnf decomposition

There is sometimes more than one BCNF decomposition of a given schema. The algorithm given produces only one of these possible decompositions. Some of the BCNF decompositions may also yield dependency preservation, while others may not.

proposed decomposition of R into smaller relations is a “good” decomposition and brieﬂy explain why or why not. 1. A → B, B → C, C → D. Decompose into AB, BC, and CD. (i) A; (ii) “good” because decomposition is both lossless-join and dependency-preserving 2. C → A, B → D. Decompose into AC and BD.

BCNF Decomposition Algorithm 1. Compute F+ 2. Result ← {R} 3. While some R i ∈ Result not in BCNF, DO b. Decompose R i on (X → Y) R i1 ← X ∪ Y R i2 ← R i – Y c. Result ← Result – {R i} ∪ {R i1,R i2} 4. Return result END

Boyce-Codd Normal Form BCNF requires that whenever there is a nontrivial functional dependency X A, then X is a superkey, even if A is a prime attribute. It differs from 3NF in that 3NF requires either that X be a superkey or that A be prime (a member of some key). To put it another way, BCNF bans all nontrivial nonsuperkey dependencies X A ...

The Boyce-Codd Normal Form is defined as: a relation is in Boyce-Codd Normal Form if and only if every determinant is a candidate key. If a relation has only one candidate key then the 3NF and BCNF are equivalent. Therefore, to check for BCNF, we simply identify all the determinants and make sure that they are candidate keys.

Decomposition of R into R1 and R2 is a dependency preserving decomposition if closure of functional dependencies after decomposition is same as closure of of FDs before decomposition. A simple way is to just check whether we can derive all the original FDs from the FDs present after decomposition.

Explanation: If a relation is not in BCNF, it can be decomposed into simpler relations that are in BCNF. The BCNF decomposition algorithm states a method to decompose a relation satisfying BCNF. advertisement

1. Choose a relation Q in D not in BCNF 2. Rind a FD X-->Y in Q that violates BCNF 3. Replace Q in D by the two relation schemas (Q-Y) and (X ∪Y)} Since relations only have finitely many attributes this algorithm terminates with all the relations in BCNF. (3) ensures that our binary decomposition test for LJP will be passed. 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; by increasing the metabolic flux toward BCNF formation. Notably, we found that the high thermal stability of the BCNF is not fully implemented in a full-cell battery. It was identified that the structure of BCNF is thermochemically degraded by acidic gases produced by the decomposition of the lithium salt LiPF 6,usedinthebattery.