Struct arrabbiata::challenge::Challenges
source · pub struct Challenges<F> {
pub constraint_combiner: F,
pub beta: F,
pub gamma: F,
pub constraint_homogeniser: F,
pub relation_combiner: F,
}
Fields§
§constraint_combiner: F
Used to aggregate the constraints describing the relation. It is used to
enforce all constraints are satisfied at the same time.
Often noted α
.
beta: F
Both challenges used in the permutation argument.
gamma: F
§constraint_homogeniser: F
Used to homogenize the constraints and allow the protocol to fold two
instances of the same relation into a new one.
Often noted u
in the paper mentioning “folding protocols”.
relation_combiner: F
Used by the accumulation protocol (folding) to perform a random linear
transformation of the witnesses and the public values.
Often noted r
in the paper mentioning “folding protocols”.
Trait Implementations§
source§impl<F: Zero> Default for Challenges<F>
impl<F: Zero> Default for Challenges<F>
source§impl<F> Index<ChallengeTerm> for Challenges<F>
impl<F> Index<ChallengeTerm> for Challenges<F>
source§impl<F> Index<usize> for Challenges<F>
impl<F> Index<usize> for Challenges<F>
source§impl<F> IndexMut<ChallengeTerm> for Challenges<F>
impl<F> IndexMut<ChallengeTerm> for Challenges<F>
Auto Trait Implementations§
impl<F> RefUnwindSafe for Challenges<F>where F: RefUnwindSafe,
impl<F> Send for Challenges<F>where F: Send,
impl<F> Sync for Challenges<F>where F: Sync,
impl<F> Unpin for Challenges<F>where F: Unpin,
impl<F> UnwindSafe for Challenges<F>where F: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more