`Polynomial` should not allocate
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Refactor
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- rust
- Domain
- cryptography, performance
Research direction
Start with core/src/air/polynomial.rs and inspect how Polynomial is used by the Air::eval implementations during proving. Determine how fixed-size coefficient storage can coexist with arithmetic whose result degree changes. Done means row evaluations no longer allocate vectors while polynomial arithmetic still represents the required result degrees.
Written by the indexing model from the issue text.
Description
The Polynomial struct represents its coefficients as a Vec. Because these are also used by various Air::eval implementations, this means that vectors are being allocated at every row evaluation during proving.
Ideally, the coefficients should be stored in a fixed size array, though this would conflict with the arithmetic operations that cannot return a different type.
The arithmetic operations could be replaced with methods though so that they can return the right type (e.g. multiplication of two polynomial with degree N would return a polynomial of degree 2N)
- Dominant language
- Rust
- Stars
- 80
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from argumentcomputer/sphinx
-
Difficulty 4/5 3-5 days Newbie friendliness 38/100
argumentcomputer/sphinx#206 ·
-
The termination check is under-constrained due to incomplete check of "public_values.next_pc == 0".Open
Difficulty 3/5 1-2 days Newbie friendliness 72/100
argumentcomputer/sphinx#205 ·
-
Difficulty 5/5 Over a week Newbie friendliness 20/100
argumentcomputer/sphinx#204 ·
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
argumentcomputer/sphinx#188 ·
-
SHA-512 improvementsOpen
Difficulty 4/5 3-5 days Newbie friendliness 35/100
argumentcomputer/sphinx#181 ·
All issues in argumentcomputer/sphinx
Similar issues
-
discover: `sudo RTK_DISABLED=$VAR …` is not detected as a bypass when `sudo` is a transparent prefixOpenarea:cli bug good first issue priority:medium
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
skill:code-review
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
component:sight
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
agentic-os-org/ANOLISA#4115 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
rivet-dev/rivet#5819 · 1 comment ·
Maintainers usually reply within 1 day
-
A-io-database bug needs triage python
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Maintainers usually reply within 1 day