Progress as Compositional Lock-Freedom

@inproceedings{Carbone2014ProgressAC,
  title={Progress as Compositional Lock-Freedom},
  author={Marco Carbone and Ornela Dardha and F. Montesi},
  booktitle={COORDINATION},
  year={2014}
}
A session-based process satisfies the progress property if its sessions never get stuck when it is executed in an adequate context. Previous work studied how to define progress by introducing the notion of catalysers, execution contexts generated from the type of a process. In this paper, we refine such definition to capture a more intuitive notion of context adequacy for checking progress. Interestingly, our new catalysers lead to a novel characterisation of progress in terms of the standard… Expand
Comparing Deadlock-Free Session Typed Processes
TLDR
This paper compares L and K, two classes of deadlock-free, session typed concurrent processes, and shows that L is strictly included in K, and provides a type-preserving rewriting procedure of processes in K into processes in L. Expand
A Semantics for Propositions as Sessions
TLDR
A variant of Wadler’s session-typed core functional language, GV, is presented and a small-step operational semantics for GV is given, which defines two extensions of GV which preserve deadlock-freedom, determinism, and termination. Expand
Comparing Type Systems for Deadlock-Freedom
TLDR
This paper puts forward the first comparative study of different type systems for message-passing concurrent processes that enforce deadlock-freedom, and provides two type-preserving procedures that suggest that the degree of sharing is a rather subtle criterion for distinguishing typed concurrent processes. Expand
A New Linear Logic for Deadlock-Free Session-Typed Processes
TLDR
A new type system for deadlock-free session-typed \(\pi \)-calculus processes is proposed, by integrating two separate lines of work, and defining a new and more expressive variant of classical linear logic with a proof assignment that gives a session type system with Kobayashi-style priorities. Expand
Classical Higher-Order Processes
TLDR
The metatheory of CHOP is explored, proving that its semantics enjoys type preservation and progress (terms do not get stuck), and a translation from CHOP to CP is defined, which encodes mobility of process code into reference passing. Expand
Assuming Just Enough Fairness to make Session Types Complete for Lock-freedom
TLDR
It is shown that, by using a general merge operator in an otherwise standard approach to global session types, a session type system complete for the strongest amongst those notions of lock-freedom is obtained, which assumes only justness of execution paths. Expand
Type Systems for Distributed Programs: Session Communication
TLDR
This work develops techniques based on types and type systems for the verification of correctness, consistency and safety properties related to communication in complex distributed systems. Expand
Liveness and Safety for Channel-Based Programming
Go is a production-level statically typed programming language whose design features explicit message-passing primitives and lightweight threads, enabling (and encouraging) programmers to developExpand
Separating Sessions Smoothly
TLDR
HGV is introduced, a modular and extensible core calculus for functional programming with session types that enjoys deadlock freedom, confluence, and strong normalisation and obtains a tight operational correspondence between HGV and HCP, a hypersequent-based process-calculus interpretation of classical linear logic. Expand
Classical Higher-Order Processes - (Short Paper)
TLDR
CP is extended with process mobility, inspired by the Higher-Order \(\pi \)-calculus by extending the correspondence between session types and linear propositions with controlled interaction between the two sides. Expand
...
1
2
3
...

References

SHOWING 1-10 OF 40 REFERENCES
On Progress for Structured Communications
We propose a new typing system for the π-calculus with sessions, which ensures the progress property, i.e. once a session has been initiated, typable processes will never starve at session channels.Expand
Deadlock-freedom-by-design: multiparty asynchronous global programming
TLDR
This work proposes a purely-global programming model that defines a new class of deadlock-free concurrent systems, provides type inference, and supports session mobility, and develops a typing discipline that verifies choreographies against protocol specifications, based on multiparty sessions. Expand
Subtyping for session types in the pi calculus
TLDR
The syntax, operational semantics and typing rules of an extended pi calculus are formalized, it is proved that typability guarantees absence of run-time communication errors, and the typing rules are transformed into a practical typechecking algorithm. Expand
From Lock Freedom to Progress Using Session Types
TLDR
A behavioral type system for ensuring progress in a language of binary sessions to annotate actions in session types with priorities representing the urgency with which such actions must be performed and to verify that processes perform such actions with the required priority. Expand
A Type System for Lock-Free Processes
TLDR
The authors' type-based analysis of locks can be seen as a kind of abstract interpretation, and every reduction step of a concrete process is simulated by reduction of its abstract process. Expand
A hybrid type system for lock-freedom of mobile processes
TLDR
A type system for lock-freedom in the π-calculus, which guarantees that certain communications will eventually succeed, is proposed, and a lock- freedom analysis tool has been implemented based on the proposed type system, and tested for nontrivial programs. Expand
A New Type System for Deadlock-Free Processes
TLDR
It is shown that the simply-typed λ-Calculus with recursion can be encoded into the deadlock-free fragment of the authors' typed π-calculus, and is much more expressive than the previous type systems that admit type inference. Expand
A Graphical Approach to Progress for Structured Communication in Web Services
TLDR
A graphical representation of session invocation interdependency is investigated in order to prove progress for the pi-calculus with sessions under the usual session typing discipline and it is proved that for well-typed processes where services contain no free names, such acyclicity is preserved by the reduction semantics. Expand
Session Types as Intuitionistic Linear Propositions
TLDR
This paper introduces a type system for the π-calculus that exactly corresponds to the standard sequent calculus proof system for dual intuitionistic linear logic, and provides the first purely logical account of all features of session types. Expand
Fundamentals of session types
TLDR
A reconstruction of session types in a linear pi calculus where types are qualified as linear or unrestricted, which leads to a surprisingly simply theory which extends typability when compared to traditional systems for session types. Expand
...
1
2
3
4
...