Linearly Refined Session Types
Abstract
Session types capture precise protocol structure in concurrent programming, but do not specify properties of the exchanged values beyond their basic type. Refinement types are a form of dependent types that can address this limitation, combining types with logical formulae that may refer to program values and can constrain types using arbitrary predicates. We present a pi calculus with assume and assert operations, typed using a session discipline that incorporates refinement formulae written in a fragment of Multiplicative Linear Logic. Our original combination of session and refinement types, together with the well established benefits of linearity, allows very fine-grained specifications of communication protocols in which refinement formulae are treated as logical resources rather than persistent truths.
Keywords
Cite
@article{arxiv.1211.4099,
title = {Linearly Refined Session Types},
author = {Pedro Baltazar and Dimitris Mostrous and Vasco T. Vasconcelos},
journal= {arXiv preprint arXiv:1211.4099},
year = {2012}
}
Comments
In Proceedings LINEARITY 2012, arXiv:1211.3480