Struct twenty_first::shared_math::fri::Fri
source · [−]pub struct Fri<PF: PrimeField, H> {
pub expansion_factor: usize,
pub colinearity_checks_count: usize,
pub domain: FriDomain<PF>,
/* private fields */
}
Fields
expansion_factor: usize
colinearity_checks_count: usize
domain: FriDomain<PF>
Implementations
sourceimpl<PF, H> Fri<PF, H> where
PF: PrimeField + ToDigest<H::Digest>,
H: Hasher,
impl<PF, H> Fri<PF, H> where
PF: PrimeField + ToDigest<H::Digest>,
H: Hasher,
pub fn new(
offset: PF,
omega: PF,
domain_length: usize,
expansion_factor: usize,
colinearity_checks_count: usize
) -> Self
pub fn prove(
&self,
codeword: &[PF],
proof_stream: &mut ProofStream
) -> Result<Vec<usize>, Box<dyn Error>>
pub fn verify(
&self,
proof_stream: &mut ProofStream
) -> Result<Vec<(usize, PF)>, Box<dyn Error>>
pub fn get_evaluation_domain(&self) -> Vec<PF>
Trait Implementations
Auto Trait Implementations
impl<PF, H> RefUnwindSafe for Fri<PF, H> where
H: RefUnwindSafe,
PF: RefUnwindSafe,
impl<PF, H> Send for Fri<PF, H> where
H: Send,
impl<PF, H> Sync for Fri<PF, H> where
H: Sync,
impl<PF, H> Unpin for Fri<PF, H> where
H: Unpin,
PF: Unpin,
impl<PF, H> UnwindSafe for Fri<PF, H> where
H: UnwindSafe,
PF: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more