I’m having issues understanding super keys in a relation when the relation only contains one functional dependency.
When considering a relation R(A,B,C,D,E) where A is the primary key and with the functional dependency A->B, can A be considered a super key to the relation since there is only one FD? Or would one need to expand the functional dependency to include the unmentioned parts of the relation (C,D,E) in order to find a super key?
I’m mainly confused because all the material I’ve seen on the web until this point has contained multiple functional dependencies all of which have contained all of the attributes within the relation, so I’m not sure how to interpret the unused attributes. If someone could help clarify this I’d appreciate it!
If the only explicitly mentioned FD for the relation schema is A ⟶ B, then there is the implicit, trivial FD {A,B,C,D,E} ⟶ {A,B,C,D,E}. Given that A ⟶ B, we can deduce that:
As Catcall says in comments, there is mention of A being the primary key of R. If A is a primary key, then each of the singleton FDs A ⟶ B, A ⟶ C, A ⟶ D and A ⟶ E (or, collectively, A ⟶ {B,C,D,E}) applies, and there’s no need to call out A ⟶ B separately. If A is a primary key of R, there’s no need to decompose R at all; there is really nothing interesting about the table because it is normalized to 5NF given the available information (assuming there are no unstated non-trivial FDs, MVDs or JDs).
If A is a primary key, then it is also a superkey, but not a proper superkey. Any of the attribute combinations with A and one or more of the other attributes is also a superkey, and is a proper superkey.