pub struct QuantumSupremacyEngine {
pub engine_id: u64,
pub random_circuit_sampling: RandomCircuitSampling,
pub boson_sampling: BosonSampling,
pub iqp_sampling: IQPSampling,
pub quantum_fourier_sampling: QuantumFourierSampling,
pub quantum_simulation_advantage: QuantumSimulationAdvantage,
pub supremacy_verification: SupremacyVerification,
pub complexity_analysis: ComplexityAnalysis,
pub benchmarking_suite: QuantumBenchmarkingSuite,
}Expand description
Quantum supremacy demonstration engine
Fields§
§engine_id: u64§random_circuit_sampling: RandomCircuitSampling§boson_sampling: BosonSampling§iqp_sampling: IQPSampling§quantum_fourier_sampling: QuantumFourierSampling§quantum_simulation_advantage: QuantumSimulationAdvantage§supremacy_verification: SupremacyVerification§complexity_analysis: ComplexityAnalysis§benchmarking_suite: QuantumBenchmarkingSuiteImplementations§
Source§impl QuantumSupremacyEngine
Implementation of the Quantum Supremacy Engine
impl QuantumSupremacyEngine
Implementation of the Quantum Supremacy Engine
Sourcepub fn execute_random_circuit_sampling(
&mut self,
circuit_parameters: RandomCircuitParameters,
sampling_parameters: SamplingParameters,
) -> Result<RandomCircuitSupremacyResult, QuantRS2Error>
pub fn execute_random_circuit_sampling( &mut self, circuit_parameters: RandomCircuitParameters, sampling_parameters: SamplingParameters, ) -> Result<RandomCircuitSupremacyResult, QuantRS2Error>
Execute random circuit sampling supremacy demonstration
Sourcepub fn execute_boson_sampling(
&mut self,
photon_count: usize,
mode_count: usize,
sampling_count: usize,
) -> Result<BosonSamplingSupremacyResult, QuantRS2Error>
pub fn execute_boson_sampling( &mut self, photon_count: usize, mode_count: usize, sampling_count: usize, ) -> Result<BosonSamplingSupremacyResult, QuantRS2Error>
Execute Boson sampling supremacy demonstration
Sourcepub fn execute_iqp_sampling(
&mut self,
qubit_count: usize,
circuit_depth: usize,
sample_count: usize,
) -> Result<IQPSupremacyResult, QuantRS2Error>
pub fn execute_iqp_sampling( &mut self, qubit_count: usize, circuit_depth: usize, sample_count: usize, ) -> Result<IQPSupremacyResult, QuantRS2Error>
Execute IQP sampling supremacy demonstration
Sourcepub fn execute_quantum_simulation_advantage(
&mut self,
system_type: ManyBodySystemType,
system_size: usize,
evolution_time: f64,
) -> Result<QuantumSimulationAdvantageResult, QuantRS2Error>
pub fn execute_quantum_simulation_advantage( &mut self, system_type: ManyBodySystemType, system_size: usize, evolution_time: f64, ) -> Result<QuantumSimulationAdvantageResult, QuantRS2Error>
Execute quantum simulation advantage demonstration
Sourcepub fn benchmark_quantum_supremacy(&mut self) -> QuantumSupremacyBenchmarkReport
pub fn benchmark_quantum_supremacy(&mut self) -> QuantumSupremacyBenchmarkReport
Comprehensive quantum supremacy benchmarking
Trait Implementations§
Auto Trait Implementations§
impl Freeze for QuantumSupremacyEngine
impl RefUnwindSafe for QuantumSupremacyEngine
impl Send for QuantumSupremacyEngine
impl Sync for QuantumSupremacyEngine
impl Unpin for QuantumSupremacyEngine
impl UnwindSafe for QuantumSupremacyEngine
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 more