pub struct InvarianceWitness {
pub boundary: usize,
pub shared: u64,
pub shift_only: u64,
pub gate_only: u64,
}Expand description
The basis state that witnessed a class-invariance failure.
Enough to reproduce the failure by hand: the shift that broke, and how many qubits the offending basis state holds in each of the three blocks the phase reads. The three occupancies determine both overlap counts, so they determine the phase, so they are the counterexample.
Fields§
§boundary: usizeIndex into the boundaries slice of the shift that failed.
|γ ∩ b ∩ x|, the occupancy of the block both chains cover.
shift_only: u64|(b \ γ) ∩ x|, the occupancy of the block only the shift covers.
gate_only: u64|(γ \ b) ∩ x|, the occupancy of the block only the gate’s chain covers.
Trait Implementations§
Source§impl Clone for InvarianceWitness
impl Clone for InvarianceWitness
Source§fn clone(&self) -> InvarianceWitness
fn clone(&self) -> InvarianceWitness
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for InvarianceWitness
Source§impl Debug for InvarianceWitness
impl Debug for InvarianceWitness
impl Eq for InvarianceWitness
Source§impl PartialEq for InvarianceWitness
impl PartialEq for InvarianceWitness
impl StructuralPartialEq for InvarianceWitness
Auto Trait Implementations§
impl Freeze for InvarianceWitness
impl RefUnwindSafe for InvarianceWitness
impl Send for InvarianceWitness
impl Sync for InvarianceWitness
impl Unpin for InvarianceWitness
impl UnsafeUnpin for InvarianceWitness
impl UnwindSafe for InvarianceWitness
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