pub enum SumcheckError {
RoundCountMismatch {
expected: usize,
actual: usize,
},
MissingSumcheckData {
expected_rounds: usize,
},
InvalidPowWitness,
PowWitnessCountMismatch {
expected: usize,
actual: usize,
},
WireSizeMismatch {
round: usize,
expected: usize,
actual: usize,
},
EllZkMismatch {
expected: usize,
actual: usize,
},
}Expand description
Errors from sumcheck protocol verification.
Variants§
RoundCountMismatch
The proof contains a different number of rounds than expected.
MissingSumcheckData
The proof is missing sumcheck data when rounds > 0.
InvalidPowWitness
Proof-of-work witness verification failed.
PowWitnessCountMismatch
The proof carries fewer PoW witnesses than sumcheck rounds.
WireSizeMismatch
HVZK sumcheck: a per-round wire payload had the wrong number of field
elements. Each round must carry max(ℓ_zk - 1, 2) elements (after the
linear coefficient is skipped per Lemma 6.4 / paper §6).
EllZkMismatch
HVZK sumcheck: the proof’s claimed ell_zk (mask code message length)
does not match the verifier’s expected value. Catches caller-side
configuration mismatch between prover and verifier before the wire
shape check.
Trait Implementations§
Source§impl Debug for SumcheckError
impl Debug for SumcheckError
Source§impl Display for SumcheckError
impl Display for SumcheckError
impl Eq for SumcheckError
Source§impl Error for SumcheckError
impl Error for SumcheckError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl PartialEq for SumcheckError
impl PartialEq for SumcheckError
Source§fn eq(&self, other: &SumcheckError) -> bool
fn eq(&self, other: &SumcheckError) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SumcheckError
Auto Trait Implementations§
impl Freeze for SumcheckError
impl RefUnwindSafe for SumcheckError
impl Send for SumcheckError
impl Sync for SumcheckError
impl Unpin for SumcheckError
impl UnsafeUnpin for SumcheckError
impl UnwindSafe for SumcheckError
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more