-
Notifications
You must be signed in to change notification settings - Fork 58
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
Question about Off-chain Decider and the time of ”generated Decider proof” #182
Comments
Hi, currently the only non-onchain decider (offchain decider, for usecases where verifying inside the EVM is not a requirement) available is for the Nova implementation and it's not ideal: since the only proving system that implements the arkworks For Sonobe, any snark proving system could be used as long as it fits into the SNARK trait defined by arkworks. So any snark that implements that trait could be used in the sonobe's offchain decider. The current situation is that there are not many of such cases. Since Groth16 is restricted to paring-friendly curves, and in the offchain decider case we use it on both curves of the cycle (ie. both curves need to be pairing friendly), it ends up meaning to use only the MNT curves available in arkworks, which translates into proving times of For example, ideally at some point there would be the Spartan port to arkworks adapted to fit in the SNARK trait defined by arkworks, and then this could be used in the Sonobe's offchain decider; removing the need to use pairing-friendly curves, and probably going faster than the current offchain decider that uses Groth16. |
I believe the serialization error is due to the inconsistency of curves.
bn128 (aka BN254) is used.
Unfortunately our off-chain decider currently relies on a curve cycle where both curves are pairing friendly (e.g., MNT4 and MNT6), but circom does not support these curves (their |
Hi!
Recently, I’ve been working with Nova to fold my circuit based on Sonobe. However, I couldn't find any example code for implementing the
off-chain Decider implement
.All the code in the
examples
folder is focused on generating aDeciderEthCircuit final proof
, I would like to generate aDeciderCircuit final proof
instead, and I don't want it to be based on EVM. Could you advise me on what I should do?Another question I have is about the time it takes to generate the
Decider proof
.I tried folding my own circuit as well as the example,
circom_full_flow.rs
.I found that the time to generate the Decider proof is quite long—around 300 seconds. What could be the reason for this? Is it because my laptop's memory (16GB) is too small?
Below is the result from running the
circom_full_flow.rs
example:Could you help me figure out what I should do?
Thanks!
Looking forward to your reply.
The text was updated successfully, but these errors were encountered: