# Inference Rules For Functional Dependencies

## Inference Rules For Functional Dependencies –

Let S be the set of functional dependencies that are specified on relation schema R. Numerous other dependencies can be inferred or deduced from the functional dependencies in S.

Example :

Let S = {A → B, B → C}

We can infer the following functional dependency from S:

A → C

#### Armstrong’s Inference Rules –

Let A, B and C and D be arbitrary subsets of the set of attributes of the giver relation R, and let AB be the union of A and B. Then,⇒→

• Reflexivity :
If B is subset of A, then A → B
• Augmentation :
If A → B, then AC → BC
• Transitivity :
If A → B and B → C, then A → C.
• Projectivity or Decomposition Rule :
If A → BC, Then A → B and A → C
```     Proof  :
Step 1 : A → BC (GIVEN)
Step 2 : BC → B (Using Rule 1, since B ⊆ BC)
Step 3 : A → B (Using Rule 3, on step 1 and step 2)```
• Union or Additive Rule :
If A→B, and A→C Then A→BC.
```     Proof :
Step 1 : A → B (GIVEN)
Step 2 : A → C (given)
Step 3 : A → AB (using Rule 2 on step 1, since AA=A)
Step 4 : AB → BC (using rule 2 on step 2)
Step 5 : A → BC (using rule 3 on step 3 and step 4)```
• Pseudo Transitive Rule :
If A → B, DB → C, then DA → C
```      Proof :
Step 1 : A → B (Given)
Step 2 : DB → C (Given)
Step 3 : DA → DB (Rule 2 on step 1)
Step 4 : DA → C (Rule 3 on step 3 and step 2)```
• These are not commutative as well as associative.
i.e. if X → Y then
Y → X   x (not possible)
• Composition Rule :
If A → B, and C → D, then AC → BD.
• Self Determination Rule :
A → A is a self determination rule.
```Question 1:
Prove or disprove the following inference rules for functional dependencies.
a. {X → Y, Z → W} ⇒ XZ → YW  ??
b. {X → Y, XY → Z} ⇒ X → Z
c. {XY → Z, Y → W} ⇒ XW → Z```
```Solution :
Method : Use Armstrong's Axioms or Attribute closure to prove or disprove.
a. {X → Y, Z → W} ⇒ XZ → YW ??
XZ → XZ
XZ → XW         (Z -> W)
XZ → W      (decomposition rule)

XZ → XZ
XZ → YZ         (X -> Y)
XZ → Y      (decomposition rule)

⇒ XZ → YW   (union rule)
Hence True.
b. {X → Y, XY → Z} ⇒ X → Z ??

XY→Z
XX → Z      (pseudotransitivity rule as X → Y)
⇒ X → Z
Hence True.

c. {XY → Z, Y → W} ⇒ XW → Z ??
W → W
X → X
Y → YW
Z → Z
WX → WX
WY → WY
WZ → WZ
XY → WXYZ
XZ → XZ
YZ → WYZ

Therefore WX → Z is not true
You can also find the attribute closure for WX and show that closure set does not contain Z.```
```Question 2:
Consider a relational scheme R with attributes A,B,C,D,F and the FDs
A → BC
B → E
CD → EF
Prove that functional dependency AD → F holds in R.```
```Step 1 : A  → BC  (Given)
Step 2 : A  → C   (Decomposition Rule applied on step 1)
Step 3 : AD → CD  (Augmentation Rule applied on step 2)
Step 4 : CD → EF  (Given)
Step 5 : AD → EF  (transivity Rule applied on step 3 and 4)
Step 6 : AD → F   (Decomposition Rule applied on step 5)```

### Incoming search terms:

• inference rules in dbms
• inference rules for functional dependencies
• inference rule in dbms
• Armstrong inference rule in dbms
• Explain different inference rules for functional dependencies
• inference rules for functional dependency in dbms
• what are the inference rules for functional dependencies
• Armstrong\s inference rule dbms
• inference rule and causal form
• what are the inference rules of functional dependency