Functional Dependencies: Determining Which FD Is Not Implied (R(A,B,C,D,E))

Functional Dependencies: Determining Which FD Is Not Implied (R(A,B,C,D,E))

Verified Sources
Sep 14, 2026

We are given a relation schema R(A,B,C,D,E)R(A,B,C,D,E) with the following functional dependencies (FDs):

  • A→BA \to B
  • A→CA \to C
  • CD→ECD \to E
  • B→DB \to D
  • E→AE \to A

We must determine which of the candidate FDs is not implied by the given set:

(i) CD→ACCD \to AC
(ii) BD→CDBD \to CD
(iii) BC→CDBC \to CD
(iv) AC→BCAC \to BC

We will use attribute closure and Armstrong’s axioms to check implication.

Key idea

An FD X→YX \to Y is implied iff Y⊆X+Y \subseteq X^+, where X+X^+ is the attribute closure of XX under the given FD set.

We will compute closures for the relevant left-hand sides: CD,BD,BC,ACCD, BD, BC, AC.

type="tip" title="Pro Tip" content="When you see a cycle like E→AE \to A, combine it with any rules that produce AA to derive additional FDs (often yielding closures that grow quickly)."

Compute closures and test each candidate FD

  1. 1
    Step 1

    Start with {C,D}\{C,D\}. Use CD→ECD \to E to get EE. Then use E→AE \to A to get AA. From A→BA \to B and A→CA \to C, obtain BB and confirm CC. Use B→DB \to D to confirm DD. So CD+={C,D,E,A,B}CD^+ = \{C,D,E,A,B\}, which includes AA and CC.

  2. 2
    Step 2

    Since A∈CD+A \in CD^+ and C∈CD+C \in CD^+, we have CD→ACCD \to AC implied.

  3. 3
    Step 3

    Start with {B,D}\{B,D\}. From B→DB \to D we get DD (already). Then D→?D \to ? none directly, but use BB to ensure DD exists. More importantly, we need CC and EE and then CDCD. Derive AA: we can get EE only via CD→ECD \to E, but we can get CDCD if we first get CC. So we compute systematically: from BB we can get DD only; however E→AE \to A is one-way. This means we must try a different route by deriving AA from EE—so we check whether AA (or CC) is implied by BDBD.

  4. 4
    Step 4

    Notice the only way to get EE is via CD→ECD \to E. The only way to get CC is via A→CA \to C (since no rule gives CC from BB or DD alone). The only way to get AA is via E→AE \to A. Therefore, unless BDBD can imply EE or CC, BDBD cannot imply CDCD. So BD+BD^+ cannot contain CC or EE.

  5. 5
    Step 5

    Since C otinBD+C \ otin BD^+, BD→CDBD \to CD is not implied.

  6. 6
    Step 6

    Start with {B,C}\{B,C\}. From B→DB \to D, infer DD. Now we have CC and DD, so CD→ECD \to E gives EE. Then E→AE \to A gives AA. With A→BA \to B and A→CA \to C, we confirm BB and CC. Thus BC+={A,B,C,D,E}BC^+ = \{A,B,C,D,E\} includes DD and therefore implies CDCD.

  7. 7
    Step 7

    We have C∈BC+C \in BC^+ and D∈BC+D \in BC^+, hence CD⊆BC+CD \subseteq BC^+ and BC→CDBC \to CD is implied.

  8. 8
    Step 8

    Start with {A,C}\{A,C\}. From A→BA \to B, infer BB. From B→DB \to D, infer DD. Now CC and DD are present, so CD→ECD \to E gives EE. Finally E→AE \to A confirms AA. Thus AC+={A,B,C,D,E}AC^+ = \{A,B,C,D,E\}, which contains BCBC.

  9. 9
    Step 9

    Since B∈AC+B \in AC^+ and C∈AC+C \in AC^+, AC→BCAC \to BC is implied.

Detailed closure reasoning (clean derivations)

1) Candidate (i): CD→ACCD \to AC

From the given FD CD→ECD \to E,

  • (CD)+⊇{C,D,E}(CD)^+ \supseteq \{C,D,E\} From E→AE \to A,
  • (CD)+⊇{C,D,E,A}(CD)^+ \supseteq \{C,D,E,A\} From A→BA \to B and A→CA \to C,
  • (CD)+⊇{A,B,C,D,E}(CD)^+ \supseteq \{A,B,C,D,E\}

So AA and CC are in CD+CD^+, hence (i) is implied.


2) Candidate (ii): BD→CDBD \to CD

Start with BDBD. What can we infer immediately?

  • From B→DB \to D, we get DD (already). There is no rule of the form B→CB \to C, nor D→CD \to C, nor B→AB \to A, nor D→AD \to A.

To get CC we must use A→CA \to C. To get AA we must use E→AE \to A. To get EE we must use CD→ECD \to E — but that needs DD and CC already.

So there is no derivation chain that produces CC from BDBD alone. Therefore C∉(BD)+C \notin (BD)^+, hence CD⊈(BD)+CD \nsubseteq (BD)^+.

So (ii) is not implied.


3) Candidate (iii): BC→CDBC \to CD

From B→DB \to D,

  • BC⇒DBC \Rightarrow D

Now we have CC and DD, so:

  • CD→ECD \to E gives EE
  • E→AE \to A gives AA So indeed CC and DD are both in (BC)+(BC)^+, hence (iii) is implied.

4) Candidate (iv): AC→BCAC \to BC

From A→BA \to B,

  • AC⇒BAC \Rightarrow B

So BB and CC are already included on the right side:

  • therefore BC⊆(AC)+BC \subseteq (AC)^+ Hence (iv) is implied.

Implication Check Results

Whether each candidate FD is implied by the given FD set.

Why the answer is (ii) BD → CD

FD Implication Workflow

Pick candidate

1

For X→YX \to Y, compute X+X^+ using the FD set."

Run derivations

2

Repeatedly apply U→VU \to V when U⊆X+U \subseteq X^+."

Test inclusion

3

If Y⊆X+Y \subseteq X^+, then the FD is implied."

Conclude for all options

4

Exactly one option fails: (ii) BD→CDBD \to CD."

Functional Dependency Mastery (Quick Checks)

1 / 3
Question · Term

FD implication test

Click to reveal
Answer · Definition

To check whether X→YX \to Y is implied, compute X+X^+ and verify Y⊆X+Y \subseteq X^+.

Knowledge Check

Question 1 of 3
Q1Single choice

Which FD is NOT implied by {A→B, A→C, CD→E, B→D, E→A}?