pub struct RegimeReport {
pub regime: Regime,
/* private fields */
}Expand description
Full soundness breakdown within a single proximity regime.
The terms hold every contribution, plus the commitment-collision cap.
The attained security is the minimum over all of them.
A collision, or any single binding error, forges the proof.
It is also the top-level output of crate::stark::conjectured_security_report.
The same holds for crate::stark::legacy_security_report.
Each has one regime, so neither needs a SecurityReport envelope to maximize over.
Fields§
§regime: RegimeImplementations§
Source§impl RegimeReport
impl RegimeReport
Sourcepub fn terms(&self) -> &[SecurityTerm]
pub fn terms(&self) -> &[SecurityTerm]
Every soundness contribution in this regime, cap included.
Sourcepub fn binding(&self) -> SecurityTerm
pub fn binding(&self) -> SecurityTerm
The binding term, which is the one with the fewest bits.
A regime always carries at least four terms, so there is always one.
Sourcepub fn security_bits(&self) -> f64
pub fn security_bits(&self) -> f64
Attained security in this regime, in bits.
Trait Implementations§
Source§impl Clone for RegimeReport
impl Clone for RegimeReport
Source§impl Debug for RegimeReport
impl Debug for RegimeReport
Auto Trait Implementations§
impl Freeze for RegimeReport
impl RefUnwindSafe for RegimeReport
impl Send for RegimeReport
impl Sync for RegimeReport
impl Unpin for RegimeReport
impl UnsafeUnpin for RegimeReport
impl UnwindSafe for RegimeReport
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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