Skip to main content

GenerateRandomTrace

Trait GenerateRandomTrace 

Source
pub trait GenerateRandomTrace<const DEGREE_PLUS_ONE: usize>: Uair {
    type PolyCoeff: Clone;
    type Int: Clone;

    // Required method
    fn generate_random_trace<G: Rng + ?Sized>(
        num_vars: usize,
        rng: &mut G,
    ) -> UairTrace<'static, Self::PolyCoeff, Self::Int, DEGREE_PLUS_ONE, DEGREE_PLUS_ONE>;
}
Expand description

A trait for UAIRs for generating random trace (for both public and witness columns).

Required Associated Types§

Required Methods§

Source

fn generate_random_trace<G: Rng + ?Sized>( num_vars: usize, rng: &mut G, ) -> UairTrace<'static, Self::PolyCoeff, Self::Int, DEGREE_PLUS_ONE, DEGREE_PLUS_ONE>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<R, P> GenerateRandomTrace<32> for BigLinearUair<R, P>
where R: ConstSemiring + From<u32> + 'static, P: Semiring + 'static,

Source§

impl<R, P> GenerateRandomTrace<32> for BigLinearUairWithPublicInput<R, P>
where R: ConstSemiring + From<u32> + 'static, P: Semiring + 'static,

Source§

impl<R, P> GenerateRandomTrace<32> for BinaryDecompositionUair<R, P>
where R: ConstSemiring + From<u32> + 'static, P: Semiring + 'static,

Source§

impl<R, P> GenerateRandomTrace<32> for ShaProxy<R, P>
where R: ConstSemiring + From<u32> + 'static, P: Semiring + 'static,

Source§

impl<R, P> GenerateRandomTrace<32> for TestUairBitOpsFqFamily<R, P>
where R: ConstSemiring + 'static, P: Semiring + From<u64> + 'static,

Source§

impl<R, P> GenerateRandomTrace<32> for TestUairBitOpsMixedSplice<R, P>
where R: ConstSemiring + From<i8> + 'static, P: Semiring + 'static, StandardUniform: Distribution<R>,

Source§

impl<R, P> GenerateRandomTrace<32> for TestUairFqLargePrime<R, P>
where R: ConstSemiring + From<i32> + 'static, P: Semiring + From<u64> + 'static,

Source§

impl<R, P> GenerateRandomTrace<32> for TestUairMixedShifts<R, P>
where R: Semiring + From<i8> + 'static, P: Semiring + 'static, StandardUniform: Distribution<R>,

Source§

impl<R, P> GenerateRandomTrace<32> for TestUairNoMultiplication<R, P>
where R: ConstSemiring + From<i32> + 'static, P: Semiring + 'static,

Source§

impl<R, P> GenerateRandomTrace<32> for TestUairSimpleMultiplication<R, P>
where R: Semiring + From<i8> + 'static, P: Semiring + 'static, StandardUniform: Distribution<R>,

Source§

impl<R, P, const NUM_PUBLIC_BINARY: usize> GenerateRandomTrace<32> for TestUairAffineVirtual<R, P, NUM_PUBLIC_BINARY>
where R: ConstSemiring + 'static, P: Semiring + From<u64> + 'static,