diff --git a/README.md b/README.md index b3399469..dbfaa571 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ Linea's stack is made up of multiple repositories, these include: - [linea-sequencer](https://github.com/Consensys/linea-sequencer): A set of Linea-Besu plugins for the sequencer and RPC nodes - [linea-tracer](https://github.com/Consensys/linea-tracer): Linea-Besu plugin which produces the traces that the constraint system applies and that serve as inputs to the prover - [linea-constraints](https://github.com/Consensys/linea-constraints): Implementation of the constraint system from the specification -- [linea-specification](https://github.com/Consensys/linea-specification): Specification of the constraint system defining Linea's zk-EVM +- [linea-specification](https://github.com/Consensys/linea-specification): Specification of the constraint system defining Linea's zkEVM Linea abstracts away the complexity of this technical architecture to allow developers to: diff --git a/docs/contribute.md b/docs/contribute.md index abf53a0f..45412b4a 100644 --- a/docs/contribute.md +++ b/docs/contribute.md @@ -2,7 +2,7 @@ ## Introduction -Thank you for your interest in contributing to Linea's zk-EVM monorepo. This document provides guidelines and instructions on how to contribute effectively. We use trunk-based development, and our main languages are Kotlin, Golang, Solidity, and TypeScript. Our releases use GitOps, ArgoCD, Helm, and Kubernetes. +Thank you for your interest in contributing to Linea's zkEVM monorepo. This document provides guidelines and instructions on how to contribute effectively. We use trunk-based development, and our main languages are Kotlin, Golang, Solidity, and TypeScript. Our releases use GitOps, ArgoCD, Helm, and Kubernetes. ## Submit a Contribution diff --git a/prover/README.md b/prover/README.md index 68590458..8a8b8b90 100644 --- a/prover/README.md +++ b/prover/README.md @@ -1,8 +1,8 @@ -# zkevm-monorepo/prover +# 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 zk-EVM using the arithmetization and +Arcane compiler, the instantiation of the zkEVM using the arithmetization and the server implementation. # Building and running @@ -17,10 +17,10 @@ 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 runningmake the setup generator +### 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. +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** diff --git a/prover/protocol/column/store.go b/prover/protocol/column/store.go index 10fd17aa..8d135166 100644 --- a/prover/protocol/column/store.go +++ b/prover/protocol/column/store.go @@ -432,7 +432,7 @@ func assertCorrectStatusTransition(old, new Status) { case old == Ignored && new != Ignored: forbiddenTransition = true // You can't change the status of the public inputs because that would - // change the statement of the zk-EVM. + // change the statement of the zkEVM. case old == PublicInput && new != PublicInput: forbiddenTransition = true // It's a special status and cannot be changed. diff --git a/prover/protocol/dedicated/plonk/doc.go b/prover/protocol/dedicated/plonk/doc.go index 2a69e717..1737e8f6 100644 --- a/prover/protocol/dedicated/plonk/doc.go +++ b/prover/protocol/dedicated/plonk/doc.go @@ -6,7 +6,7 @@ function. For instance, say we have a gnark circuit that can verify digital signatures and which takes a set of message hashes and public keys as public inputs. The user can provide a column allegedly containing all the public input and a -gnark circuit performing the above-mentionned signature verification. +gnark circuit performing the above-mentioned signature verification. The user can call the [plonk.PlonkCheck] function by passing the column and the circuit alongside a [wizard.CompiledIOP] object. The utility will build all the @@ -15,7 +15,7 @@ circuit's satisfiability within the currently compiled IOP. This comes in handy in situation where we which to prove complex relations that are difficult to express directly in the form of a Wizard-IOP but easier to -express in a language that is more expressive. In the case, of Linea's zk-EVM, +express in a language that is more expressive. In the case, of Linea's zkEVM, this is used for the ECDSA verification and the precompiles. The package optionally offers optimization when, diff --git a/prover/zkevm/arithmetization/arithmetization.go b/prover/zkevm/arithmetization/arithmetization.go index 75439581..5916574c 100644 --- a/prover/zkevm/arithmetization/arithmetization.go +++ b/prover/zkevm/arithmetization/arithmetization.go @@ -5,7 +5,7 @@ import ( "github.com/consensys/zkevm-monorepo/prover/zkevm/arithmetization/define" ) -// Settings specifies the parameters for the arithmetization part of the zk-EVM. +// Settings specifies the parameters for the arithmetization part of the zkEVM. type Settings = define.Settings // Arithmetization exposes all the methods relevant for the user to interact diff --git a/prover/zkevm/arithmetization/define/settings.go b/prover/zkevm/arithmetization/define/settings.go index 9fd8508f..d943b403 100644 --- a/prover/zkevm/arithmetization/define/settings.go +++ b/prover/zkevm/arithmetization/define/settings.go @@ -3,7 +3,7 @@ package define import "github.com/consensys/zkevm-monorepo/prover/config" // Settings specifies the parameters for the arithmetization part of the -// zk-EVM. +// zkEVM. type Settings struct { // Configuration object specifying the columns limits Traces *config.TracesLimits diff --git a/prover/zkevm/full.go b/prover/zkevm/full.go index a61f3e98..19b1c767 100644 --- a/prover/zkevm/full.go +++ b/prover/zkevm/full.go @@ -90,11 +90,11 @@ var ( } ) -// FullZkEvm compiles the full prover zk-evm. It memoizes the results and +// FullZkEvm compiles the full prover zkEVM. It memoizes the results and // returns it for all the subsequent calls. That is, it should not be called // twice with different configuration parameters as it will always return the // instance compiled with the parameters it received the first time. This -// behaviour is motivated by the fact that the compilation process takes time +// behavior is motivated by the fact that the compilation process takes time // and we don't want to spend the compilation time twice, plus in practice we // won't need to call it with different configuration parameters. func FullZkEvm(feat *config.Features, tl *config.TracesLimits) *ZkEvm { diff --git a/prover/zkevm/partial.go b/prover/zkevm/partial.go index d2505d1f..6915d911 100644 --- a/prover/zkevm/partial.go +++ b/prover/zkevm/partial.go @@ -26,11 +26,11 @@ var ( } ) -// Returns the zk-EVM objects corresponding to the light zkevm prover. Namely, +// Returns the zkEVM objects corresponding to the light zkEVM prover. Namely, // it will generate a proof checking only a small portion of the requested // computation it is meant primarily for testing and integration testing // purpose. When called for the first time, it will compile the corresponding -// light zkevm using the config option. The next times it is called, it will +// light zkEVM using the config option. The next times it is called, it will // ignore the configuration options and directly return the previously compiled // object. It therefore means that it should not be called twice with different // config options. @@ -43,7 +43,7 @@ func PartialZkEvm(tl *config.TracesLimits) *ZkEvm { oncePartialZkEvm.Do(func() { // The light-prover does not support other features than the - // arithmetization itself. I.E. it currently does not instantiate the + // arithmetization itself, i.e. it currently does not instantiate the // modules to verify keccak or the state-manager traces. settings := Settings{ Arithmetization: arithmetization.Settings{ diff --git a/prover/zkevm/prover/hash/keccak/keccak.go b/prover/zkevm/prover/hash/keccak/keccak.go index 1bfda85c..1d7b605d 100644 --- a/prover/zkevm/prover/hash/keccak/keccak.go +++ b/prover/zkevm/prover/hash/keccak/keccak.go @@ -1,5 +1,5 @@ // The keccak package specifies all the mechanism through which the zkevm -// keccaks are proven and extracted from the arithmetization of the zk-EVM. +// keccaks are proven and extracted from the arithmetization of the zkEVM. package keccak import ( @@ -23,7 +23,7 @@ type TraceProvider interface { AppendTraces(run *wizard.ProverRuntime, traces *keccak.PermTraces, genTrace *g.GenTrace) } -// Module provides the Keccak component of the zk-EVM +// Module provides the Keccak component of the zkEVM type Module struct { Settings *Settings Keccakf keccakf.Module diff --git a/prover/zkevm/prover/hash/keccak/new_keccak.go b/prover/zkevm/prover/hash/keccak/new_keccak.go index 39598823..2302d6eb 100644 --- a/prover/zkevm/prover/hash/keccak/new_keccak.go +++ b/prover/zkevm/prover/hash/keccak/new_keccak.go @@ -1,5 +1,5 @@ // The keccak package specifies all the mechanism through which the zkevm -// keccaks are proven and extracted from the arithmetization of the zk-EVM. +// keccaks are proven and extracted from the arithmetization of the zkEVM. package keccak import ( diff --git a/prover/zkevm/settings.go b/prover/zkevm/settings.go index 3365b3b3..db023fe9 100644 --- a/prover/zkevm/settings.go +++ b/prover/zkevm/settings.go @@ -11,7 +11,7 @@ import ( // compile and provides internal parameters for the wizard package. type compilationSuite = []func(*wizard.CompiledIOP) -// List the options set to initialize the zk-EVM +// List the options set to initialize the zkEVM type Settings struct { Keccak keccak.Settings Statemanager statemanager.SettingsLegacy diff --git a/prover/zkevm/zkevm.go b/prover/zkevm/zkevm.go index fb222ab5..c6b57b97 100644 --- a/prover/zkevm/zkevm.go +++ b/prover/zkevm/zkevm.go @@ -69,7 +69,7 @@ func (z *ZkEvm) VerifyInner(proof wizard.Proof) error { return wizard.Verify(z.WizardIOP, proof) } -// The define function of the zk-EVM define module. This function is unexported +// The define function of the zkEVM define module. This function is unexported // and should not be exported. The user should instead use the "Compile" // function. This function is meant to be passed as a closure to the // wizard.Compile function. Thus, this is an internal.