noir icon indicating copy to clipboard operation
noir copied to clipboard

`nargo verify` is expected to execute much more quickly compared to `nargo prove`

Open akonior opened this issue 11 months ago • 0 comments

Aim

The command nargo verify is expected to execute much more quickly compared to nargo prove. In the PLONK system, the time it takes to verify should increase logarithmically with the size of the circuit. In my situation, executing nargo prove takes approximately 5 minutes, while nargo verify takes about 3 minutes. Based on what I understand, a verification key is produced during the proving process, and this same key is recreated during the verification process. Is it possible, or will it be possible, to reuse or cache this verification key?

Here are some test results https://github.com/vlayer-xyz/noir-profiling?tab=readme-ov-file#results in all cases proving and verification time is almost the same.

Expected Behavior

Verification time should increase logarithmically with the size of the circuit.

Bug

Slow nargo verify

To Reproduce

No response

Project Impact

None

Impact Context

No response

Workaround

None

Workaround Description

No response

Additional Context

No response

Installation Method

Binary (noirup default)

Nargo Version

No response

NoirJS Version

No response

Would you like to submit a PR for this Issue?

None

Support Needs

No response

akonior avatar Feb 28 '24 14:02 akonior