-
Notifications
You must be signed in to change notification settings - Fork 310
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: minor Gemini refactor to prep for opening k-shifts (#11393)
The first in a series of Gemini updates that will facilitate the addition of k-shifts and hopefully improve the code along the way. Each method now has a single clear purpose and the storage of polynomials is general enough to accommodate opening a new set of polynomials. We make a distinction between the partially evaluated batch polynomials A₀₊(r), A₀₋(-r), and the d-1 "fold" polynomials Aₗ(−r^{2ˡ}), l = 1, ..., d-1. The former are constructed via `compute_partially_evaluated_batch_polynomials` and the latter through `compute_fold_polynomials`. Univariate opening claims for all d+1 polynomials are constructed through `construct_univariate_opening_claims`. This makes each method clearer and avoids the need to store "F" and "G" in the first two slots of the old `fold_polynomials`, a trick which no longer works once we have a 3rd polynomial type, i.e. F, G and H.
- Loading branch information
1 parent
5a52e95
commit 30a063a
Showing
4 changed files
with
141 additions
and
121 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
30a063a
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Possible performance regression was detected for benchmark 'C++ Benchmark'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold
1.05
.nativeconstruct_proof_ultrahonk_power_of_2/20
4520.827936999978
ms/iter4067.51341399999
ms/iter1.11
commit(t)
3284759030
ns/iter3098157138
ns/iter1.06
Goblin::merge(t)
150311423
ns/iter133538618
ns/iter1.13
This comment was automatically generated by workflow using github-action-benchmark.
CC: @ludamad @codygunton