Hostname: page-component-77f85d65b8-g4pgd Total loading time: 0 Render date: 2026-03-30T08:40:46.343Z Has data issue: false hasContentIssue false

A Linear Logic Programming Language for Concurrent Programming over Graph Structures

Published online by Cambridge University Press:  21 July 2014

FLAVIO CRUZ
Affiliation:
Carnegie Mellon University, Pittsburgh, PA 15213 (e-mail: fmfernan@cs.cmu.edu, seth@cs.cmu.edu, fp@cs.cmu.edu) CRACS & INESC TEC, Faculty of Sciences, University Of Porto, Rua do Campo Alegre, 1021/1055, 4169-007 Porto, Portugal (e-mail: ricroc@dcc.fc.up.pt)
RICARDO ROCHA
Affiliation:
CRACS & INESC TEC, Faculty of Sciences, University Of Porto, Rua do Campo Alegre, 1021/1055, 4169-007 Porto, Portugal (e-mail: ricroc@dcc.fc.up.pt)
SETH COPEN GOLDSTEIN
Affiliation:
Carnegie Mellon University, Pittsburgh, PA 15213 (e-mail: fmfernan@cs.cmu.edu, seth@cs.cmu.edu, fp@cs.cmu.edu)
FRANK PFENNING
Affiliation:
Carnegie Mellon University, Pittsburgh, PA 15213 (e-mail: fmfernan@cs.cmu.edu, seth@cs.cmu.edu, fp@cs.cmu.edu)

Abstract

We have designed a new logic programming language called LM (Linear Meld) for programming graph-based algorithms in a declarative fashion. Our language is based on linear logic, an expressive logical system where logical facts can be consumed. Because LM integrates both classical and linear logic, LM tends to be more expressive than other logic programming languages. LM programs are naturally concurrent because facts are partitioned by nodes of a graph data structure. Computation is performed at the node level while communication happens between connected nodes. In this paper, we present the syntax and operational semantics of our language and illustrate its use through a number of examples.

Information

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2014 

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Article purchase

Temporarily unavailable