A Static Analysis for Classical Linear Logic Programming Language

Author(s):  
Bernd Meyer ◽  
Paolo Bottoni

In this paper we investigate a new approach to formalizing interpretation of and reasoning with visual languages based on linear logic. We argue that an approach based on logic makes it possible to deal with different computational tasks in the usage of visual notations, from parsing and animation to reasoning about diagrams. However, classical first order logic, being monotonic, is not a suitable basis for such an approach. The paper therefore explores linear logic as an alternative. We demonstrate how parsing corresponds to linear proofs and prove the soundness and correctness of this mapping. As our mapping of grammars is into a subset of a linear logic programming language, we also demonstrate how multi-dimensional parsing can be understood as automated linear deduction. We proceed to discuss how the same framework can be used as the foundation of more complex forms of reasoning with and about diagrams.


2014 ◽  
Vol 14 (4-5) ◽  
pp. 493-507 ◽  
Author(s):  
FLAVIO CRUZ ◽  
RICARDO ROCHA ◽  
SETH COPEN GOLDSTEIN ◽  
FRANK PFENNING

AbstractWe 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.


Sign in / Sign up

Export Citation Format

Share Document