update proof-input README.md

This commit is contained in:
M Alghazwi 2025-07-03 13:43:50 +02:00
parent 7bf138a31b
commit 4188fe282a
No known key found for this signature in database
GPG Key ID: 646E567CAD7DB607

View File

@ -1,5 +1,4 @@
# Input Generator for the Plonky2 Circuit
WARNING: This is a work-in-progress prototype, and has not received careful code review. This implementation is NOT ready for production use.
This crate generates input to the proof circuit based on the test parameters. The proof input generated can be ported into
the [`plonky2 codex proof circuits`](../codex-plonky2-circuits). Currently only generates fake data for testing.
@ -8,22 +7,20 @@ the [`plonky2 codex proof circuits`](../codex-plonky2-circuits). Currently only
- [`merkle_tree`](./src/merkle_tree) is the implementation of "safe" merkle tree used in codex, consistent with the one [here](https://github.com/codex-storage/nim-codex/blob/master/codex/merkletree/merkletree.nim).
- [`data_structs`](./src/data_structs.rs) contains the data structures for the codex storage, this is used to generate proof input.
- [`gen_input`](./src/gen_input.rs) contains the necessary function to generate the proof input.
- [`recursion`](./src/recursion) contains the tests for the uniform (2-to-1 tree) recursion.
- [`serialization`](./src/serialization) contains the serialization functions to read and write circuit data, input, and proofs.
- [`input_generator`](./src/input_generator) contains the necessary function to generate the proof input.
- [`params`](./src/params.rs) is the test parameters used to generate the input.
- [`sponge`](./src/sponge.rs) contains the non-circuit version of hash function (with and without padding) used to hash cells and during sampling.
- [`hash`](./src/hash) contains the non-circuit version of hash (with and without padding) used to hash cells and during sampling.
- [`utils`](./src/utils.rs) contains helper functions.
## Tests
See [`tests`](./tests) for all tests.
To run a specific test, use:
```bash
cargo test --features parallel --test <test_file_name>
```
Or for more specific tests, use:
```bash
cargo test --features parallel --test <test_file_name> -- <test_name>
```
## Usage
see [`workflow`](../workflow) for how to generate proof input.
## Benchmarks
see [`BENCHMARKS.md`](../workflow/BENCHMARKS.md)