### CS 4250: Database Management Systems

#### Spring 2015 - Mini-Homework 1

#### Due Monday, 3/30/2015, at 4 pm

This is a **GROUP** assignment. Work in groups of 3. (Groups of 2 or 4
are acceptable, but 3 is ideal. Enough people for a variety of viewpoints, not
so many that anyone will feel left out of discussions.)

You may email a plain text, MS Word or PDF document
to the instructor with subject line "cs4250,mini1", or turn in a typed hardcopy.
Put the names of **all** group members on what you submit.

Consider a relation R with attributes ABCDE. You
are given the following dependencies E -> A, CD -> B, A -> C.

- Attribute closure of AD?
- Attribute closure of DE?
- Identify which, if any, of the above are candidate keys.

Consider a relation R with attributes ABCD. You
are given the following dependencies A -> D, AB -> C, C -> A.

- List all (candidate) keys for R.

- Is R in 3NF? Why or why not?

- Is R in BCNF? Why or why not?

- Suppose you are given a relation R(A, B, C, D).
For each of the following sets of FDs, assume they are the only dependencies that
hold for R. Do the following: a) identify the candidate key(s) for R. b) State
whether or not the proposed decomposition of R into smaller relations is a good
decomposition and briefly explain why or why not.

- A -> B, C -> D; decompose into AD and BCD.
- Candidate keys:
- Analysis:

- AB -> C, B -> D; decompose into ABC and CD.
- Candidate keys:
- Analysis:

What is one question about functional dependencies and / or normal forms
that your group came up with while working on this assignment?

*Extra Credit:* Consider a relation R with attributes ABCDE. You
are given the following dependencies A -> C, C -> E, A -> D, D -> C.

- List all (candidate) keys for R.

- Is R in 3NF? Why or why not?

- Is R in BCNF? Why or why not?