Modal Proofs as Distributed Programs

(Extended Abstract)
  • Limin Jia
  • David Walker
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2986)

Abstract

We develop a new foundation for distributed programming languages by defining an intuitionistic, modal logic and then interpreting the modal proofs as distributed programs. More specifically, the proof terms for the various modalities have computational interpretations as remote procedure calls, commands to broadcast computations to all nodes in the network, commands to use portable code, and finally, commands to invoke computational agents that can find their own way to safe places in the network where they can execute. We prove some simple meta-theoretic results about our logic as well as a safety theorem that demonstrates that the deductive rules act as a sound type system for a distributed programming language.

References

  1. 1.
    Fournet, C., Gonthier, G., Lévy, J.J., Maranget, L., Rémy, D.: A calculus of mobile agents. In: Sassone, V., Montanari, U. (eds.) CONCUR 1996. LNCS, vol. 1119, pp. 406–421. Springer, Heidelberg (1996)Google Scholar
  2. 2.
    Cardelli, L., Gordon, A.D.: Mobile ambients. Theoretical Computer Science 240, 177–213 (2000)MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Löf, M.: On the meanings of the logical constants and the justifications of the logical laws. Technical Report 2, University of Siena (1985)Google Scholar
  4. 4.
    Pfenning, F.: Logical frameworks. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning, pp. 977–1061. Elsevier Science/ MIT Press (2001)Google Scholar
  5. 5.
    Pfenning, F., Davies, R.: A judgmental reconstruction of modal logic. Mathematical Structures in Computer Science 11, 511–540 (2001)MATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Jia, L., Walker, D.: Modal proofs as distributed programs. Technical Report TR-671-03, Princeton University (2003)Google Scholar
  7. 7.
    Simpson, A.K.: The Proof Theory and Semantics of Intuitionistic Modal Logic. PhD thesis, University of Edinburgh, Edinburgh (1994)Google Scholar
  8. 8.
    Abramsky, S.: Computational interpretations of linear logic. Theoretical Computer Science 111, 3–57 (1993)MATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Lincoln, P., Mitchell, J.: Operational aspects of linear lambda calculus. In: IEEE Symposium on Logic in Computer Science, pp. 235–246 (1992)Google Scholar
  10. 10.
    Chirimar, J., Gunter, C.A., Riecke, J.G.: Proving memory management invariants for a language based on linear logic. In: ACM Conference on Lisp and Functional Programming, pp. 139–150 (1992)Google Scholar
  11. 11.
    Turner, D.N., Wadler, P.: Operational interpretations of linear logic. Theoretical Computer Science 227, 231–248 (1999); Special issue on linear logicMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Prior, A.: Past, present and future. Oxford University Press, Oxford (1967)MATHGoogle Scholar
  13. 13.
    Cardelli, L., Gordon, A.: Anytime, anywhere: Modal logics for mobile ambients. In: Twenty-Seventh ACM Symposium on Principles of Programming Languages, pp. 365–377. ACM Press, New York (2000)Google Scholar
  14. 14.
    Kobayashi, N., Shimizu, T., Yonezawa, A.: Distributed concurrent linear logic programming. Theoretical Computer Science 227, 185–220 (1999)MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Davies, R., Pfenning, F.: A modal analysis of staged computation. Journal of the ACM 48, 555–604 (2001)CrossRefMathSciNetGoogle Scholar
  16. 16.
    Moody, J.: Modal logic as a basis for distributed computation. Technical Report CMU-CS-03-194, Carnegie Mellon University (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Limin Jia
    • 1
  • David Walker
    • 1
  1. 1.Princeton UniversityPrincetonUSA

Personalised recommendations