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 firstname.lastname@example.org Karl Crary Carnegie Mellon email@example.com Robert Harper Carnegie Mellon firstname.lastname@example.org Frank Pfenning Carnegie Mellon email@example.com 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 propositions-as-types 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 type-safe, logically faithful, and computa- tionally realistic. 1 Introduction The popularity of the Internet has enabled the possi- bility of large-scale 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 propositions-as-types 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 . A value of type a50 A represents mobile code of type...
View Full Document
- Spring '10
- Dr. Thomas
- Distributed Computing