pub struct Tableau {
pub logicals: PauliSet,
}Fields§
§logicals: PauliSetImplementations§
Source§impl Tableau
impl Tableau
Sourcepub fn new(n: usize) -> Self
pub fn new(n: usize) -> Self
Allocates a new Tableau representing the identity operator over n qubits
Sourcepub fn from_circuit(circuit: &CliffordCircuit) -> Self
pub fn from_circuit(circuit: &CliffordCircuit) -> Self
Build the Tableau corresponding to a Clifford circuit
Sourcepub fn random(n: usize) -> Self
pub fn random(n: usize) -> Self
Generates a random Tableau (no garantuees, just here for testing)
Sourcepub fn from_operators(logicals: &Vec<(bool, String)>) -> Self
pub fn from_operators(logicals: &Vec<(bool, String)>) -> Self
Build a Tableau from a PauliSet
pub fn get_inverse_z(&self, qbit: usize) -> (bool, String)
pub fn get_inverse_x(&self, qbit: usize) -> (bool, String)
Sourcepub fn to_isometry(self) -> IsometryTableau
pub fn to_isometry(self) -> IsometryTableau
Lifts the Taleau into an IsometryTableau (k = 0)
Trait Implementations§
Source§impl PauliLike for Tableau
impl PauliLike for Tableau
fn cz(&mut self, i: usize, j: usize)
Source§fn conjugate_with_gate(&mut self, gate: &CliffordGate)
fn conjugate_with_gate(&mut self, gate: &CliffordGate)
Conjugate the PauliLike object via a Gate
Source§fn conjugate_with_circuit(&mut self, circuit: &CliffordCircuit)
fn conjugate_with_circuit(&mut self, circuit: &CliffordCircuit)
Conjugate the PauliLike object via a Circuit
impl StructuralPartialEq for Tableau
Auto Trait Implementations§
impl Freeze for Tableau
impl RefUnwindSafe for Tableau
impl Send for Tableau
impl Sync for Tableau
impl Unpin for Tableau
impl UnwindSafe for Tableau
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> 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