English
Related papers

Related papers: Functional Reasoning for Distributed Systems with …

200 papers

System design automation aims to manage the design of embedded systems with ever-increasing complexity. To the success of system design automation, there is still a lack of systematic and formal design process because an entire design…

Software Engineering · Computer Science 2025-05-08 Rui Chen , Ingo Sander

Many security- and performance-critical domains, such as cryptography, rely on low-level verification to minimize the trusted computing surface and allow code to be written directly in assembly. However, verifying assembly code against a…

Logic in Computer Science · Computer Science 2025-05-21 Denis Mazzucato , Abdalrhman Mohamed , Juneyoung Lee , Clark Barrett , Jim Grundy , John Harrison , Corina S. Pasareanu

Message passing is a useful abstraction for implementing concurrent programs. For real-world systems, however, it is often combined with other programming and concurrency paradigms, such as higher-order functions, mutable state,…

Logic in Computer Science · Computer Science 2023-06-22 Jonas Kastberg Hinrichsen , Jesper Bengtson , Robbert Krebbers

Sequential programming and work-flow programming are two useful, but radically different, ways of describing computational processing. Of the two, it is sequential programming that we teach all programmers and support by programming…

Programming Languages · Computer Science 2011-08-24 William Harrison

Synchronous model is a type of formal models for modelling and specifying reactive systems. It has a great advantage over other real-time models that its modelling paradigm supports a deterministic concurrent behaviour of systems. Various…

Software Engineering · Computer Science 2021-04-09 Yuanrui Zhang

Gradually typed programming languages, which allow for soundly mixing static and dynamically typed programming styles, present a strong challenge for metatheorists. Even the simplest sound gradually typed languages feature at least…

Programming Languages · Computer Science 2025-07-14 Eric Giovannini , Tingting Ding , Max S. New

Formal verification provides strong guarantees of correctness of software, which are especially important in safety or security critical systems. Hoare logic is a widely used formalism for rigorous verification of software against…

Programming Languages · Computer Science 2021-03-11 Jayaraj Poroor

Deductive verification of hybrid systems (HSs) increasingly attracts more attention in recent years because of its power and scalability, where a powerful specification logic for HSs is the cornerstone. Often, HSs are naturally modelled by…

Logic in Computer Science · Computer Science 2024-07-16 Naijun Zhan , Xiangyu Jin , Bohua Zhan , Shuling Wang , Dimitar Guelev

Reversible distributed programs have the ability to abort unproductive computation paths and backtrack, while unwinding communication that occurred in the aborted paths. While it is natural to assume that reversibility implies full state…

Programming Languages · Computer Science 2016-02-12 Geoffrey Brown , Amr Sabry

The distributed computing literature considers multiple options for modeling communication. Most simply, communication is categorized as either synchronous or asynchronous. Synchronous communication assumes that messages get delivered…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-17 Andrei Constantinescu , Diana Ghinea , Jakub Sliwinski , Roger Wattenhofer

Python is a popular high-level general-purpose programming language also heavily used by the scientific community. It supports a variety of different programming paradigms and is preferred by many for its ease of use. With the vision of…

Programming Languages · Computer Science 2021-09-08 Maximilian A. Köhl

We study a theory of asynchronous session types ensuring that well-typed processes terminate under a suitable fairness assumption. Fair termination entails starvation freedom and orphan message freedom namely that all messages, including…

Programming Languages · Computer Science 2025-03-17 Luca Padovani , Gianluigi Zavattaro

Discrete-event (DE) systems are concurrent programs where components communicate via tagged events, where tags are drawn from a totally ordered set. Reactors are an emerging model of computation based on DE and realized in the open-source…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-21 Peter Donovan , Erling Jellum , Byeonggil Jun , Hokeun Kim , Edward A. Lee , Shaokai Lin , Marten Lohstroh , Anirudh Rengarajan

In a network of dynamical systems, concurrent synchronization is a regime where multiple groups of fully synchronized elements coexist. In the brain, concurrent synchronization may occur at several scales, with multiple ``rhythms''…

Neurons and Cognition · Quantitative Biology 2007-05-23 Quang-Cuong Pham , Jean-Jacques Slotine

Session types using affinity and 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…

Programming Languages · Computer Science 2024-09-02 Ping Hou , Nicolas Lagaillardie , Nobuko Yoshida

We survey the recent distributed computing literature on checking whether a given distributed system configuration satisfies a given boolean predicate, i.e., whether the configuration is legal or illegal w.r.t. that predicate. We consider…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-09-21 Laurent Feuilloley , Pierre Fraigniaud

Choreographic Programming is a paradigm for the development of concurrent software, where deadlocks are prevented syntactically. However, choreography languages are typically synchronous, whereas many real-world systems have asynchronous…

Programming Languages · Computer Science 2017-12-01 Luís Cruz-Filipe , Fabrizio Montesi

This paper concerns the development of metatheory for extensible languages. It uses as its starting point a view that programming languages tailored to specific application domains are to be constructed by composing components from an open…

Programming Languages · Computer Science 2023-12-25 Dawn Michaelson , Gopalan Nadathur , Eric Van Wyk

Recently, a detailed epistemic reasoning framework for multi-agent systems with byzantine faulty asynchronous agents and possibly unreliable communication was introduced. We have developed a modular extension framework implemented on top of…

Multiagent Systems · Computer Science 2021-08-09 Thomas Schlögl , Ulrich Schmid , Roman Kuznets

Data reconciliation in general, and filesystem synchronization in particular, lacks rigorous theoretical foundation. This paper presents, for the first time, a complete analysis of synchronization for two replicas of a theoretical…

Information Theory · Computer Science 2022-11-15 Elod P. Csirmaz , Laszlo Csirmaz