Abstract
The purpose of these notes is to discuss some examples of the importance of types for reasoning about concurrent systems, and to list some relevant references. The list is surely not meant to be exhaustive, as the area is broad and very active. The examples are presented in the π-calculus [29], a paradigmatical process calculus for message-passing concurrency. We will not describe the proof techniques based on types with which the equalities in the examples are actually proved; for this, the interested reader can follow the references.
Chapter PDF
References
M. Abadi. Secrecy by typing in security protocols. In M. Abadi and T. Ito, editors, Proc. TACS’ 97, volume 1281 of Lecture Notes in Computer Science. Springer Verlag, 1997.
S. Abramsky, S. J. Gay, and R. Nagarajan. Interaction categories and the foundations of typed concurrent programming. In Deductive Program Design: Proceedings of the 1994 Marktoberdorf Summer School, NATO ASI Series F, 1995.
R. Amadio. An asynchronous model of locality, failure, and process mobility. In Proc. Coordination’97, volume 1282 of Lecture Notes in Computer Science. Springer Verlag, 1997.
D. Bolignano and V. Ménissier-Morain. Formal verification of cryptographic protocols using coq. Submitted to a journal, 1997.
M. Boreale and D. Sangiorgi. Bisimulation in name-passing calculi without matching. In 13th LICS Conf. IEEE Computer Society Press, 1998.
G. Boudol. The pi-calculus in direct style. In Proc. 24th POPL. ACM Press, 1997.
G. Boudol. Typing the use of resources in a concurrent calculus. In Proc. ASIAN’ 97, volume 1345 of Lecture Notes in Computer Science. Springer Verlag, 1997.
S. Dal-Zilio. Concurrent objects in the blue calculus. Submitted, 1998.
R. De Nicola, G. Ferrari, and R. Pugliese. KLAIM: A kernel Language for Agents Interaction and Mobility. IEEE Transactions on Software Engineering, 24(5):315–330, 1998.
C. Fournet and G. Gonthier. The Reflexive Chemical Abstract Machine and the Join calculus. In Proc. 23th POPL. ACM Press, 1996.
C. Fournet, C. Laneve, L. Maranget, and D. Remy. Implict typing ala ML for the join-calculus. In CONCUR’97. Springer Verlag, 1997.
S. Gay. A sort inference algorithm for the polyadic π-calculus. In Proc. 20th POPL. ACM, 1993.
S. J. Gay and R. R. Nagarajan. A typed calculus of synchronous processes. In 10th LICS Conf. IEEE Computer Society Press, 1995.
J. F. Groote, F. Monin, and J. C. Van de Pol. Checking verifications of protocols and distributed systems by computer. In Proc. CONCUR’ 98, volume 1466 of Lecture Notes in Computer Science. Springer Verlag, 1998.
N. Heintze and Riecke J. G. The SLam calculus: Programming with security and integrity. In Proc. 25th POPL. ACM Press, 1998.
M. Hennessy and J. Riely. Resource access control in systems of mobile agents. In U. Nestmann and B. C. Pierce, editors, HLCL’ 98: High-Level Concurrent Languages, volume 16.3 of ENTCS. Elsevier Science Publishers, 1998.
M. Hennessy and J. Riely. A typed language for distributed mobile processes. In Proc. 25th POPL. ACM Press, 1998.
K. Honda. Types for dyadic interaction. In E. Best, editor, Proc. CONCUR’ 93, volume 715 of Lecture Notes in Computer Science, pages 509–523. Springer Verlag, 1993.
K. Honda. Composing processes. In Proc. 23th POPL. ACM Press, 1996.
H. Hüttel, J. Kleist, M. Merro, and U. Nestmann. Migration = cloning; aliasing. To be presented at Sixth Workshop on Foundations of Object-Oriented Languages (FOOL 6), 1999.
C. B. Jones. A π-calculus semantics for an object-based design notation. In E. Best, editor, Proc. CONCUR’ 93, volume 715 of Lecture Notes in Computer Science, pages 158–172. Springer Verlag, 1993.
J. Kleist and D. Sangiorgi. Imperative objects and mobile processes. In Proc. IFIP Working Conference on Programming Concepts and Methods (PROCOMET’98). North-Holland, 1998.
N. Kobayashi. A partially deadlock-free typed process calculus. Transactions on Programming Languages and Systems, 20(2):436–482, 1998. A preliminary version in 12th Lics Conf. IEEE Computer Society Press 128-139, 1997.
N. Kobayashi, B. C. Pierce, and D. N. Turner. Linearity and the pi-calculus. In Proc. 23th POPL. ACM Press, 1996.
X. Leroy and F. Rouaix. Security properties of typed applets. In Proc. 25th POPL. ACM Press, 1998.
M. Merro and D. Sangiorgi. On asynchrony in name-passing calculi. In 25th ICALP, volume 1443 of Lecture Notes in Computer Science. Springer Verlag, 1998.
R. Milner. The polyadic π-calculus: a tutorial. Technical Report ECS-LFCS-91-180, LFCS, Dept. of Comp. Sci., Edinburgh Univ., October 1991. Also in Logic and Algebra of Specification, ed. F. L. Bauer, W. Brauer and H. Schwichtenberg, Springer Verlag, 1993.
R. Milner. Functions as processes. Journal of Mathematical Structures in Computer Science, 2(2):119–141, 1992.
R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes, (Parts I and II). Information and Computation, 100:1–77, 1992.
J. C. Mitchell and G. D. Plotkin. Abstract types have existential type. ACM Trans. Prog. Lang. and Sys., 10(3):470–502, 1988.
G. C. Necula. Proof-carrying code. In Proc. 24th POPL. ACM Press, 1997.
J. Niehren. Functional computation as concurrent computation. In Proc. 23th POPL. ACM Press, 1996.
L. C. Paulson. The inductive approach to verifying cryptographic protocols. J. Computer Security, 6:85–128, 1998.
B. Pierce and D. Sangiorgi. Typing and subtyping for mobile processes. Journal of Mathematical Structures in Computer Science, 6(5):409–454, 1996. An extended abstract in Proc. LICS 93, IEEE Computer Society Press.
B. Pierce and D. Sangiorgi. Behavioral equivalence in the polymorphic pi-calculus. In 24th POPL. ACM Press, 1997.
B. C. Pierce and D. N. Turner. Pict: A programming language based on the pi-calculus. Technical Report CSCI 476, Indiana University, 1997. To appear in Proof, Language and Interaction: Essays in Honour of Robin Milner, Gordon Plotkin, Colin Stirling, and Mads Tofte, editors, MIT Press.
A. Ravara and V. T. Vasconcelos. Behavioural types for a calculus of concurrent objects. In 3rd International Euro-Par Conference, volume 1300 of Lecture Notes in Computer Science, pages 554–561. Springer Verlag, 1997.
J. C. Reynolds. Preliminary design of the programming language Forsythe. Tech. rept. CMU-CS-88-159. Carnegie Mellon University., 1988.
D. Sangiorgi. Locality and non-interleaving semantics in calculi for mobile processes. Theoretical Computer Science, 155:39–83, 1996.
D. Sangiorgi. The name discipline of receptiveness. In 24th ICALP, volume 1256 of Lecture Notes in Computer Science. Springer Verlag, 1997. To appear in TCS.
D. Sangiorgi. Typed π-calculus at work: a proof of Jones’s parallelisation transformation on concurrent objects. Presented at the Fourth Workshop on Foundations of Object-Oriented Languages (FOOL 4). To appear in Theory and Practice of Object-oriented Systems, 1997.
D. Sangiorgi. Interpreting functions as pi-calculus processes: a tutorial. Technical Report RR-3470, INRIA-Sophia Antipolis, 1998.
P. Sewell. Global/local subtyping and capability inference for a distributed π-calculus. In Proc. 25th ICALP, volume 1443 of Lecture Notes in Computer Science. Springer Verlag, 1998.
G. Smith and D. Volpano. Secure information flow in a multi-threaded imperative language. In Proc. 25th POPL. ACM Press, 1998.
M. Steffen and U. Nestmann. Typing confluence. Interner Bericht IMMD7-xx/95, Informatik VII, Universität Erlangen-Nürnberg, 1995.
E. Sumii and N. Kobayashi. A generalized deadlock-free process calculus. In U. Nestmann and B. C. Pierce, editors, HLCL’ 98: High-Level Concurrent Languages, volume 16.3 of ENTCS. Elsevier Science Publishers, 1998.
N. D. Turner. The polymorphic pi-calculus: Theory and Implementation. PhD thesis, Department of Computer Science, University of Edinburgh, 1996.
V. T. Vasconcelos. Predicative polymorphism in-calculus. In Proc. 6th Parallel Architectures and Languages Europe, volume 817 of Lecture Notes in Computer Science. Springer Verlag, 1994.
V. T. Vasconcelos and R. Bastos. Core-TyCO, the language definition, version 0.1. DI/FCUL TR 98-3, Department of Computer Science, University of Lisbon, March 1998.
V. T. Vasconcelos and K. Honda. Principal typing schemes in a polyadic π-calculus. In E. Best, editor, Proc. CONCUR’ 93, volume 715 of Lecture Notes in Computer Science. Springer Verlag, 1993.
V. T. Vasconcelos and M. Tokoro. A typing system for a calculus of objects. In Proc. Object Technologies for Advanced Software `93, volume 742 of Lecture Notes in Computer Science, pages 460–474. Springer Verlag, 1993.
D. Walker. Objects in the π-calculus. Information and Computation, 116(2):253–271, 1995.
N. Yoshida. Graph types for monadic mobile processes. In Proc. FST & TCS, volume 1180 of Lecture Notes in Computer Science, pages 371–386. Springer Verlag, 1996.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sangiorgi, D. (1999). Reasoning about Concurrent Systems Using Types. In: Thomas, W. (eds) Foundations of Software Science and Computation Structures. FoSSaCS 1999. Lecture Notes in Computer Science, vol 1578. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49019-1_3
Download citation
DOI: https://doi.org/10.1007/3-540-49019-1_3
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65719-4
Online ISBN: 978-3-540-49019-7
eBook Packages: Springer Book Archive