Linearly Refined Session Types
Pedro Baltazar (University of Lisbon, Faculty of Sciences, LaSIGE),, Dimitris Mostrous (University of Lisbon, Faculty of Sciences, LaSIGE),, Vasco T. Vasconcelos (University of Lisbon, Faculty of Sciences, LaSIGE)

TL;DR
This paper introduces a novel type system combining session types with refinement types using linear logic, enabling detailed specifications of communication protocols with logical constraints on exchanged values.
Contribution
It presents a pi calculus with assume and assert operations, integrating session and refinement types in a linear logic framework for precise protocol specifications.
Findings
Enables fine-grained protocol specifications
Uses linear logic to treat refinements as logical resources
Combines session and refinement types effectively
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.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
