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

feat: implement LogUp scheme #420

Merged
merged 31 commits into from
Jun 13, 2024
Merged

feat: implement LogUp scheme #420

merged 31 commits into from
Jun 13, 2024

Commits on Jun 13, 2024

  1. refac(zk): add GetExprMaxDegree function

    Inseon Yu(Merlyn) authored and Insun35 committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    9dc4cdf View commit details
    Browse the repository at this point in the history
  2. refac(zk): use 2d vector for inputs_expressions in LookupArgument

    Change input expression interface in lookup argument to support
    `LogDerivativeHalo2` scheme.
    Insun35 committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    5a72c97 View commit details
    Browse the repository at this point in the history
  3. refac(zk): change return type of Lookup() and LookupAny() to void

    Change return type of `Lookup()` and `LookupAny()` from size_t (size of
    lookups) to void because it is redundant.
    Insun35 committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    7a0b7cb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    32362ee View commit details
    Browse the repository at this point in the history
  5. feat(zk): add CloneExpressions

    `CloneExpressions` function clones a vector of
    `std::unique_ptr<Expression>`.
    It is needed to handle both `lookups` and `lookups_map` in
    LogDerivativeHalo2.
    Insun35 committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    6c12e4f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    23f2204 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    f88ed1a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    25b8c70 View commit details
    Browse the repository at this point in the history
  9. feat(zk): add constraint_system lookup logic for LookupsMap

    Add `Lookup()`, `LookupAny()`, and `ChunkLookup()` for
    LogDerivativeHalo2 scheme.
    Constraint system selects logic dynamically using lookup type.
    
    - Add constructor that can take a lookup type.
    - `LookupTracker`: holds table and input expressions with its name
    - `LookupsMap`: `btree_map` with `table_expressions_identifier` as a key and
      `LookupTracker` as values.
    
    See: https://github.com/scroll-tech/halo2/blob/1070391642dd64b2d68b47ec246cba9e35bd3c15/halo2_proofs/src/plonk/circuit.rs#L1572-L1706
    Insun35 committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    4539580 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    2e0363c View commit details
    Browse the repository at this point in the history
  11. feat(zk): add stringifiers for LookupsMap

    Add `btree_map_stringifier` and `lookup_tracker_stringifier`.
    Insun35 committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    e48089b View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    08369d6 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    a10b8ca View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    09b77c8 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    3bf321b View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    26c0ae2 View commit details
    Browse the repository at this point in the history
  17. feat(zk): add lookup type condition to halo2 utils

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    7d947e4 View commit details
    Browse the repository at this point in the history
  18. feat(zk): add LogDerivativeHalo2 proof type

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    91b06a3 View commit details
    Browse the repository at this point in the history
  19. fix(zk): fix wrong template argument

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    85e5161 View commit details
    Browse the repository at this point in the history
  20. feat(zk): integrate halo2 prover with LogDerivativeHalo2 scheme

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    b936c42 View commit details
    Browse the repository at this point in the history
  21. fix(zk): change commit input to Evals to use CommitLagrange

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    eddbc5b View commit details
    Browse the repository at this point in the history
  22. fix: add missing change from #430

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    8450f3d View commit details
    Browse the repository at this point in the history
  23. build(zk): add missing deps

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    85d66a0 View commit details
    Browse the repository at this point in the history
  24. test(zk): fix wrong iterator access

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    bf57ece View commit details
    Browse the repository at this point in the history
  25. docs: change all numbered list to 1

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    4a80a47 View commit details
    Browse the repository at this point in the history
  26. chore(zk): fix inappropriate flag name

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    3211d48 View commit details
    Browse the repository at this point in the history
  27. test(zk): add circuit test flags for LogUp

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    e8f81fc View commit details
    Browse the repository at this point in the history
  28. build(zk): add missing deps

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    5ce5f05 View commit details
    Browse the repository at this point in the history
  29. refac(zk): move circuit test logic to header

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    a241f2a View commit details
    Browse the repository at this point in the history
  30. test(zk): increase max extended degree for MultiLookupCircuit

    `MultiLookupCircuit` to be introduced in the following commit requires 2^8
    `kMaxExtendedDomainSize`.
    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    3005b00 View commit details
    Browse the repository at this point in the history
  31. test(zk): implement MultiLookupCircuit

    Insun35 authored and Inseon Yu(Merlyn) committed Jun 13, 2024
    Configuration menu
    Copy the full SHA
    8ad250a View commit details
    Browse the repository at this point in the history