pub struct HierarchicalTiledDecoder { /* private fields */ }Expand description
Recursive multi-scale decoder achieving O(d^{2-epsilon} polylog d) expected complexity for physical error rates below threshold.
The lattice is recursively partitioned into tiles. At each level, tiles are decoded independently and boundary corrections are merged. Because error chains cross tile boundaries with probability decaying exponentially in the tile side length, the merge cost is dominated by a sublinear fraction of the total work.
Implementations§
Source§impl HierarchicalTiledDecoder
impl HierarchicalTiledDecoder
Sourcepub fn new(tile_size: u32, num_levels: u32) -> Self
pub fn new(tile_size: u32, num_levels: u32) -> Self
Create a new hierarchical tiled decoder.
tile_size– side length of base tiles (must be >= 2).num_levels– number of recursive coarsening levels.
Sourcepub fn complexity_bound(
&self,
code_distance: u32,
physical_error_rate: f64,
) -> ComplexityBound
pub fn complexity_bound( &self, code_distance: u32, physical_error_rate: f64, ) -> ComplexityBound
Provable complexity bound for a given code distance and error rate.
Trait Implementations§
Source§impl SurfaceCodeDecoder for HierarchicalTiledDecoder
impl SurfaceCodeDecoder for HierarchicalTiledDecoder
Source§fn decode(&self, syndrome: &SyndromeData) -> Correction
fn decode(&self, syndrome: &SyndromeData) -> Correction
Decode a syndrome and return the inferred correction.
Auto Trait Implementations§
impl Freeze for HierarchicalTiledDecoder
impl RefUnwindSafe for HierarchicalTiledDecoder
impl Send for HierarchicalTiledDecoder
impl Sync for HierarchicalTiledDecoder
impl Unpin for HierarchicalTiledDecoder
impl UnsafeUnpin for HierarchicalTiledDecoder
impl UnwindSafe for HierarchicalTiledDecoder
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