Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Doc/Blob 4844 Add Pi Bytes Component #1192

Merged
merged 1 commit into from
Apr 1, 2024

Conversation

darth-cy
Copy link

@darth-cy darth-cy commented Apr 1, 2024

Description

Add missing documentation line for new component in Pi bytes.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update
  • Refactor (no updates to logic)

@roynalnaruto roynalnaruto added the da-4844 Changes required to support DA via blobs label Apr 1, 2024
@roynalnaruto roynalnaruto merged commit 15cfd66 into feat/blob-4844-da Apr 1, 2024
14 of 16 checks passed
@roynalnaruto roynalnaruto deleted the feat/blob-4844-da-doc branch April 1, 2024 15:02
lispc added a commit that referenced this pull request Apr 9, 2024
* chore: dependencies

* Rebase code to main dev branch

* Rebase code to main dev branch

* Remove signed len

* basic constraints

* Add accumulation constraints

* Add chunk bytes to keccak and pow of rand to tx circuit config

* Remove debug flags

* clippy

* Correct keccak lookup

* Add pow of rand lookup

* remove pow of rand from lookup config

* Change unusable rows

* remove debug flags

* fmt

* correct export for pi circuit

* fmt

* patch halo2curves to branch that supports bls12_381

* Add roots of unity

* add barycentric evaluation constraints and assignments

* Call assign in circuit synthesis

* cleanup

* replace local patches with github

* Correct column type

* Add l1msg and padding tx len, hash acc conditions

* Define init condition for len, hash acc

* Remove access list and calldata constraints

* Correct keccak lookup rotation

* Use fixed row to isolate last row of fixed section

* Remove hash consistency gate

* chunk/batch definition updates

* add txbytes to the keccak preimages

* blob data is actually the correct preimage for chalenge point

* remove unused feature flag from patch

* implement Sum for ScalarFieldElement

* use sum

* use same range config between barycentric config and base field config

* cleanup

* fix build

* connect barycentric centric to aggregation circuit

* Correct test 1559 parsing

* Recover constraints

* Remove debug flags

* fmt

* Remove debug flag

* Add forgotten file

* updated definition of random point

* enable equality

* Adjust equality-enabled columns

* Adjust tx circuit output

* Adjust equality-enabled columns

* Correct tx circuit hash output

* Change chunk data hash definition

* wip

* Use same roots of unity as 4844 spec

* constraints for rows at fixed offsets

* digest bytes section

* minor edit

* fix: rows in data section

* cleanup

* Add more blob tests

* Use successors to calculate power of z

* Add chunk bytes in PI

* Adjust sectional offsets

* Change sectional note

* add chunk txbytes assignment

* Correct assignments

* export assigned bytes from blob data

* minor

* also export chunk data digest

* assign2 wip

* Add chunk txbytes hash to pi hash

* Correct hash component

* Correct data bytes assignment (padding)

* Correct chunk txbytes padding assignments

* Correct boundary idx counting

* Add chunk txbytes to keccak inputs

* Correct coinbase and difficulty

* fmt

* Add BarycentricEvaluationAssignments and make inputs to barycentric eval circuit accessible

* assign2 does some checks

* equate exports of barycentric to exports of blob data config

* also return the challenge (after modulus)

* Control test suite

* fix challenge equality and export challenge/evaluation LE bytes

* Adjust debugging suite

* Constraint differential

* Constraint differential

* Constraint differential

* Correct column type'

* Constraint differential

* Correct assignment spacing

* Recover constraint

* Test Differential

* Remove debug flags

* Constraint differential

* Add debug flags

* Correct idx increments

* update batch_pi_hash preimage to be blob-compatible

* fix preimages' len

* Adjust debug flags

* Add debug flags

* Add debug flags

* Adjust debug flags

* fix batch_pi_hash input_len

* add equality between chunk_data_digests and chunk_pi_hash's preimage

* fix: return assigned values instead of witness cells for challenge/evaluation

* Add new hash preimages

* Add borrow

* Adjust imports

* Remove debug flags

* fmt

* Constraint depth consistency in longlist decoding

* Revert "Constraint depth consistency in longlist decoding"

This reverts commit f977a8c.

* Recover variadic test

* enable z and y equality check

* apply comments

* Correct mock data

* clippy

* Add comments

* fmt

* Remove copy constraint for misallighment

* Change copy constraints to lookups

* Remove debug flags

* Remove unnecessary return

* fmt

* fmt

* Correct documentation

* fmt

