Results 1  10
of
86
Transformations of CLP Modules
 Theoretical Computer Science
, 1995
"... We propose a transformation system for Constraint Logic Programming (CLP) programs and modules. The framework is inspired by the one of Tamaki and Sato for pure logic programs [37]. However, the use of CLP allows us to introduce some new operations such as splitting and constraint replacement. We pr ..."
Abstract

Cited by 54 (8 self)
 Add to MetaCart
We propose a transformation system for Constraint Logic Programming (CLP) programs and modules. The framework is inspired by the one of Tamaki and Sato for pure logic programs [37]. However, the use of CLP allows us to introduce some new operations such as splitting and constraint replacement. We provide two sets of applicability conditions. The first one guarantees that the original and the transformed programs have the same computational behaviour, in terms of answer constraints. The second set contains more restrictive conditions that ensure compositionality: we prove that under these conditions the original and the transformed modules have the same answer constraints also when they are composed with other modules. This result is proved by first introducing a new formulation, in terms of trees, of a resultants semantics for CLP. As corollaries we obtain the correctness of both the modular and the nonmodular system w.r.t. the least model semantics. AMS Subject Classification (1991)...
Modularity Aspects of Disjunctive Stable Models
, 2007
"... Practically all programming languages used in software engineering allow to split a program into several modules. For fully declarative and nonmonotonic logic programming languages, however, the modular structure of programs is hard to realise, since the output of an entire program cannot in general ..."
Abstract

Cited by 43 (11 self)
 Add to MetaCart
Practically all programming languages used in software engineering allow to split a program into several modules. For fully declarative and nonmonotonic logic programming languages, however, the modular structure of programs is hard to realise, since the output of an entire program cannot in general be composed from the output of its component programs in a direct manner. In this paper, we consider these aspects for the stablemodel semantics of disjunctive logic programs (DLPs). We define the notion of a DLPfunction, where a welldefined input/output interface is provided, and establish a novel module theorem enabling a suitable compositional semantics for modules. The module theorem extends the wellknown splittingset theorem and allows also a generalisation of a shifting technique for splitting shared disjunctive rules among components.
Global Analysis of Standard Prolog Programs
, 1996
"... . Abstract interpretationbased dataflow analysis of logic programs is, at this point, relatively well understood from the point of view of general frameworks and abstract domains. On the other hand, comparatively little attention has been given to the problems which arise when analysis of a full, ..."
Abstract

Cited by 40 (25 self)
 Add to MetaCart
. Abstract interpretationbased dataflow analysis of logic programs is, at this point, relatively well understood from the point of view of general frameworks and abstract domains. On the other hand, comparatively little attention has been given to the problems which arise when analysis of a full, practical dialect of the Prolog language is attempted, and only few solutions to these problems have been proposed to date. Existing proposals generally restrict in one way or another the classes of programs which can be analyzed. This paper attempts to fill this gap by considering a full dialect of Prolog, essentially the recent ISO standard, pointing out the problems that may arise in the analysis of such a dialect, and proposing a combination of known and novel solutions that together allow the correct analysis of arbitrary programs which use the full power of the language. Keywords: Logic Programming, Abstract Interpretation, Optimization 1 Introduction Global program analysis, general...
Modular Logic Programming and Generalized Quantifiers
 PROCEEDINGS OF THE 4TH INTERNATIONAL CONFERENCE ON LOGIC PROGRAMMING AND NONMONOTONIC REASONING (LPNMR97), NUMBER 1265 IN LNCS
, 1997
"... The research on systems of logic programming with modules has followed two mainstreams, programminginthelarge, where compositional operators are provided for combining separate and independent modules, and programminginthesmall, which aims at enhancing logic programming with new logical co ..."
Abstract

Cited by 39 (14 self)
 Add to MetaCart
(Show Context)
The research on systems of logic programming with modules has followed two mainstreams, programminginthelarge, where compositional operators are provided for combining separate and independent modules, and programminginthesmall, which aims at enhancing logic programming with new logical connectives. In this paper, we present
A Modular Action Description Language
, 2006
"... “Toy worlds” involving actions, such as the blocks world and the Missionaries and Cannibals puzzle, are often used by researchers in the areas of commonsense reasoning and planning to illustrate and test their ideas. We would like to create a database of generalpurpose knowledge about actions that ..."
Abstract

Cited by 25 (7 self)
 Add to MetaCart
“Toy worlds” involving actions, such as the blocks world and the Missionaries and Cannibals puzzle, are often used by researchers in the areas of commonsense reasoning and planning to illustrate and test their ideas. We would like to create a database of generalpurpose knowledge about actions that encodes common features of many action domains of this kind, in the same way as abstract algebra and topology represent common features of specific number systems. This paper is a report on the first stage of this project—the design of an action description language in which this database will be written. The new language is an extension of the action language C+. Its main distinctive feature is the possibility of referring to other action descriptions in the definition of a new action domain.
Some (in)translatability results for normal logic programs and propositional theories
 Journal of Applied NonClassical Logics
