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(ivc): impl instances_accumulator_computation #353

Merged

Conversation

cyphersnake
Copy link
Collaborator

@cyphersnake cyphersnake commented Sep 24, 2024

Motivation
As part of #316, we need to accumulate instance, using a poseidon hash. This PR should provide a consistent way to do this {on,off}-circuit within nifs::vanilla

Overview

  • New Module
    • Added instances_accumulator_computation.rs to handle the accumulation of instances using the Poseidon hash function.
  • Functions:
    • fold_step_circuit_instances_hash_accumulator for off-circuit hash accumulation.
    • fold_assign_step_circuit_instances_hash_accumulator for on-circuit hash accumulation
  • Testing:
    • Added comprehensive unit tests to verify the consistency of the accumulator computation.

@cyphersnake cyphersnake self-assigned this Sep 24, 2024
@cyphersnake cyphersnake force-pushed the 316-feat-instances-accumulator branch from dbd9cfe to 5d227e3 Compare September 24, 2024 16:29
@cyphersnake cyphersnake marked this pull request as ready for review September 24, 2024 16:30
@cyphersnake cyphersnake requested a review from chaosma September 24, 2024 16:30
@cyphersnake cyphersnake force-pushed the 316-feat-instances-accumulator branch from 5d227e3 to eb6541a Compare September 24, 2024 16:34
@cyphersnake cyphersnake requested a review from chaosma September 25, 2024 09:35
@cyphersnake cyphersnake force-pushed the 316-feat-permutation-cut-out branch from 104191e to 11dccdc Compare September 25, 2024 13:38
**Motivation**
As part of #316, we need to accumulate `instance`, using a poseidon
hash. This PR should provide a consistent way to do this
{on,off}-circuit within nifs::vanilla

**Overview**
- New Module
    - Added `instances_accumulator_computation.rs` to handle the accumulation of `instances` using the Poseidon hash function.
- Functions:
    - `fold_step_circuit_instances_hash_accumulator` for off-circuit hash accumulation.
    - `fold_assign_step_circuit_instances_hash_accumulator` for on-circuit hash accumulation
- Testing:
    - Added comprehensive unit tests to verify the consistency of the accumulator computation.
@cyphersnake cyphersnake force-pushed the 316-feat-instances-accumulator branch from 3dd4ffe to 698a578 Compare September 25, 2024 13:40
**Motivation**
Practically complete realization of task #316

**Overview**
Impl of accumulation of step circuit instances

- Addition of a `step_circuit_instances_hash_accumulator` to the
`RelaxedPlonkInstance` structure.
- Implementation of methods to fold and conditionally select step
circuit instances.
- Modification of existing methods to incorporate the new accumulator.
- Update to testing modules to cover the changes.
@cyphersnake cyphersnake merged commit 791eb2c into 316-feat-permutation-cut-out Sep 30, 2024
1 check passed
@cyphersnake cyphersnake deleted the 316-feat-instances-accumulator branch September 30, 2024 11:00
@cyphersnake cyphersnake restored the 316-feat-instances-accumulator branch September 30, 2024 12:23
@cyphersnake cyphersnake deleted the 316-feat-instances-accumulator branch September 30, 2024 13:21
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.

2 participants