* Feat/4844 Add Missing Chunk Parts (#1154)

* Add missing chunk level changes

* fmt

* fix

* Fix: assign z_digest using load_u256 method (#1155)

* use load_u256 to assign challenge in barycentric

* separate blob related assignments from snark aggregate and fix clippy errors

* fix

* fix: blob_field only has 31 cells

* Fix bugs in integration test (#1160)

* split blob data region into two separate regions

* fix

* load tables for BlobDataConfig

* fix wrong rlc in blob data rows

* fix challenge z lookup

* keccak lookup for metadata row and minor fixes (#1162)

* fmt

* fix challenge z

* rlc keccak vs evm (#1163)

* put barycentric eval and snark aggregation in same region

* fix copy constraints (limb construction and endianness) (#1164)

* fix copy constraints (limb construction and endianness)

* fix typo

---------

Co-authored-by: Mason Liang <[email protected]>

* cleanup

---------

Co-authored-by: Rohit Narurkar <[email protected]>
Co-authored-by: Mason Liang <[email protected]>

* put reth-primitives at dev-dependency (#1166)

* bump c-kzg from 0.4.2 to 1.0.0

* Update v2.0.7-patch-tungstenite for ethers utility

* Resolve new cargo

* Update | Fix | Refactor | Unit Tests (#1167)

* a fix (first row accumulator) and remove inconsistencies

* Add negative tests

* update, fix, test

* soundness: if chunk is padded, size == 0

* more refactoring and docs

---------

Co-authored-by: Mason Liang <[email protected]>

* clean deps

* clean deps: revm

* remove reth dep

* revert COINBASE changes

* refactor: changes based on review of PR#1167 (#1172)

* big arrays replaced by vec and passed by ref (#1178)

* Check that chunk_idx increases on boundaries (#1173)

* check that chunk_idx increases by at least 1 on boundaries

* Add range check for chunk_idx

---------

Co-authored-by: Mason Liang <[email protected]>
Co-authored-by: Rohit Narurkar <[email protected]>

* hash selector should only exist for digest rlc section | minor refactor (#1174)

* Refactor and Optimise (#1179)

* make use of fixed columns wherever possible

* add column for boundary_count to remove summation over all rows

* remove "-" to avoid confusion

* pick fixes for testing...

* Fix copy duplicated comments (#1183)

Co-authored-by: Mason Liang <[email protected]>
Co-authored-by: Rohit Narurkar <[email protected]>

* tmp

* Feat/Blob 4844 Chunk-level Patch (#1180)

* Correct pow_of_rand assignment in evm_circuit

* Correct typo

* Add rpi_length_acc consistency for chunk_txbytes section for padding rows

* pow_limit is set to max l2 tx bytes in a blob for pow_of_rand table

---------

Co-authored-by: kunxian xia <[email protected]>

* Feat/Blob 4844 Chunk-level TxCircuit CCC (#1188)

* Rewrite tx circuit ccc interface

* Use capacity fraction for tx circuit ccc interface

* Correct typo

* fmt

* better chunk proof marsha;
l

* chunk-prover: check proof after generated

* log vk commit

* improve prover verification

* Refactor | Clippy (#1187)

* no need for optional max exponent

* reduce number of rows for tests

* fix

* scroll+test feature has bigger tx

* more clippy fix

* fix q_step_first in evm circuit

* Feat/Blob 4844 PICircuit Chunk TxBytes Condense (#1189)

* Move chunk_txbytes_hash_rlc column into tx table

* Condense pi circuit

* Remove import

* Correct pow of rand lookup condition

* fmt

* Add new rotation count to tx circuit unusable rows

* Turn on equality for column

---------

Co-authored-by: Rohit Narurkar <[email protected]>

* fix rand table

* better log

* fix halo2 vk

* add more logs for batch info

* export BatchHash for testing purpose

* add blob_assignments method

* [FIX] big-endianness for blob poly from bytes (#1191)

* big-endianness for blob poly from bytes

* formatting (prepend 0)

* Add missing PI bytes component (#1192)

* Add more tests for BlobData struct (#1194)

* Uncomment tests and add coefficient endianness test

* Remove unneeded std::iter::empty calls

* import once and repeat

* Move point precompile tests to barycentric file

* clippy

---------

Co-authored-by: Mason Liang <[email protected]>

* Rename N_BYTES_31 and N_BYTES_32 (#1193)

* Give constants more descriptive names and comments

* rephrase comment

---------

Co-authored-by: Mason Liang <[email protected]>
Co-authored-by: Rohit Narurkar <[email protected]>

* Fix/Remove Individual L2 TxHash from Keccak (#1197)

* Remove individual L2 tx hash from keccak

* Recheck l1 hash

* Constrain l2 tx hash 0

* include selectors from blob data config (#1200)

* Add feature `strict-ccc` for precheck panic. (#1003)

* include selectors from blob data config (#1200)

* optimize follower ccc

* fix ccc post processing

* disable default mode ci

* fix k256 sig verify: normalize sig

* lint

---------

Co-authored-by: Rohit Narurkar <[email protected]>
Co-authored-by: darth-cy <[email protected]>
Co-authored-by: Mason Liang <[email protected]>
Co-authored-by: kunxian xia <[email protected]>
Co-authored-by: Zhang Zhuo <[email protected]>
Co-authored-by: z2trillion <[email protected]>
Co-authored-by: Steven <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crate-zkevm-circuits da-4844 Changes required to support DA via blobs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants