Commit 5da11bd
Two to one block aggregation (#318)
* Two to one aggregation
* Comments
* Two-to-one block aggregation proof
* Minor
* Minor
* feat: Implement two-to-one Block Aggregation
WIP: compute hashes directly from witness and check against public inputs
WIP: add TwoToOneBlockAggCircuitData
WIP: add test
WIP: rewrite to use hasher circuitry
WIP: test: can generate proofs of unrelated blocks
WIP: test/refactor: generate multiple blocks
WIP: test/refactor: autoformat
WIP: refactor: use result iterator
WIP: convert PIS
WIP: feat: witness: set public input hashes
WIP: feat: cache proofs in /tmp
WIP: config: default to no cache
WIP: bug: cache write-read assertion fails
WIP: bug: prepare for more eyeballs
WIP: bug: work on to_public_inputs
WIP feat: private public inputs
WIP feat: set pv targets
WIP experiment: public input
WIP refactor: clean up
WIP feat: 1-level aggregation working
WIP forgot: private public inputs
WIP: use agg child structure
WIP: split into IVC and binop
WIP: split part2 into IVC and binop
WIP: split part3 into IVC and binop
WIP: ivc structure done
WIP: wip wip
WIP: ivc+binop
WIP: after talking to Linda
WIP: adjust num_public_inputs
WIP: VirtualTarget index: 5 was set twice
feat: assert on input values length
experiment: minimize failing circuit
feat: add selector for public values
WIP: bug: add methods from branch `no_dummy_segment_no_pis`
WIP: bug: first draft
feat: verify 4-block aggregation
test: add more tests
* cleanup(tests)
* cleanup(tests): obey Clippy
* cleanup: remove unneeded experiment
* cleanup: remove vector to public inputs
* cleanup: remove IVC and re-add two_to_one_block
* cleanup: fix de/serialization
* cleanup: add comments
* cleanup: remove checks
* cleanup: remove unrelated change
* cleanup: remove unused parameter and todo
* feat: enable caching as default
* cleanup: remove previous block aggregation implementation
* refactor: simplify naming
* refactor: improve naming
* cleanup: remove custom build config
* cleanup: undo this change
* cleanup: obey Clippy
* cleanup: remove two-to-one aggregation
* review: resolve small issues
* fixup! cleanup: remove two-to-one aggregation
* review: make order consistent
* fixup! review: make order consistent
* review: merge aggregation children
* review: rename `evm_proof` to `base_proof`
* review: squash tests
* review: investigate padding length
* review: investigate padding length part 2
* review: remove magic numbers
* review: remove HasCircuit trait and pass in CircuitData field directly
* review: rework `set_dummy_if_necessary`
* review: remove logging in test
* review: remove legacy test
* review: remove all `debug_assert!`
* review: obey Clippy and fmt
* review: impl Merklet tree test
* WIP review: fix hashing mechanism and make hash public input
* review: remove VK from inputs
* review: test Merkle tree working
* review: refactor: remove scaffolding
* review: fix ascii art
* review: clippy
* review: remove logging
* review: fmt
* review: remove redundant computations
* fmt
* review: implement feedback from Hamy
* fmt
* review: const verifier_key_len
* review: make offsets explicit
* review(docs): rewrite rustdoc for helper functions
* review: clippy
* fmt
* Remove double spacing
---------
Co-authored-by: wborgeaud <williamborgeaud@gmail.com>
Co-authored-by: Robin Salen <salenrobin@gmail.com>1 parent a936bc6 commit 5da11bd
File tree
3 files changed
+738
-28
lines changed- evm_arithmetization
- src
- tests
3 files changed
+738
-28
lines changed
0 commit comments