| James Harland and David Pym. A note on the implementation and applications of linear logic programming languages. In G. Gupta, editor, Proceedings of the Seventeenth Annual Computer Science Conference, Christchurch, pages 647--658, January 1994. |
....encoding allows for the type checking of specifications in linear logic, and the construction and validation of proofs in that logic. Previous work in mechanising or implementing linear logic has either encoded it as a distinct object logic [8] or as a logic programming language such as Lygon [6] or Lolli [7] One of the specific features of our encoding is that the constructs of the Coq environment may be used in association with the linear logic proofs, including in particular the extensive set of inductive datatypes and their properties and proofs that form the Coq library. In what ....
James Harland and David Pym. A note on the implementation and applications of linear logic programming languages. In G. Gupta, editor, Proceedings of the Seventeenth Annual Computer Science Conference, Christchurch, pages 647--658, January 1994.
....placed on this process, in accordance with the rules of the logic, but nonetheless this process has many interesting and useful applications. 3 Computational features and examples In this section, we discuss various programming techniques which distinguish Lygon from Prolog (see also [12, 30]) including several examples of Lygon programs. 3.1 Lygon syntax The current implementation of Lygon (Version 0.4) is an interpreter written in BinProlog 9 . The interpreter comprises about 450 lines of code, including comments and whitespace. It currently supports a limited form of program ....
J. Harland and D. Pym. A note on the implementation and applications of linear logic programming languages. Australian Computer Science Communications 16(1), 647-658, 1994.
No context found.
J. Harland and D. Pym. A note on the implementation and applications of linear logic programming languages. Australian Computer Science Communications 16#1#, 647-658, 1994.
....based on linear logic contain a variety of constructs which are not present in (pure) Prolog, thus providing novel and interesting extensions to the language. There have been various proposals for linear logic programming languages, including LO [2] Lolli [8] ACL [10] Forum [12] and Lygon [6, 7, 19, 20]. In this paper we describe some novel and interesting applications of Lygon, with particular reference to graph problems, and problems which involve reasoning about actions. Such applications make particular use of Lygon s basis in linear logic, which allows the natural specification of certain ....
J.A. Harland, D.J. Pym. A Note on the Implementation and Applications of Linear Logic Programming Languages. Proceedings of the Seventeenth Annual Computer Science Conference 647-658, Christchurch, January, 1994.
....of richer subsets than Horn clauses. The second direction involves the use of logics other than classical. Some logics that have been considered as basis for logic programming languages include modal and temporal [14] relevant [4] and linear logics. This paper is concerned with the language Lygon [7, 15, 22]. Lygon is a logic programming language which is based on linear logic. By design the class of formulae used is as large as possible so as to make the language as expressive as possible. Due to its basis in linear logic Lygon s applications include resource management, state handling and ....
....on ; on; off Omega (on Omega off ) Phi (off Omega on ) on; off Phi toggle; on; off Res The Lygon home page [19] contains an introductory tutorial to Lygon, a collection of programs, links to papers on Lygon and the implementation. For more information on Lygon see [7, 22]. 3 Determinising the Omega rule The standard formulation of the inference rules for linear logic have a significant amount of nondeterminism. Some of this nondeterminism is unavoidable and does not create efficiency problems; for example the Phi rule. Consider however the Omega rule: ....
[Article contains additional citation context not shown here]
J. Harland and D. Pym. A note on the implementation and applications of linear logic programming languages. In G. Gupta, editor, Seventeeth Annual Computer Science Conference, pages 647--658, 1994.
....as a computation, and fragments for which this class of proofs is complete are identified as logic programming languages. Discussion and the completeness results for a large fragment of linear logic may be found in [24] these formulae form the basis of the logic programming language Lygon [10, 24, 28]. The analysis of [24] lead to the definition of resolution proofs, which simplify the search process for Lygon programs and goals, by encoding various rules such as L and 8 L into a single resolution rule. However, resolution proofs still contain some elements of non determinism. One solution ....
....proofs, which simplify the search process for Lygon programs and goals, by encoding various rules such as L and 8 L into a single resolution rule. However, resolution proofs still contain some elements of non determinism. One solution to this problem is to search for a proof in a lazy manner [10, 24, 28]; in other words, we allocate resources to each branch of the proof on demand, rather than attempting to determine the distribution in advance. This technique has been successfully used in languages such as Lolli [14, 15] However, in Lygon there is a richer class of formulae (specifically, we ....
[Article contains additional citation context not shown here]
James Harland and David Pym. A note on the implementation and applications of linear logic programming languages. In Gopal Gupta, editor, Seventeeth Annual Computer Science Conference, pages 647-- 658, 1994.
....restrictions placed on this process, in accordance with the rules of the logic, but nonetheless this process has many interesting and useful applications. 3 Programming techniques and examples In this section, we discuss various programming techniques which distinguish Lygon from Prolog (see also [9, 23, 22, 21]) including several examples of Lygon programs. We begin with brief remarks on Lygon syntax [22] 3.1 Lygon syntax The current implementation of Lygon (Version 0.4) is an interpreter written in BinProlog 10 The interpreter com 10 Version 0.4 of Lygon is available from the authors by email ....
....# neg r(1) # neg r(2) # check(X) returns the answer X = even. 4 Other techniques We briefly review the possibility of programming in Lygon with notions of glo bal variables, mutual exclusion and preserving context . Other possible notions, not considered here but briefly discussed in [9], include soft deletes and additions. 4.1 Global variables In linear logic, formulae cannot be copied unless they commence with a , variables which appear outside the scope of a cannot be standardized apart; hence variable names can persist across clauses. Consequently, we denote any ....
J. Harland and D. Pym. A note on the implementation and applications of linear logic programming languages. Australian Computer Science Communications 16(1), 647-658, 1994.
....Horn clauses, but also various features which are peculiar to linear logic. Such features include global variables, a mutual exclusion operator, a notion of state and various constructs for manipulating clauses. A fuller description of these features than is possible in this paper may be found in [5]. Having found the appropriate fragment of linear logic, it then remains to determine how to implement an interpreter for the language. Whilst the notion of a resolution proof was used in [4] as a specialisation of the sequent calculus to definite formulae, there remains a significant amount of ....
....in that the two processes may execute independently except for access to shared resources, which need to be allocated by a central server. Whilst this method is technically sound, it is conceptually more complex than the lazy sequential one, and arguably less useful. As discussed in [7] and [5], the lazy sequential technique is very useful for introducing a notion of state to logic programming languages, in that the excess resources passed from one state to another may be seen as a state resulting from one sub computation, and passed to another. This technique has some very useful ....
[Article contains additional citation context not shown here]
J.A. Harland, D.J. Pym. A Note on the Implementation and Applications of Linear Logic Programming Languages. Proceedings of the Seventeenth Annual Computer Science Conference, pages 647-658, Christchurch, January, 1994.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC