Results 1  10
of
13
Logic Programming in a Fragment of Intuitionistic Linear Logic
"... When logic programming is based on the proof theory of intuitionistic logic, it is natural to allow implications in goals and in the bodies of clauses. Attempting to prove a goal of the form D ⊃ G from the context (set of formulas) Γ leads to an attempt to prove the goal G in the extended context Γ ..."
Abstract

Cited by 303 (40 self)
 Add to MetaCart
When logic programming is based on the proof theory of intuitionistic logic, it is natural to allow implications in goals and in the bodies of clauses. Attempting to prove a goal of the form D ⊃ G from the context (set of formulas) Γ leads to an attempt to prove the goal G in the extended context Γ ∪ {D}. Thus during the bottomup search for a cutfree proof contexts, represented as the lefthand side of intuitionistic sequents, grow as stacks. While such an intuitionistic notion of context provides for elegant specifications of many computations, contexts can be made more expressive and flexible if they are based on linear logic. After presenting two equivalent formulations of a fragment of linear logic, we show that the fragment has a goaldirected interpretation, thereby partially justifying calling it a logic programming language. Logic programs based on the intuitionistic theory of hereditary Harrop formulas can be modularly embedded into this linear logic setting. Programming examples taken from theorem proving, natural language parsing, and data base programming are presented: each example requires a linear, rather than intuitionistic, notion of context to be modeled adequately. An interpreter for this logic programming language must address the problem of splitting contexts; that is, when attempting to prove a multiplicative conjunction (tensor), say G1 ⊗ G2, from the context ∆, the latter must be split into disjoint contexts ∆1 and ∆2 for which G1 follows from ∆1 and G2 follows from ∆2. Since there is an exponential number of such splits, it is important to delay the choice of a split as much as possible. A mechanism for the lazy splitting of contexts is presented based on viewing proof search as a process that takes a context, consumes part of it, and returns the rest (to be consumed elsewhere). In addition, we use collections of Kripke interpretations indexed by a commutative monoid to provide models for this logic programming language and show that logic programs admit a canonical model.
Logic Programming and Negation: A Survey
 JOURNAL OF LOGIC PROGRAMMING
, 1994
"... We survey here various approaches which were proposed to incorporate negation in logic programs. We concentrate on the prooftheoretic and modeltheoretic issues and the relationships between them. ..."
Abstract

Cited by 242 (8 self)
 Add to MetaCart
We survey here various approaches which were proposed to incorporate negation in logic programs. We concentrate on the prooftheoretic and modeltheoretic issues and the relationships between them.
Decision Problems for Propositional Linear Logic
, 1990
"... Linear logic, introduced by Girard, is a refinement of classical logic with a natural, intrinsic accounting of resources. We show that unlike most other propositional (quantifierfree) logics, full propositional linear logic is undecidable. Further, we prove that without the modal storage operator, ..."
Abstract

Cited by 90 (17 self)
 Add to MetaCart
Linear logic, introduced by Girard, is a refinement of classical logic with a natural, intrinsic accounting of resources. We show that unlike most other propositional (quantifierfree) logics, full propositional linear logic is undecidable. Further, we prove that without the modal storage operator, which indicates unboundedness of resources, the decision problem becomes pspacecomplete. We also establish membership in np for the multiplicative fragment, npcompleteness for the multiplicative fragment extended with unrestricted weakening, and undecidability for certain fragments of noncommutative propositional linear logic. 1 Introduction Linear logic, introduced by Girard [14, 18, 17], is a refinement of classical logic which may be derived from a Gentzenstyle sequent calculus axiomatization of classical logic in three steps. The resulting sequent system Lincoln@CS.Stanford.EDU Department of Computer Science, Stanford University, Stanford, CA 94305, and the Computer Science Labo...
A Brief Guide to Linear Logic
, 1993
"... An overview of linear logic is given, including an extensive bibliography and a simple example of the close relationship between linear logic and computation. ..."
Abstract

Cited by 53 (8 self)
 Add to MetaCart
An overview of linear logic is given, including an extensive bibliography and a simple example of the close relationship between linear logic and computation.
Applications of Linear Logic to Computation: An Overview
, 1993
"... This paper is an overview of existing applications of Linear Logic (LL) to issues of computation. After a substantial introduction to LL, it discusses the implications of LL to functional programming, logic programming, concurrent and objectoriented programming and some other applications of LL, li ..."
Abstract

Cited by 41 (3 self)
 Add to MetaCart
