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

Use Poseidon Implementation from plonk-prototype #51

Closed
wants to merge 4 commits into from

Conversation

tsunrise
Copy link
Contributor

@tsunrise tsunrise commented Apr 8, 2022

Use Poseidon Implementation from plonk-prototype. Compare to current Poseidon implementation, this PR will add parameter generation and filecoin optimization.

🚧 WIP

closes: #22

@tsunrise tsunrise self-assigned this Apr 8, 2022
@tsunrise
Copy link
Contributor Author

Something worth discussing at this point:

  • Are we going to calculate round constants at compile time or runtime? It might be tricky to calculate round constants in compile time, but we can always hardcode them.
  • If we hardcode those round constants, are we going to put it as an associated constants? We cannot do this if we want the poseidon state to be an array because const_generics is not supported yet.

@bhgomes
Copy link
Contributor

bhgomes commented Apr 22, 2022

Something worth discussing at this point:

  • Are we going to calculate round constants at compile time or runtime? It might be tricky to calculate round constants in compile time, but we can always hardcode them.

  • If we hardcode those round constants, are we going to put it as an associated constants? We cannot do this if we want the poseidon state to be an array because const_generics is not supported yet.

We can calculate round constants at runtime, they are part of the "parameter sampling" pipeline. This is only ever run once anyway so it's not important to make it a const-expr. You can put this in the Sample implementation for the Hasher.

@tsunrise
Copy link
Contributor Author

tsunrise commented May 4, 2022

Changes in this PR is moved to #57

@tsunrise tsunrise closed this May 4, 2022
@tsunrise tsunrise deleted the feat/poseidon branch June 3, 2022 20:54
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.

Use Fastest Poseidon Implementation
2 participants