|
ABSTRACT
Lolli is a logic programming language based on the asynchronous propositions of intuitionistic linear logic. It uses a backward chaining, backtracking operational semantics. In this paper we extend Lolli with the remaining connectives of intuitionistic linear logic restricted to occur inside a monad, an idea taken from the concurrent logical framework (CLF). The resulting language, called LolliMon, has a natural forward chaining, committed choice operational semantics inside the monad, while retaining Lolli's semantics outside the monad. LolliMon thereby cleanly integrates both concurrency and saturation with logic programming search. We illustrate its expressive power through several examples including an implementation of the pi-calculus, a call-by-need lambda-calculus, and several saturating algorithms presented in logical form.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
J.-M. Andreoli. Logic programming with focusing proofs in linear logic. Journal of Logic and Computation, 2(3):297--347, 1992.
|
 |
2
|
|
| |
3
|
Y. Bekkers and P. Tarau. Monadic constructs for logic programming. In J.Lloyd, editor, Proceedings of the International Symposium on Logic Programming (ILPS'95), pages 51--65, Portland, Oregon, Dec. 1995. MIT Press.
|
| |
4
|
|
| |
5
|
I. Cervesato, F. Pfenning, D. Walker, and K. Watkins. A concurrent logical framework II: Examples and applications. Technical Report CMU-CS-02-102, Department of Computer Science, Carnegie Mellon University, 2002. Revised May 2003.
|
| |
6
|
|
| |
7
|
T. Frühwirth. Theory and practice of constraint handling rules. Journal of Logic Programming, 37(1--3):95--138, Oct. 1998. Special Issue on Constraint Logic Programming.
|
| |
8
|
|
| |
9
|
|
| |
10
|
|
 |
11
|
|
| |
12
|
J. Harland, D. Pym, and M. Winikoff. Forward and backward chaining in linear logic. In D. Galmiche, editor, Proceedings of the Workshop on Type-Theoretic Languages: Proof Search and Semantics, volume 37 of Electronic Notes in Theoretical Computer Science, Pittsburgh, Pennsylvania, June 2000. Elsevier Science.
|
| |
13
|
|
| |
14
|
N. Kobayashi and A. Yonezawa. Typed higher-order concurrent linear logic programming. Technical Report 94-12, Department of Information Science, University of Tokyo, July 1994.
|
| |
15
|
P. López and J. Polakow. Implementing efficient resource management for linear logic programming. In F. Baader and A. Voronkov, editors, Eleventh International Conference on Logic for Programming Artificial Intelligence and Reasoning (LPAR'04), pages 528--543, Montevideo, Uruguay, Mar. 2005. Springer-Verlag LNAI 3452.
|
 |
16
|
|
| |
17
|
R. McGrail. Monads and Control in Logic Programming. PhD thesis, Wesleyan University, 1997.
|
| |
18
|
D. Miller. A logic programming language with lambda-abstraction, function variables, and simple unification. Journal of Logic and Computation, 1(4):497--536, 1991.
|
| |
19
|
|
| |
20
|
|
| |
21
|
D. Miller, G. Nadathur, F. Pfenning, and A. Scedrov. Uniform proofs as a foundation for logic programming. Annals of Pure and Applied Logic, 51:125--157, 1991.
|
| |
22
|
|
| |
23
|
|
| |
24
|
F. Pfenning. Substructural operational semantics and linear destination-passing style. In W.-N. Chin, editor, Proceedings of the 2nd Asian Symposium on Programming Languages and Systems (APLAS'04), page 196, Taipei, Taiwan, Nov. 2004. Springer-Verlag LNCS 3302.
|
| |
25
|
|
| |
26
|
D. Pym and J. Harland. A uniform proof-theoretic investigation of linear logic programming. Journal of Logic and Computation, 4(2):175--207, April 1994.
|
| |
27
|
|
 |
28
|
|
 |
29
|
|
| |
30
|
K. Watkins, I. Cervesato, F. Pfenning, and D. Walker. A concurrent logical framework I: Judgments and properties. Technical Report CMU-CS-02-101, Department of Computer Science, Carnegie Mellon University, 2002. Revised May 2003.
|
| |
31
|
K. Watkins, I. Cervesato, F. Pfenning, and D. Walker. A concurrent logical framework: The propositional fragment. In S. Berardi, M. Coppo, and F. Damiani, editors, Types for Proofs and Programs, pages 355--377. Springer-Verlag LNCS 3085, 2004. Revised selected papers from the Third International Workshop on Types for Proofs and Programs, Torino, Italy, April 2003.
|
|