###
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