Skip to content

Implementation of the constraint system of Linea, specified in the linea-specification repo.

License

Notifications You must be signed in to change notification settings

Consensys/linea-constraints

Repository files navigation

Linea constraints

This repository hosts the implementation of the constraint system specified in the linea-specification repo.

Linea’s constraint system applies to so-called traces which are large matrices of fixed width (i.e. fixed number of columns or ‘registries’) and variable depth (correlating with the complexity of the EVM execution). The production of such traces is the job of the linea-tracer repo.

Constraints and traces are two of the inputs to the prover.

It serves developers by making the Linea tech stack open source under the Apache 2.0 license.

What is Linea?

Linea is a developer-ready layer 2 network scaling Ethereum. It's secured with a zero-knowledge rollup, built on lattice-based cryptography, and powered by Consensys.

Looking for the Linea code?

Linea's stack is made up of multiple repositories, these include:

  • This repo, linea-constraints: Implementation of the constraint system from the specification
  • linea-monorepo: The main repository for the Linea stack & network
  • linea-besu: Fork of Besu to implement the Linea-Besu client
  • linea-sequencer: A set of Linea-Besu plugins for the sequencer and RPC nodes
  • linea-tracer: Linea-Besu plugin which produces the traces that the constraint system applies and that serve as inputs to the prover
  • linea-specification: Specification of the constraint system defining Linea's zkEVM

Linea abstracts away the complexity of this technical architecture to allow developers to:

... and more.

How to contribute

Contributions of any kind are welcome!

  1. Create an issue.

If the proposed update is non-trivial, also tag us for discussion.

  1. Submit the update as a pull request from your fork of this repo, and tag us for review.

Include the issue number in the pull request description and (optionally) in the branch name.

Consider starting with a "good first issue".

Before contributing, ensure you're familiar with:

Useful links

About

Implementation of the constraint system of Linea, specified in the linea-specification repo.

Resources

License

Stars

Watchers

Forks

Languages