ECOOP 2024
Mon 16 - Fri 20 September 2024 Vienna, Austria
co-located with ISSTA/ECOOP 2024
Wed 18 Sep 2024 10:45 - 11:00 at EI 2 Pichelmayer - Synthesis and verification

Session types using \emph{affinity} and \emph{exception handling} mechanisms have been developed to ensure the communication safety of protocols implemented in concurrent and distributed programming languages. Nevertheless, current affine session types are inadequate for specifying real-world asynchronous protocols, as they are usually imposed by \emph{time constraints} which enable \emph{timeout exceptions} to prevent indefinite blocking while awaiting valid messages. This paper proposes the first formal integration of \emph{affinity}, \emph{time constraints}, \emph{timeouts}, and \emph{time-failure handling} based on multiparty session types for supporting reliability in asynchronous distributed systems. With this theory, we statically guarantee that asynchronous timed communication is deadlock-free, communication safe, and will never be hindered by timeout errors or abrupt terminations.

To implement our theory, we introduce Anon, a Rust toolchain designed to facilitate the implementation of safe affine timed protocols. Anon leverages generic types and the time library to handle timed communications, integrated with optional types for affinity. We evaluate our approach by extending diverse examples from the literature to incorporate time and timeouts, demonstrating that our solution incurs negligible overhead compared with an untimed implementation. We also showcase the \emph{correctness by construction} of our approach by implementing various real-world use cases, including a remote data protocol from the Internet of Remote Things domain, and protocols from real-time systems like keyless car entry, Android motion sensors, and smartwatches.

Wed 18 Sep

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:30 - 12:00
Synthesis and verificationTechnical Papers at EI 2 Pichelmayer
10:30
15m
Talk
Inductive Predicate Synthesis Modulo Programs
Technical Papers
Scott Wesley Dalhousie University, Maria Christakis TU Wien, Jorge A. Navas Certora, Richard Trefler University of Waterloo, Valentin Wüstholz ConsenSys, Arie Gurfinkel University of Waterloo
10:45
15m
Talk
Fearless Asynchronous Communications with Timed Multiparty Session Protocols
Technical Papers
Ping Hou University of Oxford, Nicolas Lagaillardie Imperial College London, Nobuko Yoshida University of Oxford
11:00
15m
Talk
Java Bytecode Normalization for Code Similarity Analysis
Technical Papers
Stefan Schott Heinz Nixdorf Institut, Paderborn University, Serena Elisa Ponta SAP Security Research, Wolfram Fischer SAP Security Research, Jonas Klauke Paderborn University, Eric Bodden Heinz Nixdorf Institut, Paderborn University and Fraunhofer IEM
11:15
15m
Talk
Pipit on the Post: proving pre- and post-conditions of reactive systems
Technical Papers
Amos Robinson Australian National University, Australia, Alex Potanin Australian National University
11:30
15m
Talk
Higher-Order Specifications for Deductive Synthesis of Programs with Pointers
Technical Papers
David Young University of Kansas, USA, Ziyi Yang National University of Singapore, Ilya Sergey National University of Singapore, Alex Potanin Australian National University
11:45
15m
Talk
Matching Plans for Frame Inference in Compositional Reasoning
Technical Papers
Andreas Lööw Imperial College London, Daniele Nantes-Sobrinho Imperial College London, Sacha-Élie Ayoun Imperial College London, Petar Maksimović Imperial College London, UK, Philippa Gardner Imperial College London

Information for Participants
Wed 18 Sep 2024 10:30 - 12:00 at EI 2 Pichelmayer - Synthesis and verification
Info for room EI 2 Pichelmayer:

Map: https://tuw-maps.tuwien.ac.at/?q=CF0235

Room tech: https://raumkatalog.tiss.tuwien.ac.at/room/15717