Skip to main content

CssSyndrome

Type Alias CssSyndrome 

Source
pub type CssSyndrome<T = Vec<usize>> = Css<SparseBinVecBase<T>>;

Aliased Type§

pub struct CssSyndrome<T = Vec<usize>> {
    pub x: SparseBinVecBase<T>,
    pub z: SparseBinVecBase<T>,
}

Fields§

§x: SparseBinVecBase<T>§z: SparseBinVecBase<T>

Implementations§

Source§

impl<T> CssSyndrome<T>
where T: Deref<Target = [usize]>,

Source

pub fn is_trivial(&self) -> bool

Source

pub fn as_view(&self) -> CssSyndromeView<'_>

Examples found in repository?
examples/css_decoding.rs (line 17)
7fn main() {
8    let max_iterations = 100;
9    let probability = Probability::new(0.01);
10    let code = code();
11    let decoder = decoder(&code, probability, max_iterations);
12    let noise = DepolarizingNoise::with_probability(probability);
13    let mut failures = 0;
14    for _ in 0..1000 {
15        let error = code.random_error(&noise, &mut thread_rng());
16        let syndrome = code.syndrome_of(&error);
17        let correction: PauliOperator = decoder.correction_for(syndrome.as_view()).into();
18        if !code.has_stabilizer(&(&error * &correction)) {
19            failures += 1;
20        }
21    }
22    println!("{}", failures);
23}