Skip to content

ethereum/Yul-K

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

yul-semantics

K formalization of the Yul language

Requires the same dependencies as evm-semantics

Build with:

make

The main goal of this repository is to verify optimizations done by the Solidity compiler via translation validation. In other words, given a yul program, A and the optimized version, A', we prove the an equivalence of programs A <=> A' through bisimulation.

Try the example tests/proofs/sstoreloop-spec.k by running:

./kyul prove tests/proofs/sstoreloop-spec.k

If you want to explore the proof, run:

./kyul klab-prove tests/proofs/sstoreloop-spec.k

followed by:

./kyul klab-view tests/proofs/sstoreloop-spec.k

About

Formal semantics of the yul language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published