a16z / jolt

The simplest and most extensible zkVM. Fast and fully open source from a16z crypto and friends. ⚡
https://jolt.a16zcrypto.com
MIT License
587 stars 106 forks source link

Efficient opening proofs in `read_write_memory.rs` #350

Closed moodlezoup closed 2 months ago

moodlezoup commented 2 months ago

There are three TODOs in read_write_memory.rs of the form "TODO: Compute opening without instantiating * polynomial itself"

Currently, these openings require the verifier to do work linear in the memory used. These openings should be linear in |bytecode| + |program IO|. Assuming the verifier knows the bytecode and program inputs/outputs, it can evaluate the necessary openings without reconstructing the full memory MLE.