Results 1  10
of
64
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 37 (23 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...
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 37 (7 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)...
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 36 (12 self)
 Add to MetaCart
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
S.: Modularity aspects of disjunctive stable models
 LPNMR 2007. LNCS (LNAI
, 2007
"... Practically all programming languages allow the programmer to split a program into several modules which brings along several advantages in software development. In this paper, we are interested in the area of answerset programming where fully declarative and nonmonotonic languages are applied. In ..."
Abstract

Cited by 27 (9 self)
 Add to MetaCart
Practically all programming languages allow the programmer to split a program into several modules which brings along several advantages in software development. In this paper, we are interested in the area of answerset programming where fully declarative and nonmonotonic languages are applied. In this context, obtaining a modular structure for programs is by no means straightforward since the output of an entire program cannot in general be composed from the output of its components. To better understand the effects of disjunctive information on modularity we restrict the scope of analysis to the case of disjunctive logic programs (DLPs) subject to stablemodel semantics. We define the notion of a DLPfunction, where a welldefined input/output interface is provided, and establish a novel module theorem which indicates the compositionality of stablemodel semantics for DLPfunctions. The module theorem extends the wellknown splittingset theorem and enables the decomposition of DLPfunctions given their strongly connected components based on positive dependencies induced by rules. In this setting, it is also possible to split shared disjunctive rules among components using a generalized shifting technique. The concept of modular equivalence is introduced for the mutual comparison of DLPfunctions using a generalization of a translationbased verification method. 1.
Super Logic Programs
, 1996
"... Recently, considerable interest and research e#ort has been given to the problem of finding a suitable extension of the logic programming paradigm beyond the class of normal logic programs. In order to demonstrate that a class of programs can be justifiably called an extension of logic programs one ..."
Abstract

Cited by 21 (2 self)
 Add to MetaCart
Recently, considerable interest and research e#ort has been given to the problem of finding a suitable extension of the logic programming paradigm beyond the class of normal logic programs. In order to demonstrate that a class of programs can be justifiably called an extension of logic programs one should be able to argue that: . the proposed syntax of such programs resembles the syntax of logic programs but it applies to a significantly broader class of programs; . the proposed semantics of such programs constitutes an intuitively natural extension of the semantics of normal logic programs; . there exists a reasonably simple procedural mechanism allowing, at least in principle, to compute the semantics; . the proposed class of programs and their semantics is a special case of a more general nonmonotonic formalism which clearly links it to other wellestablished nonmonotonic formalisms. In this paper we propose a specific class of extended logic programs which will be (modestly) called super logic programs or just superprograms. We will argue that the class of superprograms satisfies all of the above conditions, and, in addition, is su#ciently flexible to allow various applicationdependent extensions and modifications. We also provide a brief description of a Prolog implementation of a queryanswering interpreter for the class of superprograms which is available via FTP and WWW. Keywords: NonMonotonic Reasoning, Logics of Knowledge and Beliefs, Semantics of Logic Programs and Deductive Databases. # An extended abstract of this paper appeared in the Proceedings of the Fifth International Conference on Principles of Knowledge Representation and Reasoning (KR'96), Boston, Massachusetts, 1996, pp. 529541. + Partially supported by the National Science Fou...
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 16 (6 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.
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
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...
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 11 (4 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 10 (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...