Home

Awesome

PoS-NSB

CI

This repository contains a formalization of Proof-of-Stake (PoS) Nakamoto-style blockchain (NSB). Assuming a synchronous network with a static set of corrupted parties we prove chain growth, chain quality, and common prefix.

Meta

Building

The requirements can be installed via OPAM:

opam repo add coq-released https://coq.inria.fr/opam/released
opam install coq.8.11.2 coq-mathcomp-ssreflect.1.11.0 \
  coq-mathcomp-finmap coq-equations coq-record-update

Then, run make clean; make from the root folder. This will build all the libraries and check all the proofs.

Project Structure

The top-level structure consists of the following folders:

Below is a depiction of the dependencies between the files.

<p align="center"> <img src="deps.svg" width="500" title="File dependencies" /> </p>