scholarly journals Aneris: A Mechanised Logic for Modular Reasoning about Distributed Systems

Author(s):  
Morten Krogh-Jespersen ◽  
Amin Timany ◽  
Marit Edna Ohlenbusch ◽  
Simon Oddershede Gregersen ◽  
Lars Birkedal

AbstractBuilding network-connected programs and distributed systems is a powerful way to provide scalability and availability in a digital, always-connected era. However, with great power comes great complexity. Reasoning about distributed systems is well-known to be difficult. In this paper we present , a novel framework based on separation logic supporting modular, node-local reasoning about concurrent and distributed systems. The logic is higher-order, concurrent, with higher-order store and network sockets, and is fully mechanized in the Coq proof assistant. We use our framework to verify an implementation of a load balancer that uses multi-threading to distribute load amongst multiple servers and an implementation of the two-phase-commit protocol with a replicated logging service as a client. The two examples certify that is well-suited for both horizontal and vertical modular reasoning.

Author(s):  
Felix A. Wolf ◽  
Linard Arquint ◽  
Martin Clochard ◽  
Wytse Oortwijn ◽  
João C. Pereira ◽  
...  

AbstractGo is an increasingly-popular systems programming language targeting, especially, concurrent and distributed systems. Go differentiates itself from other imperative languages by offering structural subtyping and lightweight concurrency through goroutines with message-passing communication. This combination of features poses interesting challenges for static verification, most prominently the combination of a mutable heap and advanced concurrency primitives.We present Gobra, a modular, deductive program verifier for Go that proves memory safety, crash safety, data-race freedom, and user-provided specifications. Gobra is based on separation logic and supports a large subset of Go. Its implementation translates an annotated Go program into the Viper intermediate verification language and uses an existing SMT-based verification backend to compute and discharge proof obligations.


2021 ◽  
Vol 5 (POPL) ◽  
pp. 1-29
Author(s):  
Léon Gondelman ◽  
Simon Oddershede Gregersen ◽  
Abel Nieto ◽  
Amin Timany ◽  
Lars Birkedal

2021 ◽  
Vol 153 (A2) ◽  
Author(s):  
R P Dallinga ◽  
R H M Huijsmans

Historically “scale effects” in the interpretation of tests with scale models in waves using Froude’s Law of Similitude are mostly associated with viscous effects. Nowadays, with a much more complete modelling of reality and a focus on higher order non-linear phenomena, scaling of model test results implies a wider range of assumptions than the validity of Froude’s Law. Our contribution to the conference is a visionary review of contemporary and future problems in the interpretation of these tests. In this context we will discuss the developments in test techniques, including the development of a new Two-Phase Laboratory facilitating seakeeping and sloshing tests at reduced air pressure.


Computers ◽  
2021 ◽  
Vol 10 (11) ◽  
pp. 142
Author(s):  
Obadah Hammoud ◽  
Ivan Tarkhanov ◽  
Artyom Kosmarski

This paper investigates the problem of distributed storage of electronic documents (both metadata and files) in decentralized blockchain-based b2b systems (DApps). The need to reduce the cost of implementing such systems and the insufficient elaboration of the issue of storing big data in DLT are considered. An approach for building such systems is proposed, which allows optimizing the size of the required storage (by using Erasure coding) and simultaneously providing secure data storage in geographically distributed systems of a company, or within a consortium of companies. The novelty of this solution is that we are the first who combine enterprise DLT with distributed file storage, in which the availability of files is controlled. The results of our experiment demonstrate that the speed of the described DApp is comparable to known b2c torrent projects, and subsequently justify the choice of Hyperledger Fabric and Ethereum Enterprise for its use. Obtained test results show that public blockchain networks are not suitable for creating such a b2b system. The proposed system solves the main challenges of distributed data storage by grouping data into clusters and managing them with a load balancer, while preventing data tempering using a blockchain network. The considered DApps storage methodology easily scales horizontally in terms of distributed file storage and can be deployed on cloud computing technologies, while minimizing the required storage space. We compare this approach with known methods of file storage in distributed systems, including central storage, torrents, IPFS, and Storj. The reliability of this approach is calculated and the result is compared to traditional solutions based on full backup.


Author(s):  
Lars Birkedal ◽  
Bernhard Reus ◽  
Jan Schwinghammer ◽  
Hongseok Yang

Sign in / Sign up

Export Citation Format

Share Document