#[non_exhaustive]pub struct HidingCodeSecurityReport {Show 15 fields
pub role: HidingCodeRole,
pub message_len: usize,
pub randomness_len: usize,
pub randomized_dimension: usize,
pub dyadic_dimension: usize,
pub domain_size: usize,
pub randomized_rate: f64,
pub analysis_log_inv_rate: Option<usize>,
pub analysis_radius: Option<f64>,
pub width: usize,
pub requested_queries: usize,
pub effective_queries: usize,
pub query_miss: HidingErrorBound,
pub mca: HidingErrorBound,
pub paired_list: HidingListBound,
}Expand description
Geometry and ideal-IOP bounds for one randomized code component.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.role: HidingCodeRoleThe component’s protocol role.
message_len: usizeNumber of message coefficients in one lane.
randomness_len: usizeNumber of randomizing coefficients in one lane.
randomized_dimension: usizeActual randomized-code dimension, message_len + randomness_len.
dyadic_dimension: usizeNext-power-of-two envelope used for conservative RS bounds.
domain_size: usizeCodeword length.
randomized_rate: f64Exact randomized-code rate, (message_len + randomness_len) / domain_size.
analysis_log_inv_rate: Option<usize>Logarithm of the conservative dyadic-envelope inverse rate.
This is unavailable when the dyadic envelope fills the domain: none of the configured proximity regimes supplies a positive radius then.
analysis_radius: Option<f64>Proximity radius selected at the dyadic-envelope rate.
width: usizeNumber of lanes sharing one row-query schedule.
requested_queries: usizeNumber of row queries requested by the derived configuration.
effective_queries: usizeNumber of distinct rows the sampler actually opens.
The sampler saturates at the codeword length.
query_miss: HidingErrorBoundConservative query-miss error before the shared final PoW.
At saturation this keeps the IID expression instead of reporting the
exact zero miss probability. The sampling bound is proven under the
premise that the pre-query component is at least analysis_radius
from its code. Under CapacityBound, the separate list/MCA terms
remain conditional; this field does not promote the full regime to
proven.
mca: HidingErrorBoundMCA error for this component. Interleaved groups include the
conservative factor equal to width.
paired_list: HidingListBoundCandidate-list bound for the old/fresh pair. Its interleaving is two
for the source and 2 * width for a mask group.
Trait Implementations§
Source§impl Clone for HidingCodeSecurityReport
impl Clone for HidingCodeSecurityReport
Source§impl Debug for HidingCodeSecurityReport
impl Debug for HidingCodeSecurityReport
Source§impl PartialEq for HidingCodeSecurityReport
impl PartialEq for HidingCodeSecurityReport
Source§impl Serialize for HidingCodeSecurityReport
impl Serialize for HidingCodeSecurityReport
impl StructuralPartialEq for HidingCodeSecurityReport
Auto Trait Implementations§
impl Freeze for HidingCodeSecurityReport
impl RefUnwindSafe for HidingCodeSecurityReport
impl Send for HidingCodeSecurityReport
impl Sync for HidingCodeSecurityReport
impl Unpin for HidingCodeSecurityReport
impl UnsafeUnpin for HidingCodeSecurityReport
impl UnwindSafe for HidingCodeSecurityReport
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
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> ⓘ
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> ⓘ
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