argumentcomputer / argumentcomputer/sphinx
Lower values of `fixed_log2_rows` for the wrap machine
- Dominant language
- Rust
- Stars
- 80
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
The values for `fixed_log2_rows` [here](https://github.com/lurk-lab/sphinx/blob/c9e1b00d03793a3f17feecdd1db8564c19aa1d6b/recursion/core/src/stark/mod.rs#L116) were decreased from 20 to 19 upstream v1.0.6-testnet (and again at v1.0.7-testnet), but this breaks the test `test_permutation_challenges` in Sphinx, so we kept it at 20
Setting it to 19 does not break E2E Plonk proof generation however, in fact with it at 20 it prints the warning "WARN fixed log2 rows can be potentially reduced: got 394238, expected 1048576". We should double-check why `test_permutation_challenges` is failing with a lower size
Running a quick test benchmark with 19 vs 20 showed no meaningful difference in total proving time, but this number changes how big the final gnark circuit is, so we'll want to decrease it as much as possible
Contributor guide
Research direction
Start in recursion/core/src/stark/mod.rs at the fixed_log2_rows values and run test_permutation_challenges with 19 and 20. Compare that failure with E2E Plonk proof generation and the warning about reducing fixed log2 rows. Done means explaining the test failure and lowering the value as far as the proof system safely allows.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cryptography
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100