On the Number of Quantifiers Needed to Define Boolean Functions
Marco Carmosino, Ronald Fagin, et al.
MFCS 2024
A schema mapping is a specification that describes how data structured under one schema (the source schema) is to be transformed into data structured under a different schema (the target schema). Although the notion of an inverse of a schema mapping is important, the exact definition of an inverse mapping is somewhat elusive. This is because a schema mapping may associate many target instances with each source instance, and many source instances with each target instance. Based on the notion that the composition of a mapping and its inverse is the identity, we give a formal definition for what it means for a schema mapping M′ to be an inverse of a schema mapping M for a class S of source instances. We call such an inverse an S-inverse. A particular case of interest arises when S is the class of all source instances, in which case an S-inverse is a global inverse. We focus on the important and practical case of schema mappings specified by source-to-target tuple-generating dependencies, and uncover a rich theory. When S is specified by a set of dependencies with a finite chase, we show how to construct an S-inverse when one exists. In particular, we show how to construct a global inverse when one exists. Given M and M′, we show how to define the largest class S such that M′ is an S-inverse of M. © 2007 ACM.
Marco Carmosino, Ronald Fagin, et al.
MFCS 2024
Catriel Beeri, Martin Dowd, et al.
Journal of the ACM
Douglas Burdick, Ronald Fagin, et al.
ICDT 2015
Miklos Ajtai, Ronald Fagin, et al.
Journal of Computer and System Sciences