Suppose we have functional dependencies B->A, A->C defined on a relation R(A,B,C). Here B->AC (from given functional dependencies), So is B candidate key?
I read in textbooks that if a particular attribute is able to uniquely identify all attributes in a relation then it qualifies to be a candidate key. So according to that B should be a candidate key.
But if I have a table.
B A C
1 3 2
1 3 2
In this table B->AC so B should be candidate key but wikipedia (https://en.wikipedia.org/wiki/Candidate_key) says it should be unique. So is B a candidate key in this table?
I am confused.
The reason of the confusion comes from the fact that your example is not a set, but a multiset (i.e. a collection with repeated values), while the normalization theory can be applied only to sets.
So, even if in multisets one could have functional dependencies, (and implications of functional dependencies, too), there is no concept of candidate key, that has sense only on proper sets, since it is an attribute or set of attributes that uniquely identifies all the elements of the set.