Results 1 - 10
of
33
Higher-order logic programming
- HANDBOOK OF LOGIC IN AI AND LOGIC PROGRAMMING, VOLUME 5: LOGIC PROGRAMMING. OXFORD (1998
"... ..."
ACL - A Concurrent Linear Logic Programming Paradigm
- Proceedings of the 1993 International Logic Programming Symposium
, 1993
"... We propose a novel concurrent programming framework called ACL. ACL is a variant of linear logic programming, where computation is described in terms of bottom-up proof search of some formula in linear logic. The whole linear sequent calculus is too non-deterministic to be interpreted as an operatio ..."
Abstract
-
Cited by 46 (4 self)
- Add to MetaCart
We propose a novel concurrent programming framework called ACL. ACL is a variant of linear logic programming, where computation is described in terms of bottom-up proof search of some formula in linear logic. The whole linear sequent calculus is too non-deterministic to be interpreted as an operational semantics for a realistic programming language. We restrict formulas and accordingly refine inference rules for those formulas, hence overcoming this problem. Don't care interpretation of non-determinism in the resulting system yields a very clean and powerful concurrent programming paradigm based on message-passing style communication. It is remarkable that each ACL inference rule has an exact correspondence to some operation in concurrent computation and that non-determinism in proof search just corresponds to an inherent non-determinism in concurrent computation, namely, non-determinism on message arrival order. We demonstrate the power of our ACL framework by showing several programm...
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 object-oriented 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 object-oriented programming and some other applications of LL, like semantics of negation in LP, non-monotonic issues in AI planning, etc. Although the overview covers pretty much the state-of-the-art 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...
Higher-Order Concurrent Linear Logic Programming
- In Theory and Practice of Parallel Programming
, 1995
"... . We propose a typed, higher-order, concurrent linear logic programming called higher-order ACL, which uniformly integrates a variety of mechanisms for concurrent computation based on asynchronous message passing. Higher-order ACL is based on a proof search paradigm according to the principle, p ..."
Abstract
-
Cited by 29 (8 self)
- Add to MetaCart
. We propose a typed, higher-order, concurrent linear logic programming called higher-order ACL, which uniformly integrates a variety of mechanisms for concurrent computation based on asynchronous message passing. Higher-order ACL is based on a proof search paradigm according to the principle, proofs as computations, formulas as processes in linear logic. In higher-order ACL, processes as well as functions, and other values can be communicated via messages, which provides high modularity of concurrent programs. Higher-order ACL can be viewed as an asynchronous counterpart of Milner's higher-order, polyadic - calculus. Moreover, higher-order ACL is equipped with an elegant MLstyle type system that ensures (1) well typed programs can never cause type mismatch errors, and (2) there is a type inference algorithm which computes a most general typing for an untyped term. We also demonstrate a power of higher-order ACL by showing several examples of "higher-order concurrent prog...
Automated Protocol Verification in Linear Logic
, 2002
"... In this paper we investigate the applicability of a bottom-up evaluation strategy for a first order fragment of linear logic [7] for the purposes of automated validation of authentication protocols. Following [11], we use multi-conclusion clauses to represent the behaviour of agents in a protocol ..."
Abstract
-
Cited by 12 (0 self)
- Add to MetaCart
In this paper we investigate the applicability of a bottom-up evaluation strategy for a first order fragment of linear logic [7] for the purposes of automated validation of authentication protocols. Following [11], we use multi-conclusion clauses to represent the behaviour of agents in a protocol session, and we adopt the Dolev-Yao intruder model and related message and cryptographic assumptions. Also, we use universal quantification to provide a logical and clean way to express creation of nonces. Our approach is well suited to verify properties which can be specified by means of minimality conditions. Unlike traditional approaches based on model-checking, we can reason about parametric, infinite-state systems, thus we do not pose any limitation on the number of parallel runs of a given protocol. Furthermore, our approach can be used both to find attacks and to prove correctness of protocols. We present some preliminary experiments which we have carried out using the above approach.
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 11 (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,
Specifying Real-Time Finite-State Systems in Linear Logic
- In 2-nd International Workshop on Constraint Programming for Time-Critical Applications and Multi-Agent Systems (COTIC
, 1998
"... Real-time finite-state systems may be specified in linear logic by means of linear implications between conjunctions of fixed finite length. In this setting, where time is treated as a dense linear ordering, safety properties may be expressed as certain provability problems. These provability proble ..."
Abstract
-
Cited by 10 (3 self)
- Add to MetaCart
Real-time finite-state systems may be specified in linear logic by means of linear implications between conjunctions of fixed finite length. In this setting, where time is treated as a dense linear ordering, safety properties may be expressed as certain provability problems. These provability problems are shown to be in pspace. They are solvable, with some guidance, by finite proof search in concurrent logic programming environments based on linear logic and acting as sort of model-checkers. One advantage of our approach is that either it provides unsafe runs or it actually establishes safety. 1 Introduction There are a number of formalisms for expressing real-time processes, including [1, 6, 7, 3, 4, 5, 50, 44, 45, 38]. Many of these real-time formalisms are based on temporal logic or its variations [46, 38, 33] or on timed process algebras [14, 42, 43, 23, 12], or on Buchi automata [52, 3]. In some cases exact complexity-theoretic information is available, such as [51, 3, 5], while ...
Concurrent Logic Programming as Uniform Linear Proofs
- Algebraic and Logic Programming
, 1994
"... We describe a formalism based on the proof theory of linear logic, whose aim is to specify concurrent computations and whose language restriction (as compared to other linear logic languages) provides a simpler operational model that can lead to a more practical language core. The fragment is proved ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
We describe a formalism based on the proof theory of linear logic, whose aim is to specify concurrent computations and whose language restriction (as compared to other linear logic languages) provides a simpler operational model that can lead to a more practical language core. The fragment is proved to be an abstract logic programming language, that is any sequent can be derived by uniform proofs. The resulting class of computations can be viewed in terms of multiset rewriting and is reminiscent of the computations arising in the Chemical Abstract Machine and in the Gamma model. The fragment makes it possible to give a logic foundation to existing extensions of Horn clause logic, such as Generalized Clauses, whose declarative semantics is based on an ad hoc construction. Programs and goals can declaratively be characterized by a suitable instance of the phase semantics of linear logic. A canonical phase model is associated to every program. Such a model gives a full characterization of...
Concurrent Constraint Programming and Non-Commutative Linear Logic (Extended Abstract)
, 1996
"... This paper presents a precise connection between a non-commutative version of intuitionistic linear logic (INLL) and concurrent constraint programming (cc). The contribution of this paper is twofold: ffl on the one hand, we refine existing logical characterizations of operational aspects of concu ..."
Abstract
-
Cited by 9 (5 self)
- Add to MetaCart
This paper presents a precise connection between a non-commutative version of intuitionistic linear logic (INLL) and concurrent constraint programming (cc). The contribution of this paper is twofold: ffl on the one hand, we refine existing logical characterizations of operational aspects of concurrent constraint programming, by providing a logical interpretation of finer observable properties of cc programs, namely successes and suspensions. ffl on the other ha...
Logical, Testing, and Observation Equivalence for Processes in a Linear Logic Programming
, 1993
"... Linear logic programming has recently been proposed and shown to be able to integrate a wide range of mechanisms for concurrent computation uniformly in terms of proof search. This paper introduces several process equivalence relations for linear logic programming and investigate relationships betwe ..."
Abstract
-
Cited by 8 (1 self)
- Add to MetaCart
Linear logic programming has recently been proposed and shown to be able to integrate a wide range of mechanisms for concurrent computation uniformly in terms of proof search. This paper introduces several process equivalence relations for linear logic programming and investigate relationships between them in order to establish foundations for program transformation in linear logic programming. We also introduce unfold/fold transformation procedure for linear logic programming and prove its soundness with respect to a testing equivalence. 1 Introduction Linear logic programming, where computation is described in terms of a bottom-up proof search in linear logic[5], has recently been investigated as frameworks for novel concurrent programming languages[3][2][6][7][8][12]. The general goal of this paper is to investigate several equivalence relations for processes in linear logic programming, by which establishing foundations for program transformation in linear logic programming. In th...

