Files
linea-monorepo/prover
Gautam Botrel 43141fc13d refactor, perf: prover/crypto/sis improvements (#554)
* fix: revert gnark go mod change

* refactor: checkpoint mvp working

* feat: added case for smartvector.Constant rows block

* refactor: checkpoint

* refactor: checkpoint

* refactor: checkpoint

* style: code cleaning

* style: more comments

* refactor: use gnark-crypto sis and refactor ringsis.TransversalHash

* test: restore bench size

* perf: better parallelization

* chore: update gnark crypto

* fix: restored gnark dep as in main

* test: restored separate tests in transversal hash test

* build: update to gnark crypto master with latest sis

* build: fix linter
2025-02-24 15:10:50 +00:00
..
2025-02-18 23:20:36 +09:00
2025-02-18 23:20:36 +09:00
2025-01-21 09:38:45 -06:00
2024-07-31 18:17:20 +02:00
2025-02-18 23:20:36 +09:00
2024-07-31 18:17:20 +02:00
2024-09-06 10:57:28 +02:00
2024-07-31 18:17:20 +02:00
2024-07-31 18:17:20 +02:00

linea-monorepo/prover

This directory contains the implementation of the prover of Linea. As part of it, it contains an implementation of the Vortex polynomial commitment, of the Arcane compiler, the instantiation of the zkEVM using the arithmetization and the server implementation.

Building and running

The prover has the following build dependencies

  • rust@1.74.0 and cargo
  • go@1.21.5
  • make

The repository counts 2 main binaries:

  • bin/prover : bin/prover setup generate the assets (setup / preprocessing) bin/prover prove run process a request, create a proof and outputs a response.
  • bin/controller : a file-system based server to run Linea's prover

Building and running the setup generator

The setup-generation (make setup) is used to generate the setup for all the types of provers. Execution, Decompression and Aggregation. By default, if the --force flag is not provided, the tool will compile the circuit and check if the destination dir already contains a setup that matches, skipping the CPU intensive phase of the actual plonk Setup if needed.

Run

make setup

Integration tests

./integration/run.sh dev-mode
./integration/run.sh full-mode