English
Related papers

Related papers: Contrasting Deadlock-Free Session Processes (Exten…

200 papers

Protection of confidential data is an important security consideration of today's applications. Of particular concern is to guard against unintentional leakage to a (malicious) observer, who may interact with the program and draw inference…

Logic in Computer Science · Computer Science 2024-07-03 Bas van den Heuvel , Farzaneh Derakhshan , Stephanie Balzer

Protocols provide the unifying glue in concurrent and distributed software today; verifying that message-passing programs conform to such governing protocols is important but difficult. Static approaches based on multiparty session types…

Programming Languages · Computer Science 2022-05-24 Bas van den Heuvel , Jorge A. Pérez

We introduce a novel approach to studying properties of processes in the {\pi}-calculus based on a processes-as-formulas interpretation, by establishing a correspondence between specific sequent calculus derivations and computation trees in…

Logic in Computer Science · Computer Science 2025-05-27 Matteo Acclavio , Giulia Manara , Fabrizio Montesi

Task-parallel programs often enjoy deadlock freedom under certain restrictions, such as the use of structured join operations, as in Cilk and X10, or the use of asynchronous task futures together with deadlock-avoiding policies such as…

Programming Languages · Computer Science 2021-03-04 Caleb Voss , Vivek Sarkar

We present Concurrent GV (CGV), a functional calculus with message-passing concurrency governed by session types. With respect to prior calculi, CGV has increased support for concurrent evaluation and for cyclic network topologies. The…

Logic in Computer Science · Computer Science 2022-10-07 Bas van den Heuvel , Jorge A. Pérez

This paper improves the session typing theory to support the modelling and verification of processes that implement federated learning protocols. To this end, we build upon the asynchronous ``bottom-up'' session typing approach by adding…

Logic in Computer Science · Computer Science 2026-03-27 Ivan Prokić , Simona Prokić , Silvia Ghilezan , Alceste Scalas , Nobuko Yoshida

Concurrency is an important aspect of Petri nets to describe and simulate the behavior of complex systems. Knowing which places and transitions could be executed in parallel helps to understand nets and enables analysis techniques and the…

Data Structures and Algorithms · Computer Science 2026-02-04 Thomas M. Prinz , Julien Klaus , Nick R. T. P. van Beest

Programming models for concurrency are optimized for dealing with nondeterminism, for example to handle asynchronously arriving events. To shield the developer from data race errors effectively, such models may prevent shared access to data…

Software Engineering · Computer Science 2014-10-24 Mischael Schill , Sebastian Nanz , Bertrand Meyer

Message passing is a fundamental element in software development, ranging from concurrent and mobile computing to distributed services, but it suffers from communication errors such as deadlocks. Session types are a typing discipline for…

Programming Languages · Computer Science 2023-10-23 Zekun Ji , Shuling Wang , Xiong Xu

An important property of concurrent objects is whether they support progress -a special case of liveness-guarantees, which ensure the termination of individual method calls under system fairness assumptions. Liveness properties have been…

Formal Languages and Automata Theory · Computer Science 2021-07-22 Chao Wang , Gustavo Petri , Yi Lv , Teng Long , Zhiming Liu

We present algorithms to synthesize component-based systems that are safe and deadlock-free using priorities, which define stateless-precedence between enabled actions. Our core method combines the concept of fault-localization (using…

Logic in Computer Science · Computer Science 2011-10-10 Chih-Hong Cheng , Saddek Bensalem , Yu-Fang Chen , Rongjie Yan , Barbara Jobstmann , Harald Ruess , Christian Buckl , Alois Knoll

Classical Processes (CP) is a calculus where the proof theory of classical linear logic types communicating processes with mobile channels, a la pi-calculus. Its construction builds on a recent propositions as types correspondence between…

Logic in Computer Science · Computer Science 2018-02-09 Fabrizio Montesi

The scheduling of task graphs with communication delays has been extensively studied. Recently, new results for the common sub-case of fork-join shaped task graphs were published, including an EPTAS and polynomial algorithms for special…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-06-06 Huijun Wang , Oliver Sinnen

Local analysis has long been recognised as an effective tool to combat the state-space explosion problem. In this work, we propose a method that systematises the use of local analysis in the verification of deadlock freedom for concurrent…

Software Engineering · Computer Science 2022-07-20 Pedro Antonino , Augusto Sampaio , Jim Woodcock

The lock-free, ordered, linked list is an important, standard example of a concurrent data structure. An obvious, practical drawback of textbook implementations is that failed compare-and-swap (CAS) operations lead to retraversal of the…

Data Structures and Algorithms · Computer Science 2020-11-02 Jesper Larsson Träff , Manuel Pöter

Session types are types for specifying the protocols that communicating processes must follow in a concurrent system. When composing two or more well-typed processes, a session typing system must check whether such processes are multiparty…

Logic in Computer Science · Computer Science 2023-05-26 Marco Carbone , Sonia Marin , Carsten Schürmann

We present a calculus that models a form of process interaction based on copyless message passing, in the style of Singularity OS. The calculus is equipped with a type system ensuring that well-typed processes are free from memory faults,…

Programming Languages · Computer Science 2015-07-01 Viviana Bono , Luca Padovani

Traditional concurrent-programming techniques require programmers to painstakingly write programs for each participant in a concurrent system. Choreographic programming, in contrast, allows a programmer to write one centralized program and…

Programming Languages · Computer Science 2026-05-25 Ashley Samuelson , Andrew K. Hirsch , Ethan Cecchetti

We address the problem of verifying message passing programs, defined as a set of parallel processes communicating through unbounded FIFO buffers. We introduce a bounded analysis that explores a special type of computations, called…

Programming Languages · Computer Science 2018-04-20 Ahmed Bouajjani , Constantin Enea , Kailiang Ji , Shaz Qadeer

In this paper we prove that giving a right actegory with hom-objects is equivalent to giving a right-enriched category with copowers. While this result is known in the closed symmetric setting, our contribution extends the equivalence to…

Programming Languages · Computer Science 2026-03-11 Robin Cockett , Melika Norouzbeygi