pub struct CoinbaseProvingKey<N: Network> {
pub lagrange_basis_at_beta_g: Vec<<N::PairingCurve as PairingEngine>::G1Affine>,
pub product_domain: EvaluationDomain<<N::PairingCurve as PairingEngine>::Fr>,
pub fft_precomputation: FFTPrecomputation<<N::PairingCurve as PairingEngine>::Fr>,
pub product_domain_elements: Vec<<N::PairingCurve as PairingEngine>::Fr>,
pub verifying_key: CoinbaseVerifyingKey<N>,
}
Fields§
§lagrange_basis_at_beta_g: Vec<<N::PairingCurve as PairingEngine>::G1Affine>
The key used to commit to polynomials in Lagrange basis.
product_domain: EvaluationDomain<<N::PairingCurve as PairingEngine>::Fr>
Domain used to compute the product of the epoch polynomial and the prover polynomial.
fft_precomputation: FFTPrecomputation<<N::PairingCurve as PairingEngine>::Fr>
Precomputation to speed up FFTs.
product_domain_elements: Vec<<N::PairingCurve as PairingEngine>::Fr>
Elements of the product domain.
verifying_key: CoinbaseVerifyingKey<N>
The verifying key of the coinbase puzzle.
Implementations§
source§impl<N: Network> CoinbaseProvingKey<N>
impl<N: Network> CoinbaseProvingKey<N>
sourcepub fn lagrange_basis(&self) -> LagrangeBasis<'_, N::PairingCurve>
pub fn lagrange_basis(&self) -> LagrangeBasis<'_, N::PairingCurve>
Obtain elements of the SRS in the lagrange basis powers.
sourcepub fn product_domain_elements(
&self
) -> &[<N::PairingCurve as PairingEngine>::Fr]
pub fn product_domain_elements( &self ) -> &[<N::PairingCurve as PairingEngine>::Fr]
Returns the elements of the product domain.
Trait Implementations§
Auto Trait Implementations§
impl<N> RefUnwindSafe for CoinbaseProvingKey<N>where
<N as Environment>::Field: RefUnwindSafe,
<<N as Environment>::PairingCurve as PairingEngine>::G1Affine: RefUnwindSafe,
<<N as Environment>::PairingCurve as PairingEngine>::G2Affine: RefUnwindSafe,
<<<N as Environment>::PairingCurve as PairingEngine>::G2Affine as PairingCurve>::Prepared: RefUnwindSafe,
impl<N> Send for CoinbaseProvingKey<N>
impl<N> Sync for CoinbaseProvingKey<N>
impl<N> Unpin for CoinbaseProvingKey<N>where
<N as Environment>::Field: Unpin,
<<N as Environment>::PairingCurve as PairingEngine>::G1Affine: Unpin,
<<N as Environment>::PairingCurve as PairingEngine>::G2Affine: Unpin,
<<<N as Environment>::PairingCurve as PairingEngine>::G2Affine as PairingCurve>::Prepared: Unpin,
impl<N> UnwindSafe for CoinbaseProvingKey<N>where
<N as Environment>::Field: UnwindSafe,
<<N as Environment>::PairingCurve as PairingEngine>::G1Affine: UnwindSafe,
<<N as Environment>::PairingCurve as PairingEngine>::G2Affine: UnwindSafe,
<<<N as Environment>::PairingCurve as PairingEngine>::G2Affine as PairingCurve>::Prepared: 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