Skip to main content

Reduction

Trait Reduction 

Source
pub trait Reduction<F: Field> {
    type A: Message<F>;
    type B;
    type Key;
    type Proof;
    type Error;

    // Required methods
    fn transcript_pattern(
        key: &Self::Key,
        builder: TranscriptBuilder,
    ) -> TranscriptBuilder;
    fn verify_reduction<S: Duplex<F>>(
        key: &Self::Key,
        instance: MessageGuard<Self::A>,
        transcript: TranscriptGuard<'_, F, S, Self::Proof>,
    ) -> Result<Self::B, Self::Error>;
}

Required Associated Types§

Required Methods§

Source

fn transcript_pattern( key: &Self::Key, builder: TranscriptBuilder, ) -> TranscriptBuilder

Source

fn verify_reduction<S: Duplex<F>>( key: &Self::Key, instance: MessageGuard<Self::A>, transcript: TranscriptGuard<'_, F, S, Self::Proof>, ) -> Result<Self::B, Self::Error>

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§