This paper considers open logic programs originally as a tool to build an OR-compositional semantics of logic programs. We extend the original semantic definitions in the framework of the general approach to the semantics of logic programs described by Gabbrielli and Levi (1991). We first define an operational semantics O Ω(P) which models computed answer substitutions and which is compositional w.r.t. the union of programs. Next, we consider the semantic domain of Ω- denotations, which are sets of clauses with a suitable equivalence relation. The fixpoint semantics F Ω(P) given by Bossi and Menegus (1991) is proved equivalent to the operational semantics. From the model-theoretic viewpoint, an Ω-denotation is mapped onto a set of Herbrand interpretations, thus leading to a definition of an Ω-model based on the classical notion of truth. Moreover, we consider a particular kind of Ω-models (compositional models), and we show that O Ω(P) is a (nonminimal) compositional Ω-model. A suitable abstraction of O Ω(P) is compositional and fully abstract w.r.t. the equivalence induced by successful derivations. Finally, some applications of our semantics are discussed. In particular, O Ω(P) can be viewed as the foundations of modular program analysis.
Read full abstract