diff --git a/evm/README.md b/evm/README.md index b15bd776..5293f8ba 100644 --- a/evm/README.md +++ b/evm/README.md @@ -18,7 +18,7 @@ Audits for the ZK-EVM will begin on November 27th, 2023. See the [Audit RC1 Mile ## Documentation / Specification -The current specification is located in the [/spec](/spec) directory, with the most currently up-to-date PDF [availabe here](https://github.com/0xPolygonZero/plonky2/blob/main/evm/spec/zkevm.pdf). Further documentation will be made over the coming months. +The current specification is located in the [/spec](/spec) directory, with the most currently up-to-date PDF [available here](https://github.com/0xPolygonZero/plonky2/blob/main/evm/spec/zkevm.pdf). Further documentation will be made over the coming months. --- Copyright (C) 2023 PT Services DMCC diff --git a/evm/spec/cpulogic.tex b/evm/spec/cpulogic.tex index ff380966..df866daf 100644 --- a/evm/spec/cpulogic.tex +++ b/evm/spec/cpulogic.tex @@ -98,7 +98,7 @@ ecAdd, ecMul and ecPairing precompiles. empty length is not valid, nor is a length greater than 32 (as a U256 consists in at most 32 bytes). Missing these conditions will result in an unverifiable proof. \item[0xF9.] \texttt{EXIT\_KERNEL}. Pops 1 element from the stack. This instruction is used at the end of a syscall, before proceeding to the rest of the execution logic. - The popped element, \textit{kexit\_info}, contains several informations like the current program counter, current gas used, and if we are in kernel (i.e. privileged) mode. + The popped element, \textit{kexit\_info}, contains several pieces of information like the current program counter, the current amount of gas used, and whether we are in kernel (i.e. privileged) mode or not. \item[0xFB.] \texttt{MLOAD\_GENERAL}. Pops 3 elements (successively the context, segment, and offset portions of a Memory address), and pushes the value stored at this memory address onto the stack. It can read any memory location, general (similarly to MLOAD (0x51) instruction) or privileged. diff --git a/evm/spec/mpts.tex b/evm/spec/mpts.tex index bb0547cd..91da59ce 100644 --- a/evm/spec/mpts.tex +++ b/evm/spec/mpts.tex @@ -59,7 +59,7 @@ The initial state of each trie is given by the prover as a nondeterministic inpu \item A digest node is encoded as $(\texttt{MPT\_NODE\_HASH}, d)$, where $d$ is a Keccak256 digest. \end{enumerate} Nodes are thus given in depth-first order, enabling natural recursive methods for encoding and decoding this format. -The payload of state and receipt tries is given in the natural sequential way. The transaction an receipt payloads contain variable size data, thus the input is slightly different. The prover input for for the transactions is the transaction RLP encoding preceeded by its lenght. For the receipts is in the natural sequential way, except that topics and data are preceeded by their lengths, respectively. +The payload of state and receipt tries is given in the natural sequential way. The transaction an receipt payloads contain variable size data, thus the input is slightly different. The prover input for for the transactions is the transaction RLP encoding preceeded by its length. For the receipts is in the natural sequential way, except that topics and data are preceeded by their lengths, respectively. \subsection{Encoding and Hashing}