CircuitHal

Trait CircuitHal 

Source
pub trait CircuitHal<H: Hal> {
    // Required methods
    fn accumulate(
        &self,
        preflight: &AccumPreflight,
        ctrl: &H::Buffer<H::Elem>,
        io: &H::Buffer<H::Elem>,
        data: &H::Buffer<H::Elem>,
        mix: &H::Buffer<H::Elem>,
        accum: &H::Buffer<H::Elem>,
        steps: usize,
    );
    fn eval_check(
        &self,
        check: &H::Buffer<H::Elem>,
        groups: &[&H::Buffer<H::Elem>],
        globals: &[&H::Buffer<H::Elem>],
        poly_mix: H::ExtElem,
        po2: usize,
        steps: usize,
    );
}
Available on crate feature prove only.

Required Methods§

Source

fn accumulate( &self, preflight: &AccumPreflight, ctrl: &H::Buffer<H::Elem>, io: &H::Buffer<H::Elem>, data: &H::Buffer<H::Elem>, mix: &H::Buffer<H::Elem>, accum: &H::Buffer<H::Elem>, steps: usize, )

Source

fn eval_check( &self, check: &H::Buffer<H::Elem>, groups: &[&H::Buffer<H::Elem>], globals: &[&H::Buffer<H::Elem>], poly_mix: H::ExtElem, po2: usize, steps: usize, )

Compute check polynomial.

Implementors§

Source§

impl<F, LH, RH, LC, RC> CircuitHal<DualHal<F, LH, RH>> for DualCircuitHal<F, LH, RH, LC, RC>
where F: Field, LH: Hal<Field = F, Elem = F::Elem, ExtElem = F::ExtElem>, RH: Hal<Field = F, Elem = F::Elem, ExtElem = F::ExtElem>, LC: CircuitHal<LH>, RC: CircuitHal<RH>,