Wed 19 Jul 2023 14:45 - 15:00 at Amazon Auditorium (Gates G20) - ECOOP 2: Replication Chair(s): Eric Jul

Local-first software manages and processes private data locally while still enabling collaboration between multiple parties connected via partially unreliable networks. Such software typically involves interactions with users and the execution environment (the outside world). The unpredictability of such interactions paired with their decentralized nature make reasoning about the correctness of local-first software a challenging endeavor. Yet, existing solutions to develop local-first software do not provide support for automated safety guarantees and instead expect developers to reason about concurrent interactions in an environment with unreliable network conditions.

We propose LoRe, a programming model and compiler that automatically verifies developer-supplied safety properties for local-first applications. LoRe combines the declarative data flow of reactive programming with static analysis and verification techniques to precisely determine concurrent interactions that violate safety invariants and to selectively employ strong consistency through coordination where required. We propose a formalized proof principle and demonstrate how to automate the process in a prototype implementation that outputs verified executable code. Our evaluation shows that LoRe simplifies the development of safe local-first software when compared to state-of-the-art approaches and that verification times are acceptable.

Wed 19 Jul

Displayed time zone: Pacific Time (US & Canada) change

13:30 - 15:00
ECOOP 2: ReplicationResearch Papers at Amazon Auditorium (Gates G20)
Chair(s): Eric Jul University of Oslo
13:30
15m
Talk
Behavioural Types for Local-First Software
Research Papers
Roland Kuhn Actyx AG, Hernan Melgratti University of Buenos Aires, Argentina, Emilio Tuosto Gran Sasso Science Institute, L'Aquila, Italy
DOI
13:45
15m
Talk
Algebraic Replicated Data Types: Programming Secure Local-First Software
Research Papers
Christian Kuessner Technische Universität Darmstadt, Ragnar Mogk Technische Universität Darmstadt, Anna-Katharina Wickert TU Darmstadt, Germany, Mira Mezini TU Darmstadt
DOI Pre-print
14:00
15m
Talk
Modular Verification of State-Based CRDTs in Separation Logic
Research Papers
Abel Nieto Aarhus University, Arnaud Daby-Seesaram ENS Paris Saclay, Léon Gondelman Aarhus University, Amin Timany Aarhus University, Lars Birkedal Aarhus University
DOI
14:15
15m
Talk
VeriFx: Correct Replicated Data Types for the Masses
Research Papers
Kevin De Porre Vrije Universiteit Brussel, Carla Ferreira NOVA University Lisbon, Elisa Gonzalez Boix Vrije Universiteit Brussel
DOI
14:30
15m
Talk
Nested Pure Operation-Based CRDTs
Research Papers
Jim Bauwens Vrije Universiteit Brussel, Elisa Gonzalez Boix Vrije Universiteit Brussel
DOI
14:45
15m
Talk
LoRe: A Programming Model for Verifiably Safe Local-First Software
Research Papers
Julian Haas Technische Universität Darmstadt, Ragnar Mogk Technische Universität Darmstadt, Elena Yanakieva University of Kaiserslautern-Landau, Annette Bieniusa Kaiserslautern, Mira Mezini TU Darmstadt
DOI Pre-print