This preview shows pages 1–2. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: A Symmetric Modal Lambda Calculus for Distributed Computing * Tom Murphy VII Carnegie Mellon tom7@cs.cmu.edu Karl Crary Carnegie Mellon crary@cs.cmu.edu Robert Harper Carnegie Mellon rwh@cs.cmu.edu Frank Pfenning Carnegie Mellon fp@cs.cmu.edu Abstract We present a foundational language for distributed pro gramming, called Lambda 5, that addresses both mobility of code and locality of resources. In order to construct our system, we appeal to the pow erful propositionsastypes interpretation of logic. Specifi cally, we take the possible worlds of the intuitionistic modal logic IS5 to be nodes on a network, and the connectives a50 and a51 to reflect mobility and locality, respectively. We formulate a novel system of natural deduction for IS5, decomposing the introduction and elimination rules for a50 and a51 , thereby allowing the corresponding programs to be more direct. We then give an operational semantics to our calculus that is typesafe, logically faithful, and computa tionally realistic. 1 Introduction The popularity of the Internet has enabled the possi bility of largescale distributed computation. Distributed programming is especially popular for scientific computing tasks. The goal of this paper is to present a foundational programming language for distributed computing. Scien tific computing tasks often require the physical distribution of computational resources and sensing instruments. To be relevant, our language must address both the mobility of code and the locality of fixed resources. Due to aesthetic considerations, we wish to take a propositionsastypes interpretation of an appropriate logic to form the basis of our programming language. More over, since the type systems of realistic languages such as ML and Haskell come from the same source, our constructs will smoothly integrate with such languages. We argue that intuitionistic modal logic forms an excellent basis for dis tributed computing because of its ability to represent spatial reasoning. * The ConCert Project is supported by the National Science Foundation under grant ITR/SY+SI 0121633: Language Technology for Trustless Software Dissemi nation. Just as propositional logic is concerned with truth , modal logic is concerned with truth relative to different worlds . The worlds are related by an accessibility relation whose properties distinguish different modal logics. We will ex plain our choice of accessibility relation below. Modal logic is generally concerned with two forms of propositions a50 A , meaning that A is true in every (accessi ble) world , and a51 A , meaning that A is true in some (ac cessible) world . Our computational interpretation realizes these worlds as the nodes in a network. Because our model is a computer network where all nodes can communicate with each other equally, we choose an accessibility relation that is reflexive, symmetric, and transitive, which leads to the intuitionistic modal logic IS5 [15]. A value of type a50 A represents mobile code of type...
View
Full
Document
 Spring '10
 Dr. Thomas
 Distributed Computing

Click to edit the document details