Skip to content

pirapira/eth-isabelle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Formalization of Ethereum Virtual Machine in Isabelle/HOL

This repository contains

  • a Keccak-256 implementation in Isabelle/HOL KEC.thy
  • a RLP implementation (in progress) RLP.thy
  • an EVM implementation ContractSem.thy
  • a relational semantics that captures the callee's nondeterministic behavior RelationalSem.thy
  • some example verified contracts in example

When you see \<Rightarrow> in the source, try using the Isabelle2016 interface. There you see instead.

Prerequisites

Makefile goals

  • make deed produces a verified PDF document for the Deed contract in output/document.pdf.
  • make doc produces output/document.pdf as well as lem/*.pdf.
  • make lem-thy compiles the Lem sources into Isabelle/HOL
  • make all-isabelle checks all Isabelle/HOL sources (but not the ones compiled from Lem)
  • make does everything above

Links

About

A Lem formalization of EVM and some Isabelle/HOL proofs

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •