Some Applications of the Linear Logic Programming Language Lygon
Michael Winikoff
Department of Computer Science,
The University of Melbourne,
Parkville 3052, Australia.
winikoff@cs.mu.oz.au
James Harland
Department of Computer Science,
RMIT, GPO Box 2476V,
Melbourne 3001, Australia.
jah@cs.rmit.edu.au
Abstract
We describe and discuss the applications of a logic programming
language called Lygon. This language is based on linear logic, a
logic designed with bounded resources in mind. Linear logic may be
thought of as a generalisation of classical logic, and as a result
Lygon contains various features which do not exist in (pure)
Prolog, whilst maintaining all the features of (pure) Prolog. In this
paper we describe various applications of this language, which include
graph problems, and problems involving states and actions. In logic
programming languages based on classical logic, it is possible to
write elegant solutions for problems over acyclic graphs. By making
use of properties of linear logic, it is possible to write similarly
elegant solutions for cyclic graphs as well. As linear logic enables
changes of state to be neatly expressed, it is straightforward to give
Lygon solutions to problems such as the Yale shooting problem and the
blocks world, and we give example solutions to each.
Keywords Linear Logic, Logic Programming, Graph Problems,
Applications, Actions and State.
Conference Home Page