-
Notifications
You must be signed in to change notification settings - Fork 387
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
Update aggregator
doc
#1365
Update aggregator
doc
#1365
Conversation
To emphase the "continuous" in aggregated data
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.
Nit-picks, minor suggestions
type As = KzgAs<Pcs>; | ||
|
||
/// Select condition ? LHS : RHS. |
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.
Maybe we should add some more detail: both this and the below entry are helpers to construct corresponding circuits inside of the ecc_chip
which is maintained in the loader
argument.
select_accumulator
select the lhs
or rhs
according to the condition
and return the cells for ec point represent the result of selection.
accumulate
put all the accumulators
in argument into circuit and accumulate them into a new pair of ec point and return it.
It may be better also to note that change the size of the vec of accumulators
argument would lead to a new circuit (vk changed).
@@ -68,21 +76,39 @@ fn accumulate<'a>( | |||
|
|||
#[derive(Clone)] | |||
pub struct RecursionCircuit<ST> { | |||
/// The verifying key for the circuit. |
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.
Basicaly it is not the verifying key but the common params of the recursion circuit. The so called "vk" part which identify the circuit is passed via preprocessed_digest
PI.
svk: Svk, | ||
/// The default accumulator to initialise the circuit. |
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.
It is the accumulator that recursion circuit begin with when the "previous" snark is not avaliable (aka. round = 0)
app: SnarkWitness, | ||
/// The SNARK witness from the (k-1)-th BatchCircuit. |
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.
from the previous RecursionCircuit, i.e. the RecursionCircuit which has aggregated (k-1) snarks from BatchCircuit
instances: Vec<Fr>, | ||
/// The accumulation of the SNARK proofs recursed over thus far. |
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.
Should say "the proofs of AppCircuit's snark under accumulation scheme"?
Update
aggregator
crate's documentation