# zbMATH — the first resource for mathematics

Magic Sets and their application to data integration. (English) Zbl 1115.68047
Summary: Recently, effective methods model query-answering in data integration systems and inconsistent databases in terms of cautious reasoning over Datalog$$^{\neg}$$ programs under the stable model semantics. Since this task is computationally expensive (co-NP-complete), there is a clear need of suitable techniques for query optimization, in order to make such methods feasible for data-intensive applications.
We propose a generalization of the well-known Magic Sets technique to Datalog$$^{\neg}$$ programs with (possibly unstratified) negation under the stable model semantics. Our technique produces a new program whose evaluation is more efficient (due to a smaller instantiation) in general, while preserving full query-equivalence for both brave and cautious reasoning, provided that the original program is consistent. Soundness under cautious reasoning is always guaranteed, even if the original program is inconsistent.
In order to formally prove the correctness of our Magic Sets transformation, we introduce a novel notion of modularity for Datalog$$^{\neg}$$ under the stable model semantics, which is more suitable for query answering than previous module definitions. We prove that a query on such a module can be evaluated independently from the rest of the program, while preserving soundness under cautious reasoning. Importantly, for consistent programs, both soundness and completeness are guaranteed for brave reasoning and cautious reasoning.
Our Magic Sets optimization constitutes an effective method for enhancing the performance of data integration systems in which query-answering is carried out by means of cautious reasoning over Datalog$$^{\neg}$$ programs. In fact, results of experiments in the EU project INFOMIX, show that Magic Sets are fundamental for the scalability of the system.

##### MSC:
 68N17 Logic programming
##### Software:
Datalog; MYSTIQ; NP Datalog; Smodels
Full Text: