Proofs about Network Communication: For Humans and Machines

08/21/2023
by   Wolfgang Jeltsch, et al.
0

Many concurrent and distributed systems are safety-critical and therefore have to provide a high degree of assurance. Important properties of such systems are frequently proved on the specification level, but implementations typically deviate from specifications for practical reasons. Machine-checked proofs of bisimilarity statements are often useful for guaranteeing that properties of specifications carry over to implementations. In this paper, we present a way of conducting such proofs with a focus on network communication. The proofs resulting from our approach are not just machine-checked but also intelligible for humans.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/12/2019

Tasks in Modular Proofs of Concurrent Algorithms

Proving correctness of distributed or concurrent algorithms is a mind-ch...
research
02/27/2018

Simpler Specifications and Easier Proofs of Distributed Algorithms Using History Variables

This paper studies specifications and proofs of distributed algorithms w...
research
04/27/2023

Proving Logical Atomicity using Lock Invariants

Logical atomicity has been widely accepted as a specification format for...
research
07/10/2023

Declarative Linearizability Proofs for Descriptor-Based Concurrent Helping Algorithms

Linearizability is a standard correctness criterion for concurrent algor...
research
04/15/2019

Formalization of Automated Trading Systems in a Concurrent Linear Framework

We present a declarative and modular specification of an automated tradi...
research
02/16/2018

Paxos Consensus, Deconstructed and Abstracted (Extended Version)

Lamport's Paxos algorithm is a classic consensus protocol for state mach...
research
04/28/2020

Certifying Certainty and Uncertainty in Approximate Membership Query Structures – Extended Version

Approximate Membership Query structures (AMQs) rely on randomisation for...

Please sign up or login with your details

Forgot password? Click here to reset