This paper is an overview of existing applications of Linear Logic (LL) to issues of computation. After a substantial introduction to LL, it discusses the implications of LL to functional programming, logic programming, concurrent and objectoriented programming and some other applications of LL, like semantics of negation in LP, nonmonotonic issues in AI planning, etc. Although the overview covers pretty much the stateoftheart in this area, by necessity many of the works are only mentioned and referenced, but not discussed in any considerable detail. The paper does not presuppose any previous exposition to LL, and is addressed more to computer scientists (probably with a theoretical inclination) than to logicians. The paper contains over 140 references, of which some 80 are about applications of LL. 1 Linear Logic Linear Logic (LL) was introduced in 1987 by Girard [62]. From the very beginning it was recognized as relevant to issues of computation (especially concurrency and stat...
On Proof Normalization in Linear Logic
 Theoretical Computer Science
, 1994
"... We present a prooftheoretic foundation for automated deduction in linear logic. At first, we systematically study the permutability properties of the inference rules in this logical framework and exploit these to introduce an appropriate notion of forward and backward movement of an inference in a ..."
Abstract

Cited by 26 (12 self)
 Add to MetaCart
We present a prooftheoretic foundation for automated deduction in linear logic. At first, we systematically study the permutability properties of the inference rules in this logical framework and exploit these to introduce an appropriate notion of forward and backward movement of an inference in a proof. Then we discuss the naturallyarising question of the redundancy reduction and investigate the possibilities of proof normalization which depend on the proof search strategy and the fragment we consider. Thus, we can define the concept of normal proof that might be the basis of works about automatic proof construction and design of logic programming languages based on linear logic. 1 Introduction Linear logic is a powerful and expressive logic with connections to a variety of topics in computer science. We are mainly interested by the significance it may have in different domains as logic programming or program synthesis through theorem proving. As a matter of fact, classical linear ...
Linear Logic
, 1992
"... this paper we will restrict attention to propositional linear logic. The sequent calculus notation, due to Gentzen [10], uses roman letters for propositions, and greek letters for sequences of formulas. A sequent is composed of two sequences of formulas separated by a `, or turnstile symbol. One may ..."
Abstract

Cited by 24 (1 self)
 Add to MetaCart
this paper we will restrict attention to propositional linear logic. The sequent calculus notation, due to Gentzen [10], uses roman letters for propositions, and greek letters for sequences of formulas. A sequent is composed of two sequences of formulas separated by a `, or turnstile symbol. One may read the sequent \Delta ` \Gamma as asserting that the multiplicative conjunction of the formulas in \Delta together imply the multiplicative disjunction of the formulas in \Gamma. A sequent calculus proof rule consists of a set of hypothesis sequents, displayed above a horizontal line, and a single conclusion sequent, displayed below the line, as below: Hypothesis1 Hypothesis2 Conclusion 4 Connections to Other Logics
Abstract Interpretation of Linear Logic Programming
 IN PROC. OF ILPS'93
, 1993
"... Linear Logic is gaining momentum in computer science because it offers a unified framework and a common vocabulary for studying and analyzing different aspects of programming and computation. We focus here on models where computation is identified with proof search in the sequent system of Linear Lo ..."
Abstract

Cited by 14 (2 self)
 Add to MetaCart
Linear Logic is gaining momentum in computer science because it offers a unified framework and a common vocabulary for studying and analyzing different aspects of programming and computation. We focus here on models where computation is identified with proof search in the sequent system of Linear Logic. A proof normalization procedure, called "focusing", has been proposed to make the problem of proof search tractable. Correspondingly, there is a normalization procedure mapping formulae of Linear Logic into a syntactic fragment of that logic, called LinLog, and in which the focusing normalization for proofs can be most conveniently expressed. In this paper, we propose to push this compilation/normalization process further, by applying abstract interpretation and partial evaluation techniques to (focused) proofs in LinLog. These techniques provide information concerning the evolution of the computational resources (formulae) during the execution (proof construction). The practical outcome that we expect from this theoretical effort is the definition of a general tool for statically analyzing and reasoning about the runtime behavior of programs in frameworks where computations can be accounted for in terms of proof search in Linear Logic.
Static Analysis of Linear Logic Programming
 NEW GENERATION COMPUTING
, 1997
"... Linear Logic is gaining momentum in computer science because it offers a unified framework and a common vocabulary for studying and analyzing different aspects of programming and computation. We focus here on models where computation is identified with proof search in the sequent system of Linear ..."
Abstract

Cited by 13 (3 self)
 Add to MetaCart
Linear Logic is gaining momentum in computer science because it offers a unified framework and a common vocabulary for studying and analyzing different aspects of programming and computation. We focus here on models where computation is identified with proof search in the sequent system of Linear Logic. A proof normalization procedure, called "focusing", has been proposed to make the problem of proof search tractable. Correspondingly,
On the Structure of Highlevel Nets
 Helsinki University of Technology
, 1995
"... : The structure of Highlevel nets is studied from an algebraic and a logical point of view using Algebraic nets as an example. First the category of Algebraic nets is defined and the semantics given through an unfolding construction. Other kinds of Highlevel net formalisms are then presented. It is ..."
Abstract

Cited by 10 (0 self)
 Add to MetaCart
: The structure of Highlevel nets is studied from an algebraic and a logical point of view using Algebraic nets as an example. First the category of Algebraic nets is defined and the semantics given through an unfolding construction. Other kinds of Highlevel net formalisms are then presented. It is shown that nets given in these formalisms can be transformed into equivalent Algebraic nets. Then the semantics of nets in terms of universal constructions is discussed. A definition of Algebraic nets in terms of structured transition systems is proposed. The semantics of the Algebraic net is then given as a free completion of this structured transition system to a category. As an alternative also a sheaf semantics of nets is examined. Here the semantics of the net arises as a limit of a diagram of sheaves. Next Algebraic nets are characterized as encodings of special morphisms called foldings. Each algebraic net gives rise to a surjective morphism between Petri nets and conversely each sur...