pub struct AdaptiveGateFusion { /* private fields */ }
Expand description
Adaptive gate fusion engine
Implementations§
Source§impl AdaptiveGateFusion
impl AdaptiveGateFusion
Sourcepub fn new(config: AdaptiveFusionConfig) -> Result<Self>
pub fn new(config: AdaptiveFusionConfig) -> Result<Self>
Create new adaptive gate fusion engine
Sourcepub fn with_backend(self) -> Result<Self>
pub fn with_backend(self) -> Result<Self>
Initialize with SciRS2 backend
Sourcepub fn analyze_circuit(
&mut self,
gates: &[QuantumGate],
) -> Result<CircuitAnalysis>
pub fn analyze_circuit( &mut self, gates: &[QuantumGate], ) -> Result<CircuitAnalysis>
Analyze circuit and identify fusion opportunities
Sourcepub fn fuse_circuit(
&mut self,
gates: &[QuantumGate],
) -> Result<Vec<FusedGateBlock>>
pub fn fuse_circuit( &mut self, gates: &[QuantumGate], ) -> Result<Vec<FusedGateBlock>>
Perform gate fusion on a circuit
Sourcepub fn get_fusion_stats(&self) -> FusionStats
pub fn get_fusion_stats(&self) -> FusionStats
Get fusion statistics
Sourcepub fn fuse_gates(
&mut self,
gates: &[QuantumGate],
) -> Result<(Vec<FusedGateBlock>, Vec<QuantumGate>)>
pub fn fuse_gates( &mut self, gates: &[QuantumGate], ) -> Result<(Vec<FusedGateBlock>, Vec<QuantumGate>)>
Fuse a sequence of gates using adaptive fusion
Auto Trait Implementations§
impl Freeze for AdaptiveGateFusion
impl !RefUnwindSafe for AdaptiveGateFusion
impl Send for AdaptiveGateFusion
impl Sync for AdaptiveGateFusion
impl Unpin for AdaptiveGateFusion
impl !UnwindSafe for AdaptiveGateFusion
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> 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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.