Skip to content

0xPolygonHermez/zkevm-techdocs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Polygon zkEVM Technical Documentation Repository

General Info

This repository contains documentation material about the different aspects of the Polygon zkEVM. In particular, this repository contains three types of materials: (A) system description slides, (B) system description documents (that we also name as our knowledge layer) and finally, (C) technical specification documents.

Disclaimer

Materials in this repo are being continuously reviewed and updated.

A. System Description Slides

  • Concepts: Here you can find slides about some concepts that are recommended to understand the zkEVM.
  • Proving System Principles: Here you can find the first part of the zkEVM architecture slides that present the basic principles of the proving system used by the zkEVM.
  • Sequencing and Proving: Here you can find the second part of the zkEVM architecture slides that presents the two main processes in the zkEVM: the sequencing and the proving.
  • Layer Communications: Here you can find the third part of the zkEVM architecture slides that shows how the different layers exchange information in the zkEVM architecture.
  • Exchanging Assets and Messages: Here you can find the fourth part of the zkEVM architecture slides that shows how we use the layer exchange to transfer assets and messages between layers.
  • uLXLY: Here you can find the fifth part of the zkEVM architecture slides that explains the unified LXLY.
  • Economics: Here you can find the sixth part of the zkEVM architecture slides that explains the economic aspects of the zkEVM.

B. System Description Documents (Knowledge Layer)

C. Technical Specification Documents

Currently there are the following documents (the order is valid for linear reading):

  • MulMod Opcode: This document describes the implementation of the mulmod opcode.
  • eSTARK: This paper describes eAIR, a set of constraints and its proving system.
  • PIL: This document describes the Polynomial Identity Language (PIL), which is a novel domain-specific language useful for defining eAIR constraints.
  • Proof Recurssion: This document specifies how the polygon zkEVM is proven using recursion, agregation and composition. The constraints of the zkEVM are specified as polynomial identities using the PIL language. Then, an execution trace can be proven using the PIL specification for building a STARK that is proved with the FRI protocol. The problem is that STARKs generate big proofs. This document describes how to use recursion together with composition to shorten the proof size.

About

Technical documentation of the zkEVM

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •