mirror of
https://github.com/logos-storage/plonky2.git
synced 2026-01-03 22:33:06 +00:00
Over quartic field extension (for now). This would be used in our FRI recursive verifier later, for the consistency check. To summarize the wires, - `n` inputs for the `n` points to interpolate (don't need `4n` since they'll be in the subgroup of the base field) - `4n` inputs for the `n` (extension field) values to interpolate - `4` inputs for the point to evaluate the interpolant at (beta, which will be drawn from the extension field right?) - `4` outputs for the interpolated value - `4n` internal wires for the interpolant's coefficients This definitely isn't the most optimal approach, e.g. we could route in a single "base" point and derive its neighboring points, but just wanted to keep it simple for now.
plonky2
plonky2 is an implementation of recursive arguments, using techniques from TurboPLONK and DEEP-FRI.
Running
To run the recursion benchmark,
RUSTFLAGS=-Ctarget-cpu=native cargo run --release
Disclaimer
This code has not been thoroughly reviewed or tested, and should not be used in any production systems.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Description
Languages
Rust
98.4%
JavaScript
0.6%
Python
0.6%
HTML
0.3%