zkevm-circuits icon indicating copy to clipboard operation
zkevm-circuits copied to clipboard

EVM Circuit: block.table_assignment introduces non fixed entries in fixed columns

Open AronisAt79 opened this issue 1 year ago • 0 comments

What command(s) is the bug in?

No response

Describe the bug

Some fixed columns within the evm circuit are not actually fixed. It has been identified that when function https://github.com/privacy-scaling-explorations/zkevm-circuits/blob/3151efd65744eea26bac12f8f0c1d009fc45ff1c/zkevm-circuits/src/witness/block.rs#L184 iterates over the history_hashes vector https://github.com/privacy-scaling-explorations/zkevm-circuits/blob/3151efd65744eea26bac12f8f0c1d009fc45ff1c/zkevm-circuits/src/witness/block.rs#L237-L249 it results in non fixed pointer sequences.

Concrete steps to reproduce the bug. If it's able reproduce via testool, please share test_id from jenkins report

  1. Reproduce and display the mismatched columns with history < 256: Checkout this branch and execute: ./run.sh --sudo --steps "setup gendata"; cargo test --profile release --test circuits sub_mock_prover --all-features -- --nocapture
  2. Reproduce and display the mismatched columns with len_history = 256: Checkout this branch and execute: ./run.sh --sudo --steps "cleanup"; sudo docker system prune -af --volumes; ./run.sh --sudo --steps "setup gendata"; cargo test --profile release --test circuits sub_mock_prover --all-features -- --nocapture

Sample outputs for both tests in attached zip file test_outputs.zip

AronisAt79 avatar Mar 07 '24 17:03 AronisAt79