CMPT 354 Assignment 5:
Normalization
You are to answer a number of questions related to the decomposition of a set of
attributes relating to an election database. This assignment is worth 6% of your final
grade.
Ele
...
CMPT 354 Assignment 5:
Normalization
You are to answer a number of questions related to the decomposition of a set of
attributes relating to an election database. This assignment is worth 6% of your final
grade.
Election DatabaseAttributes and Functional Dependencies
The set of attributes for the election database is as follows.
province name (prov)
province population (ppop)
province GDP (pgdp) (and GDP stands for Gross Domestic Product)
provincial governing party (pparty)
riding name (rid)
riding population (rpop)
riding classification (rclass) (urban, rural or urban/rural)
federal party name (fedparty)
federal party leader first name (leadfn)
federal party leader last name (leadln)
federal party web address (fedweb)
candidate first name (candfn)
candidate last name (candln)
candidate sex (candsex)
votes cast (votes)
The set of functional dependencies (F) that hold over these attributes is as follows.
prov -> ppop, pgdp, pparty
rid, rclass -> prov, pparty
rid -> rpop, rclass
fedparty -> leadfn, leadln, fedweb
leadfn, leadln -> fedparty
fedweb -> fedparty
candfn, candln -> fedparty, rid
candfn, candln, rid -> candsex, fedweb
rid, fedparty -> votes, candfn, candln
Question 1
Show whether or not the following functional dependencies are implied by F. Explain
how the functional dependency is implied by using Armstrong's inference rules. If the
functional dependency is not implied by F, briefly explain why.
2 marks each, 1 mark for the answer (is or is not implied) and one mark for the
explanation
a. fedweb -> leadfn, leadln – is implied fedweb -> fedpartyA and fedparty -> leadfn,
leadln, fedwebB (assumptions), fedparty -> leadfn, leadlnC (decomposition of B) and
fedweb -> leadfn, leadln by transitivity of A and C
b. rid -> votes– is not implied as rid, fedparty -> votes but fedparty cannot be shown
to be functionally dependent on rid, alternatively the attribute closure of rid (rpop,
rclass, prov, pparty, ppop, pgdp) does not include fedparty
[Show More]