Kishon's Poker Game

09/23/2018
by   Uri Abraham, et al.
0

We present an approach for proving the correctness of distributed algorithms that obviate interleaving of processes' actions. The main part of the correctness proof is conducted at a higher abstract level and uses Tarskian system executions that combine two separate issues: the specification of the serial process that executes its protocol alone (no concurrency here), and the specification of the communication objects (no code here). In order to explain this approach a short algorithm for two concurrent processes that we call "Kishon's Poker" is introduced and is used as a platform where this approach is compared to the standard one which is based on the notions of global state, step, and history.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/25/2023

Proving Correctness of Parallel Implementations of Transition System Specifications

The overall problem addressed in this paper is the long-standing problem...
research
09/12/2019

Tasks in Modular Proofs of Concurrent Algorithms

Proving correctness of distributed or concurrent algorithms is a mind-ch...
research
05/19/2023

Specification and Runtime Checking of Derecho, A Protocol for Fast Replication for Cloud Services

Reliable distributed systems require replication and consensus among dis...
research
06/26/2019

On the correctness of Egalitarian Paxos

This paper identifies a problem in both the TLA+ specification and the i...
research
07/26/2023

Algoritmo Concurrente por Conjuntos de Pilas con Multiplicidad: SetStackLogic

This article aims to describe and explain the theoretical foundations of...
research
02/02/2018

Extending Causal Consistency to any Object Defined by a Sequential Specification

This paper presents a simple generalization of causal consistency suited...
research
04/01/2021

A Multipurpose Formal RISC-V Specification

RISC-V is a relatively new, open instruction set architecture with a mat...

Please sign up or login with your details

Forgot password? Click here to reset