cluster_1 Documentation Q2 2024 cluster_0 First user-facing recursion API cluster_2 0.3.1 zcash/halo2#455 zcash/halo2#455 [Book] add description of Poseidon gadget and chip zcash/halo2#247 zcash/halo2#247 Implement underlying scaffolding for creating the IVC proof cycle zcash/halo2#251 zcash/halo2#251 Implement user-facing API for recursive proving of IVC zcash/halo2#247->zcash/halo2#251 zcash/halo2#250 zcash/halo2#250 Implement the logic for the IVC verifier circuit zcash/halo2#247->zcash/halo2#250 zcash/halo2#75 zcash/halo2#75 Implement support for recursion zcash/halo2#251->zcash/halo2#75 zcash/halo2#437 zcash/halo2#437 Amend user-facing API to work for both IVC and PCD zcash/halo2#251->zcash/halo2#437 zcash/halo2#246 zcash/halo2#246 Create recursive proof structures zcash/halo2#435 zcash/halo2#435 Implement mock verification circuit for IVC zcash/halo2#246->zcash/halo2#435 zcash/halo2#436 zcash/halo2#436 Implement mock verification circuit for PCD zcash/halo2#246->zcash/halo2#436 zcash/halo2#435->zcash/halo2#247 zcash/halo2#439 zcash/halo2#439 Support split accumulation in Halo 2 zcash/halo2#439->zcash/halo2#246 zcash/halo2#569 zcash/halo2#569 Implement the recursive proof verifier zcash/halo2#439->zcash/halo2#569 zcash/halo2#643 zcash/halo2#643 Create separate `VerifyingKey` structures for pre- and post- optimisation circuits zcash/halo2#643->zcash/halo2#435 zcash/halo2#643->zcash/halo2#436 zcash/halo2#449 zcash/halo2#449 Define a stable serialization format for `VerifyingKey` zcash/halo2#643->zcash/halo2#449 zcash/halo2#742 zcash/halo2#742 chore: Speed up random poly generation zcash/halo2#756 zcash/halo2#756 Release halo2 0.3.1 zcash/halo2#742->zcash/halo2#756 zcash/halo2#250->zcash/halo2#75 zcash/halo2#494 zcash/halo2#494 Consider adding an API that enables application circuits to be built across both fields zcash/halo2#75->zcash/halo2#494 zcash/halo2#436->zcash/halo2#437 zcash/halo2#438 zcash/halo2#438 Implement the logic for the PCD verifier circuit zcash/halo2#436->zcash/halo2#438 zcash/halo2#569->zcash/halo2#247 zcash/halo2#79 zcash/halo2#79 Migrate Rescue and Poseidon gadgets to algebraic hash abstraction zcash/halo2#78 zcash/halo2#78 Implement algebraic hash / random oracle abstraction gadget zcash/halo2#78->zcash/halo2#250 zcash/halo2#78->zcash/halo2#79 zcash/halo2#57 zcash/halo2#57 Remove unused fixed_values from ProvingKey zcash/halo2#443 zcash/halo2#443 Define a stable serialization format for `halo2::plonk::ProvingKey ` zcash/halo2#57->zcash/halo2#443 zcash/halo2#249 zcash/halo2#249 Implement recursion circuit logic for handling public inputs zcash/halo2#249->zcash/halo2#250 zcash/halo2#245 zcash/halo2#245 Remove the need to multiply by powers of x^n in verifier zcash/halo2#245->zcash/halo2#250 zcash/halo2#312 zcash/halo2#312 [Book] Document gadget API zcash/halo2#420 zcash/halo2#420 CI: Measure memory-usage benchmarks zcash/halo2#418 zcash/halo2#418 [memory optimization] lookup prover memory analysis zcash/halo2#420->zcash/halo2#418 zcash/halo2#427 zcash/halo2#427 Use smaller extended domains where possible during proving zcash/halo2#456 zcash/halo2#456 Benchmark `sha256` gadget. zcash/pasta_curves#35 zcash/pasta_curves#35 Enable `ec-gpu` to generate MSM and FFT code for `pasta_curves` zcash/halo2#379 zcash/halo2#379 Add `ec-gpu` support zcash/pasta_curves#35->zcash/halo2#379 zcash/halo2#548 zcash/halo2#548 Implement performance and memory optimizations for halo2_proofs zcash/halo2#578 zcash/halo2#578 Extend `EccChip` to support Vesta zcash/halo2#578->zcash/halo2#250 zcash/halo2#579 zcash/halo2#579 Consider extending `EccChip` to arbitrary curves zcash/halo2#578->zcash/halo2#579 zcash/halo2#454 zcash/halo2#454 [ECC gadget] Support full-width scalars for variable-base mul zcash/halo2#454->zcash/halo2#569 zcash/halo2#248 zcash/halo2#248 Implement endoscaling in the circuit zcash/halo2#248->zcash/halo2#569 zcash/pasta_curves#41 zcash/pasta_curves#41 Kill `CurveExt` and `CurveAffine` traits zcash/halo2#591 zcash/halo2#591 Pluggable API for proof generation zcash/halo2#591->zcash/halo2#569 zcash/halo2#453 zcash/halo2#453 Introduce `double()` API to ECC gadget zcash/halo2#529 zcash/halo2#529 Endoscaling instructions and chip. zcash/halo2#453->zcash/halo2#529 zcash/halo2#529->zcash/halo2#248 zcash/halo2#590 zcash/halo2#590 [halo2_gadgets] Extract `double_and_add` helper zcash/halo2#590->zcash/halo2#529 zcash/halo2#594 zcash/halo2#594 [halo2_gadgets] Minor refactors to `decompose_running_sum` helper zcash/halo2#594->zcash/halo2#529 zcash/halo2#547 zcash/halo2#547 Design a way to "pin" the result of floor planning zcash/halo2#547->zcash/halo2#449 zcash/halo2#195 zcash/halo2#195 Enable floor planners to configure columns zcash/halo2#627 zcash/halo2#627 Move selector combining optimisation into floor planners zcash/halo2#195->zcash/halo2#627 zcash/halo2#634 zcash/halo2#634 Poseidon duplex gadget zcash/halo2#635 zcash/halo2#635 Transcript gadget zcash/halo2#634->zcash/halo2#635 zcash/halo2#635->zcash/halo2#569 zcash/halo2#636 zcash/halo2#636 Add an improved instance column API zcash/halo2#534 zcash/halo2#534 [Lookup] Reintroduce support for advice (and possibly instance) columns in tables, aka dynamic tables zcash/halo2#636->zcash/halo2#534 zcash/halo2#827 zcash/halo2#827 Extract Sinsemilla primitive from `halo2_gadgets`