-
Notifications
You must be signed in to change notification settings - Fork 295
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Protogalaxy Combiner #2436
Merged
Merged
Changes from all commits
Commits
Show all changes
66 commits
Select commit
Hold shift + click to select a range
37599b1
Note mistake in ultra grumpkin flavor.
codygunton b37d9a1
Move some sumcheck utils to a separate class.
codygunton ae8455b
Move batching functions to Utils
codygunton 6cb2c6a
WIP combiner
codygunton 6ef8b7f
Fix GCC compilation.
codygunton 3613f74
Move extend and evaluate into Univariate.
codygunton 1ac5217
Fix compilation.
codygunton 68b3c2c
Remove TODO?
codygunton c7296a6
Note unused template arg.
codygunton 33dc1ce
Note out of date documentation
codygunton 8e7d8c0
Use relations statically.
codygunton 0a5496e
Touch up relations test.
codygunton 613e0a5
Remove unused template params
codygunton 5e3a545
Merge branch 'master' into cg/pg-combiner
codygunton 265b54c
Prep_ more informative type names
codygunton 4f0d00e
Rename ExtendedEdges template.
codygunton e74d800
Combiner builds!
codygunton 88355da
Remove declared but undefined funtion.
codygunton a9a3f2b
WIP debugging (for Mara).
codygunton ca9dfd5
Fix indexing
codygunton 05db33a
Combiner works in two examples.
codygunton 84b3e59
Merge commit '404ec34d3^' into cg/pg-combiner
codygunton f2eb5fc
first suggested commit
codygunton f538613
removed build system
codygunton 68c8a91
Merge commit '404ec34d3' into cg/pg-combiner
codygunton 13b034a
Merge branch 'master' into cg/pg-combiner
codygunton 9f2b1c7
Fix ECCVM flavor
codygunton cdb65c4
Reinstate dockerfile
codygunton eea3b05
Remove files added in merge.
codygunton a1c827a
clan16 in barretenberg-x86_64-linux-clang-assert
codygunton 916d1bf
Revert "clan16 in barretenberg-x86_64-linux-clang-assert"
codygunton f48e0e5
Delete file added in merge
codygunton 97c093a
Merge branch 'master' into cg/pg-combiner-bb-moved
codygunton 24f48ad
It compiles
codygunton 6501937
Fix test for Ultra flavor.
codygunton 40051c8
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton f0101bd
Manually apply formatter.
codygunton 4b73492
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton fea7da8
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton 3eec73b
Fix second combiner example.
codygunton ab88d34
Fix formatting.
codygunton 8ecf064
Merge branch 'master' into cg/pg-combiner-bb-moved
codygunton c02f71d
Unstaged changes.
codygunton 8d080b9
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton 4cc66ea
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton 2f68fe6
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton 5c7f244
Handle in another PR.
codygunton 8c8abab
Resolve TODO with static_assert
codygunton 85914c4
Attach issue to potential bug.
codygunton cd3b6f4
Make ExtendedEdges alias in each flavor.
codygunton fdf65a0
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton 58c82fc
Rename tuple creation functions
codygunton bcca285
Rename sumcheck-specific type.
codygunton 9ab5534
More type massage.
codygunton 80ee994
Add Sumcheck to type names
codygunton 324828b
Name to Protogalaxy tuple
codygunton 16ac9a1
Use the PG type...
codygunton fff7f52
Settable numbers of instances.
codygunton f6bae20
Better setting
codygunton a1211dd
Test 1+3 instances.
codygunton f682b18
Document instance function and add TODO.
codygunton 6e8c34c
Move into Mara's classes.
codygunton 6c4ced5
Improve comments.
codygunton 1dbc832
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton 1de58f7
Respond to review
codygunton 4e6a7f6
Merge remote-tracking branch 'origin/master' into cg/pg-combiner-bb-m…
codygunton File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -60,9 +60,11 @@ class Ultra { | |
static constexpr size_t MAX_RANDOM_RELATION_LENGTH = MAX_RELATION_LENGTH + 1; | ||
static constexpr size_t NUM_RELATIONS = std::tuple_size<Relations>::value; | ||
|
||
// define the container for storing the univariate contribution from each relation in Sumcheck | ||
using TupleOfTuplesOfUnivariates = decltype(create_relation_univariates_container<FF, Relations>()); | ||
using TupleOfArraysOfValues = decltype(create_relation_values_container<FF, Relations>()); | ||
template <size_t NUM_INSTANCES> | ||
using ProtogalaxyTupleOfTuplesOfUnivariates = | ||
decltype(create_protogalaxy_tuple_of_tuples_of_univariates<Relations, NUM_INSTANCES>()); | ||
using SumcheckTupleOfTuplesOfUnivariates = decltype(create_sumcheck_tuple_of_tuples_of_univariates<Relations>()); | ||
using TupleOfArraysOfValues = decltype(create_sumcheck_tuple_of_arrays_of_values<Relations>()); | ||
|
||
// Whether or not the first row of the execution trace is reserved for 0s to enable shifts | ||
static constexpr bool has_zero_row = true; | ||
|
@@ -315,13 +317,17 @@ class Ultra { | |
} | ||
}; | ||
|
||
/** | ||
* @brief A container for univariates used during Protogalaxy folding and sumcheck. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. maybe one sentence explainer of what these univariates are? here and in the other flavors There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Done |
||
* @details During folding and sumcheck, the prover evaluates the relations on these univariates. | ||
*/ | ||
template <size_t LENGTH> | ||
using ProverUnivariates = AllEntities<barretenberg::Univariate<FF, LENGTH>, barretenberg::Univariate<FF, LENGTH>>; | ||
|
||
/** | ||
* @brief A container for univariates produced during the hot loop in sumcheck. | ||
* @todo TODO(#390): Simplify this by moving MAX_RELATION_LENGTH? | ||
*/ | ||
template <size_t MAX_RELATION_LENGTH> | ||
using ExtendedEdges = AllEntities<barretenberg::Univariate<FF, MAX_RELATION_LENGTH>, | ||
barretenberg::Univariate<FF, MAX_RELATION_LENGTH>>; | ||
using ExtendedEdges = ProverUnivariates<MAX_RELATION_LENGTH>; | ||
|
||
/** | ||
* @brief A container for commitment labels. | ||
|
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
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.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
these are much clear names to me, also thanks for the comments :)