, 2006
"... ABSTRACT. In this article, we compare the expressive powers of classes of normal logic programs that are obtained by constraining the number of positive subgoals (n) in the bodies of rules. The comparison is based on the existence/nonexistence of polynomial, faithful, and modular (PFM) translation f ..."
Abstract

Cited by 23 (8 self)
 Add to MetaCart
ABSTRACT. In this article, we compare the expressive powers of classes of normal logic programs that are obtained by constraining the number of positive subgoals (n) in the bodies of rules. The comparison is based on the existence/nonexistence of polynomial, faithful, and modular (PFM) translation functions between the classes. As a result, we obtain a strict ordering among the classes under consideration. Binary programs (n ≤ 2) are shown to be as expressive as unconstrained programs but strictly more expressive than unary programs (n ≤ 1) which, in turn, are strictly more expressive than atomic programs (n = 0). We also take propositional theories into consideration and prove them to be strictly less expressive than atomic programs. In spite of the gap in expressiveness, we develop a faithful but nonmodular translation function from normal programs to propositional theories. We consider this as a breakthrough due to subquadratic time complexity (of the order of P   × log 2 Hb(P)). Furthermore, we present a prototype implementation of the translation function and demonstrate its promising performance with SAT solvers using three benchmark problems.
T.: Modular nonmonotonic logic programming revisited
 In: Proceedings of the ICLP’09. LNCS 5649
, 2009
"... Abstract. Recently, enabling modularity aspects in Answer Set Programming (ASP) has gained increasing interest to ease the composition of program parts to an overall program. In this paper, we focus on modular nonmonotonic logic programs (MLP) under the answer set semantics, whose modules may have c ..."
Abstract

Cited by 18 (8 self)
 Add to MetaCart
Abstract. Recently, enabling modularity aspects in Answer Set Programming (ASP) has gained increasing interest to ease the composition of program parts to an overall program. In this paper, we focus on modular nonmonotonic logic programs (MLP) under the answer set semantics, whose modules may have contextually dependent input provided by other modules. Moreover, (mutually) recursive module calls are allowed. We define a modeltheoretic semantics for this extended setting, show that many desired properties of ordinary logic programming generalize to our modular ASP, and determine the computational complexity of the new formalism. We investigate the relationship of modular programs to disjunctive logic programs with welldefined input/output interface (DLPfunctions) and show that they can be embedded into MLPs.
A Modal Extension of Logic Programming: Modularity, Beliefs and Hypothetical Reasoning
, 1995
"... In this paper we present a modal extension of logic programming, which allows both multiple modalities and embedded implications. We show that this extension is well suited for structuring knowledge and, specifically, for defining module constructs within programs, for representing agents beliefs, a ..."
Abstract

Cited by 15 (2 self)
 Add to MetaCart
In this paper we present a modal extension of logic programming, which allows both multiple modalities and embedded implications. We show that this extension is well suited for structuring knowledge and, specifically, for defining module constructs within programs, for representing agents beliefs, and also for hypothetical reasoning. The language contains modalities [a i ] to represent agent beliefs, and a modality 2 which is a kind of common knowledge operator. It allows sequences of modalities to occur in front of clauses, goals and clause heads, and hypothetical implications to occur in goals and in clause bodies. A goal directed proof procedure of the language is presented, and several examples of its use for defining modules are given. In particular, the language is shown to capture different proposal for module definition and composition presented in the literature. The modal logic, of which our programming language is a clausal fragment, is introduced through its Kripke semantic...
A Compositional Semantics for Normal Open Programs
 Proc. of JICSLP
, 1996
"... In this paper we propose a semantics for first order modular (open) programs. Modular programs are built as a combination of separate modules, which may evolve separately, and be verified separately. Therefore, in order to reason over such programs, compositionality plays a crucial role: the semanti ..."
Abstract

Cited by 14 (1 self)
 Add to MetaCart
(Show Context)
In this paper we propose a semantics for first order modular (open) programs. Modular programs are built as a combination of separate modules, which may evolve separately, and be verified separately. Therefore, in order to reason over such programs, compositionality plays a crucial role: the semantics of the whole program must be obtainable as a simple function from the semantics of its individual modules. In this paper we propose such a compositional semantics for firstorder programs. This semantics is correct with respect to the set of logical consequences of the program. Moreover,  in contrast with other approaches  it is always computable. Furthermore, we show how our results on firstorder programs may be applied in a straightforward way to normal logic programs, in which case our semantics might be regarded as a compositional counterpart of Kunen's semantics. Finally we discuss and show how these results have to be modified in order to be applied to normal CLP. 1 Introduct...