pub enum GateCert {
Reversible {
inverse: Vec<usize>,
},
Collision {
input_a: usize,
input_b: usize,
output: usize,
},
}Expand description
A reversibility certificate for a functional unit.
Variants§
Reversible
Reversible: inverse[output] = input, the constructive reverse gate (itself a truth table).
Collision
Irreversible: two distinct inputs collide to the same output — information is erased (the Landauer cost the adiabatic tier forbids). Carries the witnessing collision.
Trait Implementations§
impl Eq for GateCert
impl StructuralPartialEq for GateCert
Auto Trait Implementations§
impl Freeze for GateCert
impl RefUnwindSafe for GateCert
impl Send for GateCert
impl Sync for GateCert
impl Unpin for GateCert
impl UnsafeUnpin for GateCert
impl UnwindSafe for GateCert
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