Skip to content

Upstream Diff, for reference only. - #18

Merged
ConstanceBeguier merged 14 commits into
mainfrom
zsa1
Aug 11, 2025
Merged

Upstream Diff, for reference only.#18
ConstanceBeguier merged 14 commits into
mainfrom
zsa1

Conversation

@PaulLaux

@PaulLaux PaulLaux commented Jul 26, 2023

Copy link
Copy Markdown

This PR contains the following modifications that are required for ZSA:

  • Add a new LookupRangeCheck config named LookupRangeCheck4_5BConfig optimized for 4, 5 and 10-bit range checks
  • Add variable-base sign-scalar multiplication function called mul_sign
  • Add mux functionalities into CondSwapChip
  • Update SinsemillaChip to support evaluating a hash from a private point
  • Extend SinsemillaChip with functions that allow separate evaluation of the hash and blinding factor of a commitment
  • Standardize test circuit names with My...Circuit convention

Comment thread halo2_gadgets/src/sinsemilla/chip.rs Outdated
Comment thread halo2_gadgets/src/sinsemilla/chip/generator_table.rs Outdated
Comment thread halo2_gadgets/src/utilities/lookup_range_check.rs Outdated
Comment thread halo2_gadgets/src/sinsemilla/chip.rs Outdated
YaoJGalteland and others added 14 commits August 8, 2024 14:54
This commit contains the following modifications:
- Add tests for Lookup, ECC, Merkle, and Sinsemilla to verify that the verification key and the proof have not been modified by comparing them to those saved in a file.
- Introduce a `LookupRangeCheck` trait that provides common methods for a lookup range check.
- Use this new trait as a generic parameter in configs, chips and tests that are using lookup.
- Create a new Lookup chip which is optimized for 4, 5 and 10-bit range check and add tests for this new chip.
- Add `init_from_private_point` parameter in `SinsemillaConfig`. If this parameter is set to false, the `SinsemillaChip` is the same as the current `SinsemillaChip` used in vanilla circuit. Otherwise, the `SinsemillaChip` is modified to support hash from private point.

---------

Co-authored-by: YaoGalteland <yao@qed-it.com>
Co-authored-by: Dmitry Demin <dmitry@qed-it.com>
Co-authored-by: Constance Beguier <constance@qed-it.com>
- Move lookup table `load` function into `LookupRangeCheck` trait (and remove `table_range_check_tag` function which is no longer used)
- Move some imports to reduce the diff with the main branch
- Standardize test circuit names with `My...Circuit` convention
- Reduce visibility of some functions
- Update changelog file
…okup table (#43)

This PR adds a comment to clarify why a duplicated-rows range check lookup table was chosen.
Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org>
@ConstanceBeguier
ConstanceBeguier merged commit 2308caf into main Aug 11, 2025
42 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants