Possible/Certain Functional Dependencies
Incomplete information allow to deal with data with errors, uncertainty or inconsistencies and have been studied in different application areas such as query answering or data integration. In this paper, we investigate classical functional dependencies in presence of incomplete information. To do so, we associate each attribute with a comparability function which maps every pair of domain values to abstract values, assumed to be organized in a lattice. Thus, every relation schema has an associated product lattice from which we define abstract functional dependencies over abstract tuples, leading to reasoning in a multi-valued logic. In this setting, we revisit classical notions like soundness and completeness of Armstrong axioms, attribute set closure, implication problem and give associated results. We also focus on the interpretations of abstract values in true/false logic to define the notion of reality which corresponds to a {0,1}-embedding of the product lattice. Based on this semantic, we introduce the notions of possible (there exists one reality in which the given FD holds) and certain (for every reality, the given FD holds) functional dependencies. We show that the problem of checking if a functional dependency is certain can be solved in polynomial time, whereas the problem of checking if a FD is possible is NP-Complete. We also identify tractable cases depending on lattices properties.