Papers
Topics
Authors
Recent
Search
2000 character limit reached

Fairness and Communication-Based Semantics for Session-Typed Languages

Published 2 Apr 2021 in cs.PL | (2104.01065v2)

Abstract: We give communication-based semantics and reasoning techniques for Polarized SILL, a rich session-typed programming language with general recursion. Its features include channel and code transmission, synchronous and asynchronous communication, and functional programming. Our contributions are distinguished by their faithfulness to the process abstraction, i.e., to the premise that communication is the only observable phenomenon of processes. We give the first observed communication semantics that supports general recursion and code transmission. Observed communication semantics define the meaning of processes in terms of their observed communications. We use this observational semantics to define experiments on processes, and we give a communication-based testing equivalences framework for defining observational simulations and equivalences on processes. This framework captures several natural equivalences, and we show that one of these coincides with barbed congruence, the canonical notion of process equivalence. Polarized SILL is defined using a substructural operational semantics based on multiset rewriting. To ensure that our contributions are well-defined in the presence of non-termination, we introduce fairness for multiset rewriting systems. We construct a fair scheduler, we give sufficient conditions for traces to be fair, and we study the effects of permutation on fair traces.

Authors (1)
Citations (4)

Summary

No one has generated a summary of this paper yet.

Paper to Video (Beta)

No one has generated a video about this paper yet.

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Collections

Sign up for free to add this paper to one or more collections.