We introduce a theoretical framework for discovering relationships between two database instances over distinct and unknown schemata. This framework is grounded in the context of data exchange. We formalize the problem of understanding the relationship between two instances as that of obtaining a schema mapping so that a minimum repair of this mapping provides a perfect description of the target instance given the source instance. We show that this definition yields "intuitive" results when applied on database instances derived from each other by basic operations. We study the complexity of decision problems related to this optimality notion in the context of different logical languages and show that, even in very restricted cases, the problem is of high complexity. Categories and Subject Descriptors F.2.0 [Analysis of Algorithms and Problem Complexity]: General; H.2.5 [Database Management]: Heterogeneous Databases General Terms Languages, Theory Keywords Schema mapping, ins...