Giter VIP home page Giter VIP logo

pos-nsb's Introduction

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:

  • Protocol - parameters for the development, implementation of the actual protocol and definition of a block tree.
  • Model - definition of the network, global state, and definition of reachable global states.
  • Properties - proved properties about the protocol. CG.v contains the chain growth theorem, CQ.v contains the chain quality theorem, and CP.v contains the common prefix theorem.

Below is a depiction of the dependencies between the files.

pos-nsb's People

Contributors

sethomsen avatar palmskog avatar

Stargazers

Abhishek Anand avatar ljaniec avatar Guillaume Claret avatar  avatar Orestis Melkonian avatar Brian W Bush avatar  avatar  avatar Sam Stuewe avatar Eshu Manohare avatar Danil Annenkov avatar Simon Gregersen avatar Eduardo Delmoral avatar Dimitris Mostrous avatar HAOYUatHZ avatar longcpp avatar Runchao Han avatar Tim Kersey avatar Максим Сохацький avatar  avatar savi2w avatar Sora Morimoto avatar Seb Mondet avatar Shravan Srinivasan avatar  avatar

Watchers

James Cloos avatar  avatar paper2code - bot avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.