pub mod prism_q
pub mod prism_q::backend
pub mod prism_q::backend::density_matrix
pub struct prism_q::backend::density_matrix::DensityMatrixBackend
impl prism_q::backend::density_matrix::DensityMatrixBackend
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_1q_kraus(&mut self, usize, &[[[num_complex::Complex64; 2]; 2]])
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_2q_depolarizing(&mut self, usize, usize, f64)
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_2q_kraus(&mut self, usize, usize, &[[[num_complex::Complex64; 4]; 4]])
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::density_matrix(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::expectations_pauli(&self, &[(usize, usize, u32)]) -> alloc::vec::Vec<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::new(u64) -> Self
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::purity(&self) -> f64
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
impl prism_q::backend::Backend for prism_q::backend::density_matrix::DensityMatrixBackend
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::name(&self) -> &'static str
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::distributed_statevector
pub struct prism_q::backend::distributed_statevector::DistributedStatevectorBackend
impl prism_q::backend::distributed_statevector::DistributedStatevectorBackend
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::exchange_amplitudes(&self) -> u64
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::exchange_messages(&self) -> u64
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::new(alloc::sync::Arc<prism_q::distributed::DistributedContext>, u64) -> Self
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::sample_state_indices(&mut self, usize, u64) -> prism_q::error::Result<alloc::vec::Vec<u64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::set_relabel(&mut self, bool)
impl prism_q::backend::Backend for prism_q::backend::distributed_statevector::DistributedStatevectorBackend
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::name(&self) -> &'static str
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::factored
pub struct prism_q::backend::factored::FactoredBackend
impl prism_q::backend::factored::FactoredBackend
pub fn prism_q::backend::factored::FactoredBackend::new(u64) -> Self
impl prism_q::backend::Backend for prism_q::backend::factored::FactoredBackend
pub fn prism_q::backend::factored::FactoredBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::factored::FactoredBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::factored::FactoredBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::factored::FactoredBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::factored::FactoredBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::factored::FactoredBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored::FactoredBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::factored::FactoredBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::name(&self) -> &'static str
pub fn prism_q::backend::factored::FactoredBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::factored::FactoredBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::factored::FactoredBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::factored::FactoredBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::factored::FactoredBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::factored::FactoredBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::factored_stabilizer
pub struct prism_q::backend::factored_stabilizer::FactoredStabilizerBackend
impl prism_q::backend::factored_stabilizer::FactoredStabilizerBackend
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::export_tableau(&self) -> (alloc::vec::Vec<u64>, alloc::vec::Vec<bool>)
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init_from_tableau(&mut self, usize, alloc::vec::Vec<u64>, alloc::vec::Vec<bool>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::new(u64) -> Self
impl prism_q::backend::Backend for prism_q::backend::factored_stabilizer::FactoredStabilizerBackend
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::name(&self) -> &'static str
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::mps
pub enum prism_q::backend::mps::MpsPauliAxis
pub prism_q::backend::mps::MpsPauliAxis::X
pub prism_q::backend::mps::MpsPauliAxis::Y
pub prism_q::backend::mps::MpsPauliAxis::Z
pub struct prism_q::backend::mps::MpsBackend
impl prism_q::backend::mps::MpsBackend
pub fn prism_q::backend::mps::MpsBackend::current_max_bond_dim(&self) -> usize
pub fn prism_q::backend::mps::MpsBackend::inner_product(&self, &Self) -> prism_q::error::Result<num_complex::Complex64>
pub fn prism_q::backend::mps::MpsBackend::is_qubit_in_zero_state(&self, usize, f64) -> prism_q::error::Result<bool>
pub fn prism_q::backend::mps::MpsBackend::new(u64, usize) -> Self
pub fn prism_q::backend::mps::MpsBackend::pauli_expectation(&self, &[(usize, prism_q::backend::mps::MpsPauliAxis)]) -> prism_q::error::Result<num_complex::Complex64>
pub fn prism_q::backend::mps::MpsBackend::reset_truncation_tracking(&mut self)
pub fn prism_q::backend::mps::MpsBackend::set_svd_epsilon(&mut self, f64)
pub fn prism_q::backend::mps::MpsBackend::site_for_qubit(&self, usize) -> usize
pub fn prism_q::backend::mps::MpsBackend::truncation_discarded(&self) -> f64
impl core::clone::Clone for prism_q::backend::mps::MpsBackend
pub fn prism_q::backend::mps::MpsBackend::clone(&self) -> Self
impl prism_q::backend::Backend for prism_q::backend::mps::MpsBackend
pub fn prism_q::backend::mps::MpsBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::mps::MpsBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::mps::MpsBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::mps::MpsBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::mps::MpsBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::mps::MpsBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::mps::MpsBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::mps::MpsBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::name(&self) -> &'static str
pub fn prism_q::backend::mps::MpsBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::mps::MpsBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::mps::MpsBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::mps::MpsBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::mps::MpsBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::mps::MpsBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::product
pub struct prism_q::backend::product::ProductStateBackend
impl prism_q::backend::product::ProductStateBackend
pub fn prism_q::backend::product::ProductStateBackend::new(u64) -> Self
impl prism_q::backend::Backend for prism_q::backend::product::ProductStateBackend
pub fn prism_q::backend::product::ProductStateBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::product::ProductStateBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::product::ProductStateBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::product::ProductStateBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::product::ProductStateBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::product::ProductStateBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::product::ProductStateBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::product::ProductStateBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::name(&self) -> &'static str
pub fn prism_q::backend::product::ProductStateBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::product::ProductStateBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::product::ProductStateBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::product::ProductStateBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::product::ProductStateBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::product::ProductStateBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::sparse
pub struct prism_q::backend::sparse::SparseBackend
impl prism_q::backend::sparse::SparseBackend
pub fn prism_q::backend::sparse::SparseBackend::entry_count(&self) -> usize
pub fn prism_q::backend::sparse::SparseBackend::new(u64) -> Self
impl prism_q::backend::Backend for prism_q::backend::sparse::SparseBackend
pub fn prism_q::backend::sparse::SparseBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::sparse::SparseBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::sparse::SparseBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::sparse::SparseBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::sparse::SparseBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::sparse::SparseBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::sparse::SparseBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::sparse::SparseBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::name(&self) -> &'static str
pub fn prism_q::backend::sparse::SparseBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::sparse::SparseBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::sparse::SparseBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::sparse::SparseBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::sparse::SparseBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::sparse::SparseBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::stabilizer
pub struct prism_q::backend::stabilizer::StabilizerBackend
impl prism_q::backend::stabilizer::StabilizerBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_gates_only(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::enable_lazy_destab(&mut self)
pub fn prism_q::backend::stabilizer::StabilizerBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::export_tableau(&self) -> prism_q::error::Result<(alloc::vec::Vec<u64>, alloc::vec::Vec<bool>)>
pub fn prism_q::backend::stabilizer::StabilizerBackend::init_from_tableau(&mut self, usize, alloc::vec::Vec<u64>, alloc::vec::Vec<bool>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::new(u64) -> Self
pub fn prism_q::backend::stabilizer::StabilizerBackend::new_lazy(u64) -> Self
pub fn prism_q::backend::stabilizer::StabilizerBackend::raw_tableau(&self) -> (&[u64], &[bool])
pub fn prism_q::backend::stabilizer::StabilizerBackend::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub fn prism_q::backend::stabilizer::StabilizerBackend::with_gpu_auto(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
impl core::clone::Clone for prism_q::backend::stabilizer::StabilizerBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::clone(&self) -> Self
impl prism_q::backend::Backend for prism_q::backend::stabilizer::StabilizerBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::stabilizer::StabilizerBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::stabilizer::StabilizerBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::stabilizer::StabilizerBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::stabilizer::StabilizerBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::stabilizer::StabilizerBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::stabilizer::StabilizerBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::name(&self) -> &'static str
pub fn prism_q::backend::stabilizer::StabilizerBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::stabilizer::StabilizerBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::stabilizer::StabilizerBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::stabilizer::StabilizerBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::statevector
pub struct prism_q::backend::statevector::StatevectorBackend
impl prism_q::backend::statevector::StatevectorBackend
pub fn prism_q::backend::statevector::StatevectorBackend::init_from_state(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::new(u64) -> Self
pub fn prism_q::backend::statevector::StatevectorBackend::state_vector(&self) -> &[num_complex::Complex64]
pub fn prism_q::backend::statevector::StatevectorBackend::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub fn prism_q::backend::statevector::StatevectorBackend::with_gpu_auto(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
impl prism_q::backend::Backend for prism_q::backend::statevector::StatevectorBackend
pub fn prism_q::backend::statevector::StatevectorBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::statevector::StatevectorBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::statevector::StatevectorBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::statevector::StatevectorBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::statevector::StatevectorBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::statevector::StatevectorBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::statevector::StatevectorBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::statevector::StatevectorBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::name(&self) -> &'static str
pub fn prism_q::backend::statevector::StatevectorBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::statevector::StatevectorBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::statevector::StatevectorBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::statevector::StatevectorBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::statevector::StatevectorBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::statevector::StatevectorBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::backend::tensornetwork
pub struct prism_q::backend::tensornetwork::TensorNetworkBackend
impl prism_q::backend::tensornetwork::TensorNetworkBackend
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::new(u64) -> Self
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::truncation_discarded(&self) -> f64
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::with_tolerance(u64, f64) -> Self
impl prism_q::backend::Backend for prism_q::backend::tensornetwork::TensorNetworkBackend
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::name(&self) -> &'static str
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::backend::BasisSamples
impl prism_q::backend::BasisSamples
pub fn prism_q::backend::BasisSamples::bit(&self, usize, usize) -> bool
pub fn prism_q::backend::BasisSamples::num_shots(&self) -> usize
pub trait prism_q::backend::Backend: prism_q::backend::sealed::Sealed
pub fn prism_q::backend::Backend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::Backend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::Backend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::Backend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::Backend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::Backend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::Backend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::Backend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::Backend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::Backend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::Backend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::Backend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::Backend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::Backend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::Backend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::Backend::name(&self) -> &'static str
pub fn prism_q::backend::Backend::num_qubits(&self) -> usize
pub fn prism_q::backend::Backend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::Backend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::Backend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::Backend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::Backend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::Backend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::Backend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::Backend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::Backend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::Backend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::Backend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::Backend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::Backend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::Backend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::Backend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::Backend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::Backend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::Backend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::Backend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::Backend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::density_matrix::DensityMatrixBackend
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::name(&self) -> &'static str
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::distributed_statevector::DistributedStatevectorBackend
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::name(&self) -> &'static str
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::factored::FactoredBackend
pub fn prism_q::backend::factored::FactoredBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::factored::FactoredBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::factored::FactoredBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::factored::FactoredBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::factored::FactoredBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::factored::FactoredBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored::FactoredBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::factored::FactoredBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::name(&self) -> &'static str
pub fn prism_q::backend::factored::FactoredBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::factored::FactoredBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::factored::FactoredBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::factored::FactoredBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::factored::FactoredBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::factored::FactoredBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::factored_stabilizer::FactoredStabilizerBackend
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::name(&self) -> &'static str
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::mps::MpsBackend
pub fn prism_q::backend::mps::MpsBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::mps::MpsBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::mps::MpsBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::mps::MpsBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::mps::MpsBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::mps::MpsBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::mps::MpsBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::mps::MpsBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::name(&self) -> &'static str
pub fn prism_q::backend::mps::MpsBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::mps::MpsBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::mps::MpsBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::mps::MpsBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::mps::MpsBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::mps::MpsBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::product::ProductStateBackend
pub fn prism_q::backend::product::ProductStateBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::product::ProductStateBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::product::ProductStateBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::product::ProductStateBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::product::ProductStateBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::product::ProductStateBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::product::ProductStateBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::product::ProductStateBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::name(&self) -> &'static str
pub fn prism_q::backend::product::ProductStateBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::product::ProductStateBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::product::ProductStateBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::product::ProductStateBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::product::ProductStateBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::product::ProductStateBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::sparse::SparseBackend
pub fn prism_q::backend::sparse::SparseBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::sparse::SparseBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::sparse::SparseBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::sparse::SparseBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::sparse::SparseBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::sparse::SparseBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::sparse::SparseBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::sparse::SparseBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::name(&self) -> &'static str
pub fn prism_q::backend::sparse::SparseBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::sparse::SparseBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::sparse::SparseBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::sparse::SparseBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::sparse::SparseBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::sparse::SparseBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::stabilizer::StabilizerBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::stabilizer::StabilizerBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::stabilizer::StabilizerBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::stabilizer::StabilizerBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::stabilizer::StabilizerBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::stabilizer::StabilizerBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::stabilizer::StabilizerBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::name(&self) -> &'static str
pub fn prism_q::backend::stabilizer::StabilizerBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::stabilizer::StabilizerBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::stabilizer::StabilizerBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::stabilizer::StabilizerBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::statevector::StatevectorBackend
pub fn prism_q::backend::statevector::StatevectorBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::statevector::StatevectorBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::statevector::StatevectorBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::statevector::StatevectorBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::statevector::StatevectorBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::statevector::StatevectorBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::statevector::StatevectorBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::statevector::StatevectorBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::name(&self) -> &'static str
pub fn prism_q::backend::statevector::StatevectorBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::statevector::StatevectorBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::statevector::StatevectorBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::statevector::StatevectorBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::statevector::StatevectorBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::statevector::StatevectorBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_two_qubit_kraus(&self) -> bool
impl prism_q::backend::Backend for prism_q::backend::tensornetwork::TensorNetworkBackend
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::name(&self) -> &'static str
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_two_qubit_kraus(&self) -> bool
pub mod prism_q::circuit
pub use prism_q::circuit::SmallVec
pub use prism_q::circuit::smallvec
pub mod prism_q::circuit::braket
#[non_exhaustive] pub enum prism_q::circuit::braket::ObservableFactor
pub prism_q::circuit::braket::ObservableFactor::Hadamard
pub prism_q::circuit::braket::ObservableFactor::Hadamard::targets: prism_q::circuit::braket::Targets
pub prism_q::circuit::braket::ObservableFactor::Hermitian
pub prism_q::circuit::braket::ObservableFactor::Hermitian::matrix: alloc::vec::Vec<alloc::vec::Vec<num_complex::Complex64>>
pub prism_q::circuit::braket::ObservableFactor::Hermitian::targets: prism_q::circuit::braket::Targets
pub prism_q::circuit::braket::ObservableFactor::Identity
pub prism_q::circuit::braket::ObservableFactor::Identity::targets: prism_q::circuit::braket::Targets
pub prism_q::circuit::braket::ObservableFactor::Pauli
pub prism_q::circuit::braket::ObservableFactor::Pauli::axis: prism_q::sim::unified_pauli::PauliAxis
pub prism_q::circuit::braket::ObservableFactor::Pauli::targets: prism_q::circuit::braket::Targets
impl prism_q::circuit::braket::ObservableFactor
pub fn prism_q::circuit::braket::ObservableFactor::targets(&self) -> &prism_q::circuit::braket::Targets
pub fn prism_q::circuit::braket::ObservableFactor::width(&self) -> usize
#[non_exhaustive] pub enum prism_q::circuit::braket::ResultSpec
pub prism_q::circuit::braket::ResultSpec::Amplitude(alloc::vec::Vec<alloc::string::String>)
pub prism_q::circuit::braket::ResultSpec::DensityMatrix(prism_q::circuit::braket::Targets)
pub prism_q::circuit::braket::ResultSpec::Expectation(prism_q::circuit::braket::Observable)
pub prism_q::circuit::braket::ResultSpec::Probability(prism_q::circuit::braket::Targets)
pub prism_q::circuit::braket::ResultSpec::Sample(prism_q::circuit::braket::Observable)
pub prism_q::circuit::braket::ResultSpec::StateVector
pub prism_q::circuit::braket::ResultSpec::Variance(prism_q::circuit::braket::Observable)
impl prism_q::circuit::braket::ResultSpec
pub fn prism_q::circuit::braket::ResultSpec::name(&self) -> &'static str
pub fn prism_q::circuit::braket::ResultSpec::requires_exact(&self) -> bool
#[non_exhaustive] pub enum prism_q::circuit::braket::Targets
pub prism_q::circuit::braket::Targets::All
pub prism_q::circuit::braket::Targets::These(alloc::vec::Vec<usize>)
pub struct prism_q::circuit::braket::MeasuredFactor
pub prism_q::circuit::braket::MeasuredFactor::basis: prism_q::circuit::braket::ObservableFactor
pub prism_q::circuit::braket::MeasuredFactor::eigenvalues: alloc::vec::Vec<f64>
pub prism_q::circuit::braket::MeasuredFactor::rotation: core::option::Option<alloc::vec::Vec<prism_q::circuit::Instruction>>
pub prism_q::circuit::braket::MeasuredFactor::targets: alloc::vec::Vec<usize>
pub struct prism_q::circuit::braket::Observable
pub prism_q::circuit::braket::Observable::factors: alloc::vec::Vec<prism_q::circuit::braket::ObservableFactor>
impl prism_q::circuit::braket::Observable
pub fn prism_q::circuit::braket::Observable::diagonalize(&self, usize) -> prism_q::error::Result<alloc::vec::Vec<alloc::vec::Vec<prism_q::circuit::braket::MeasuredFactor>>>
pub fn prism_q::circuit::braket::Observable::lower(&self, usize) -> prism_q::error::Result<alloc::vec::Vec<(alloc::vec::Vec<usize>, prism_q::PauliObservable)>>
pub mod prism_q::circuit::builder
pub struct prism_q::circuit::builder::CircuitBuilder
impl prism_q::circuit::builder::CircuitBuilder
pub fn prism_q::circuit::builder::CircuitBuilder::barrier(&mut self, &[usize]) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::build(&mut self) -> prism_q::circuit::Circuit
pub fn prism_q::circuit::builder::CircuitBuilder::build_parametric(&mut self) -> (prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters)
pub fn prism_q::circuit::builder::CircuitBuilder::circuit(&self) -> &prism_q::circuit::Circuit
pub fn prism_q::circuit::builder::CircuitBuilder::conditional(&mut self, prism_q::circuit::ClassicalCondition, prism_q::gates::Gate, &[usize]) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::cphase(&mut self, f64, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::cu(&mut self, [[num_complex::Complex64; 2]; 2], usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::cx(&mut self, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::cz(&mut self, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::gate(&mut self, prism_q::gates::Gate, &[usize]) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::guarded(&mut self, prism_q::circuit::ClassicalCondition, impl core::ops::function::FnOnce(&mut prism_q::circuit::builder::CircuitBuilder)) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::h(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::id(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::mcu(&mut self, [[num_complex::Complex64; 2]; 2], &[usize], usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::measure(&mut self, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::measure_all(&mut self) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::measure_in_basis(&mut self, usize, prism_q::sim::unified_pauli::PauliAxis, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::measure_pauli_product(&mut self, &[prism_q::sim::unified_pauli::PauliTerm], usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::new(usize) -> Self
pub fn prism_q::circuit::builder::CircuitBuilder::new_with_classical(usize, usize) -> Self
pub fn prism_q::circuit::builder::CircuitBuilder::p(&mut self, f64, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::param(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::parameters(&self) -> &prism_q::circuit::parameter::Parameters
pub fn prism_q::circuit::builder::CircuitBuilder::pauli_rotation(&mut self, f64, &[prism_q::sim::unified_pauli::PauliTerm]) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::reset(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::run(&self, u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::circuit::builder::CircuitBuilder::run_shots(&self, usize, u64) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::circuit::builder::CircuitBuilder::run_with(&self, prism_q::BackendKind, u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::circuit::builder::CircuitBuilder::rx(&mut self, f64, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::ry(&mut self, f64, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::rz(&mut self, f64, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::rzz(&mut self, f64, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::s(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::sdg(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::swap(&mut self, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::sx(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::sxdg(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::t(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::tdg(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::x(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::y(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::z(&mut self, usize) -> &mut Self
pub mod prism_q::circuit::openqasm
#[non_exhaustive] pub enum prism_q::circuit::openqasm::Dialect
pub prism_q::circuit::openqasm::Dialect::Braket
pub prism_q::circuit::openqasm::Dialect::Native
pub struct prism_q::circuit::openqasm::BraketProgram
pub prism_q::circuit::openqasm::BraketProgram::circuit: prism_q::circuit::Circuit
pub prism_q::circuit::openqasm::BraketProgram::noise: core::option::Option<prism_q::sim::noise::NoiseModel>
pub prism_q::circuit::openqasm::BraketProgram::parameters: prism_q::circuit::parameter::Parameters
pub prism_q::circuit::openqasm::BraketProgram::results: alloc::vec::Vec<prism_q::circuit::braket::ResultSpec>
pub fn prism_q::circuit::openqasm::parse(&str) -> prism_q::error::Result<prism_q::circuit::Circuit>
pub fn prism_q::circuit::openqasm::parse_braket(&str) -> prism_q::error::Result<prism_q::circuit::openqasm::BraketProgram>
pub fn prism_q::circuit::openqasm::parse_parametric(&str) -> prism_q::error::Result<(prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters)>
pub fn prism_q::circuit::openqasm::parse_parametric_with(&str, prism_q::circuit::openqasm::Dialect) -> prism_q::error::Result<(prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters)>
pub fn prism_q::circuit::openqasm::parse_with(&str, prism_q::circuit::openqasm::Dialect) -> prism_q::error::Result<prism_q::circuit::Circuit>
pub mod prism_q::circuit::parameter
pub struct prism_q::circuit::parameter::ParamLink
pub prism_q::circuit::parameter::ParamLink::instruction: usize
pub prism_q::circuit::parameter::ParamLink::slot: usize
pub struct prism_q::circuit::parameter::Parameters
impl prism_q::circuit::parameter::Parameters
pub fn prism_q::circuit::parameter::Parameters::all_rotations(&prism_q::circuit::Circuit) -> Self
pub fn prism_q::circuit::parameter::Parameters::bind(&self, &prism_q::circuit::Circuit, &[f64]) -> prism_q::error::Result<prism_q::circuit::Circuit>
pub fn prism_q::circuit::parameter::Parameters::bind_into(&self, &prism_q::circuit::Circuit, &[f64], &mut prism_q::circuit::Circuit) -> prism_q::error::Result<()>
pub fn prism_q::circuit::parameter::Parameters::from_links(alloc::vec::Vec<prism_q::circuit::parameter::ParamLink>, usize) -> Self
pub fn prism_q::circuit::parameter::Parameters::is_empty(&self) -> bool
pub fn prism_q::circuit::parameter::Parameters::link(&mut self, usize, usize)
pub fn prism_q::circuit::parameter::Parameters::links(&self) -> &[prism_q::circuit::parameter::ParamLink]
pub fn prism_q::circuit::parameter::Parameters::name_of(&self, usize) -> core::option::Option<&str>
pub fn prism_q::circuit::parameter::Parameters::new(usize) -> Self
pub fn prism_q::circuit::parameter::Parameters::num_slots(&self) -> usize
pub fn prism_q::circuit::parameter::Parameters::pinned_to(self, &prism_q::circuit::Circuit) -> Self
pub fn prism_q::circuit::parameter::Parameters::slot_of(&self, &str) -> core::option::Option<usize>
pub fn prism_q::circuit::parameter::Parameters::unread_slots(&self) -> alloc::vec::Vec<usize>
pub fn prism_q::circuit::parameter::Parameters::validate(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<()>
pub fn prism_q::circuit::parameter::Parameters::values(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::circuit::parameter::Parameters::with_names<I, S>(self, I) -> Self where I: core::iter::traits::collect::IntoIterator<Item = S>, S: core::convert::Into<alloc::string::String>
pub mod prism_q::circuit::prepared
pub struct prism_q::circuit::prepared::PreparedCircuit
impl prism_q::circuit::prepared::PreparedCircuit
pub fn prism_q::circuit::prepared::PreparedCircuit::bind(&mut self, &[f64]) -> prism_q::error::Result<&prism_q::circuit::Circuit>
pub fn prism_q::circuit::prepared::PreparedCircuit::bind_fused(&mut self, &[f64]) -> prism_q::error::Result<&prism_q::circuit::Circuit>
pub fn prism_q::circuit::prepared::PreparedCircuit::expectation_values(&mut self, &[f64], &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::circuit::prepared::PreparedCircuit::expectation_values_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], u64) -> prism_q::error::Result<alloc::vec::Vec<alloc::vec::Vec<f64>>>
pub fn prism_q::circuit::prepared::PreparedCircuit::new(prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters) -> prism_q::error::Result<Self>
pub fn prism_q::circuit::prepared::PreparedCircuit::observable_expectation(&mut self, &[f64], &prism_q::PauliObservable, u64) -> prism_q::error::Result<prism_q::ObservableExpectation>
pub fn prism_q::circuit::prepared::PreparedCircuit::observable_expectation_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], &prism_q::PauliObservable, u64) -> prism_q::error::Result<alloc::vec::Vec<prism_q::ObservableExpectation>>
pub fn prism_q::circuit::prepared::PreparedCircuit::parameters(&self) -> &prism_q::circuit::parameter::Parameters
pub fn prism_q::circuit::prepared::PreparedCircuit::reuses_fusion_plan(&self) -> bool
pub fn prism_q::circuit::prepared::PreparedCircuit::run(&mut self, &[f64], u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::circuit::prepared::PreparedCircuit::run_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], u64) -> prism_q::error::Result<alloc::vec::Vec<prism_q::sim::RunOutcome>>
pub fn prism_q::circuit::prepared::PreparedCircuit::template(&self) -> &prism_q::circuit::Circuit
pub fn prism_q::circuit::prepared::PreparedCircuit::with_backend(prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters, prism_q::BackendKind) -> prism_q::error::Result<Self>
impl core::clone::Clone for prism_q::circuit::prepared::PreparedCircuit
pub fn prism_q::circuit::prepared::PreparedCircuit::clone(&self) -> Self
pub mod prism_q::circuit::qasm_export
pub fn prism_q::circuit::qasm_export::to_qasm3(&prism_q::circuit::Circuit) -> prism_q::error::Result<alloc::string::String>
#[non_exhaustive] pub enum prism_q::circuit::ClassicalCondition
pub prism_q::circuit::ClassicalCondition::BitIsOne(usize)
pub prism_q::circuit::ClassicalCondition::BitIsZero(usize)
pub prism_q::circuit::ClassicalCondition::Parity
pub prism_q::circuit::ClassicalCondition::Parity::bits: alloc::boxed::Box<[usize]>
pub prism_q::circuit::ClassicalCondition::Parity::expected: bool
pub prism_q::circuit::ClassicalCondition::RegisterEquals
pub prism_q::circuit::ClassicalCondition::RegisterEquals::offset: usize
pub prism_q::circuit::ClassicalCondition::RegisterEquals::size: usize
pub prism_q::circuit::ClassicalCondition::RegisterEquals::value: u64
pub prism_q::circuit::ClassicalCondition::RegisterNotEquals
pub prism_q::circuit::ClassicalCondition::RegisterNotEquals::offset: usize
pub prism_q::circuit::ClassicalCondition::RegisterNotEquals::size: usize
pub prism_q::circuit::ClassicalCondition::RegisterNotEquals::value: u64
impl prism_q::circuit::ClassicalCondition
pub fn prism_q::circuit::ClassicalCondition::evaluate(&self, &[bool]) -> bool
pub fn prism_q::circuit::ClassicalCondition::negate(&self) -> prism_q::circuit::ClassicalCondition
pub enum prism_q::circuit::Instruction
pub prism_q::circuit::Instruction::Barrier
pub prism_q::circuit::Instruction::Barrier::qubits: smallvec::SmallVec<[usize; 4]>
pub prism_q::circuit::Instruction::Conditional
pub prism_q::circuit::Instruction::Conditional::condition: prism_q::circuit::ClassicalCondition
pub prism_q::circuit::Instruction::Conditional::gate: prism_q::gates::Gate
pub prism_q::circuit::Instruction::Conditional::targets: smallvec::SmallVec<[usize; 4]>
pub prism_q::circuit::Instruction::Gate
pub prism_q::circuit::Instruction::Gate::gate: prism_q::gates::Gate
pub prism_q::circuit::Instruction::Gate::targets: smallvec::SmallVec<[usize; 4]>
pub prism_q::circuit::Instruction::Measure
pub prism_q::circuit::Instruction::Measure::classical_bit: usize
pub prism_q::circuit::Instruction::Measure::qubit: usize
pub prism_q::circuit::Instruction::Region(alloc::boxed::Box<prism_q::circuit::GuardedRegion>)
pub prism_q::circuit::Instruction::Reset
pub prism_q::circuit::Instruction::Reset::qubit: usize
pub prism_q::circuit::Instruction::Save
pub prism_q::circuit::Instruction::Save::label: alloc::string::String
pub prism_q::circuit::Instruction::Save::qubits: smallvec::SmallVec<[usize; 4]>
pub prism_q::circuit::Instruction::Save::spec: prism_q::circuit::SaveSpec
pub enum prism_q::circuit::QftTextbookStep
pub prism_q::circuit::QftTextbookStep::CPhase
pub prism_q::circuit::QftTextbookStep::CPhase::control: usize
pub prism_q::circuit::QftTextbookStep::CPhase::target: usize
pub prism_q::circuit::QftTextbookStep::CPhase::theta: f64
pub prism_q::circuit::QftTextbookStep::Hadamard(usize)
pub prism_q::circuit::QftTextbookStep::Swap(usize, usize)
#[non_exhaustive] pub enum prism_q::circuit::SaveSpec
pub prism_q::circuit::SaveSpec::DensityMatrix
pub prism_q::circuit::SaveSpec::Probabilities
pub prism_q::circuit::SaveSpec::StateVector
#[non_exhaustive] pub enum prism_q::circuit::SavedValue
pub prism_q::circuit::SavedValue::DensityMatrix(alloc::vec::Vec<num_complex::Complex64>)
pub prism_q::circuit::SavedValue::Probabilities(alloc::vec::Vec<f64>)
pub prism_q::circuit::SavedValue::StateVector(alloc::vec::Vec<num_complex::Complex64>)
pub struct prism_q::circuit::Circuit
pub prism_q::circuit::Circuit::instructions: alloc::vec::Vec<prism_q::circuit::Instruction>
pub prism_q::circuit::Circuit::num_classical_bits: usize
pub prism_q::circuit::Circuit::num_qubits: usize
impl prism_q::circuit::Circuit
pub fn prism_q::circuit::Circuit::add_barrier(&mut self, &[usize])
pub fn prism_q::circuit::Circuit::add_gate(&mut self, prism_q::gates::Gate, &[usize])
pub fn prism_q::circuit::Circuit::add_measure(&mut self, usize, usize)
pub fn prism_q::circuit::Circuit::add_pauli_rotation(&mut self, f64, &[prism_q::sim::unified_pauli::PauliTerm])
pub fn prism_q::circuit::Circuit::add_reset(&mut self, usize)
pub fn prism_q::circuit::Circuit::add_save(&mut self, prism_q::circuit::SaveSpec, impl core::convert::Into<alloc::string::String>)
pub fn prism_q::circuit::Circuit::add_unitary(&mut self, alloc::vec::Vec<num_complex::Complex64>, &[usize]) -> prism_q::error::Result<()>
pub fn prism_q::circuit::Circuit::depth(&self) -> usize
pub fn prism_q::circuit::Circuit::fold_static_guards(&self) -> alloc::borrow::Cow<'_, prism_q::circuit::Circuit>
pub fn prism_q::circuit::Circuit::gate_count(&self) -> usize
pub fn prism_q::circuit::Circuit::has_entangling_gates(&self) -> bool
pub fn prism_q::circuit::Circuit::has_resets(&self) -> bool
pub fn prism_q::circuit::Circuit::has_t_gates(&self) -> bool
pub fn prism_q::circuit::Circuit::has_terminal_measurements_only(&self) -> bool
pub fn prism_q::circuit::Circuit::independent_subsystems(&self) -> alloc::vec::Vec<alloc::vec::Vec<usize>>
pub fn prism_q::circuit::Circuit::is_clifford_only(&self) -> bool
pub fn prism_q::circuit::Circuit::is_clifford_plus_t(&self) -> bool
pub fn prism_q::circuit::Circuit::is_sparse_friendly(&self) -> bool
pub fn prism_q::circuit::Circuit::measure_all(&mut self)
pub fn prism_q::circuit::Circuit::measurement_map(&self) -> alloc::vec::Vec<(usize, usize)>
pub fn prism_q::circuit::Circuit::new(usize, usize) -> Self
pub fn prism_q::circuit::Circuit::save_count(&self) -> usize
pub fn prism_q::circuit::Circuit::t_count(&self) -> usize
pub fn prism_q::circuit::Circuit::without_measurements(&self) -> prism_q::circuit::Circuit
impl prism_q::circuit::Circuit
pub fn prism_q::circuit::Circuit::draw(&self, &prism_q::TextOptions) -> alloc::string::String
pub fn prism_q::circuit::Circuit::heatmap(&self, &prism_q::TextOptions) -> alloc::string::String
pub fn prism_q::circuit::Circuit::summary(&self) -> alloc::string::String
impl prism_q::circuit::Circuit
pub fn prism_q::circuit::Circuit::to_svg(&self, &prism_q::SvgOptions) -> alloc::string::String
pub fn prism_q::circuit::Circuit::to_svg_heatmap(&self, &prism_q::SvgOptions) -> alloc::string::String
impl core::fmt::Display for prism_q::circuit::Circuit
pub fn prism_q::circuit::Circuit::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub struct prism_q::circuit::GuardedRegion
impl prism_q::circuit::GuardedRegion
pub fn prism_q::circuit::GuardedRegion::body(&self) -> &[prism_q::circuit::Instruction]
pub fn prism_q::circuit::GuardedRegion::condition(&self) -> &prism_q::circuit::ClassicalCondition
pub fn prism_q::circuit::GuardedRegion::depth(&self) -> usize
pub fn prism_q::circuit::GuardedRegion::new(prism_q::circuit::ClassicalCondition, alloc::vec::Vec<prism_q::circuit::Instruction>) -> Self
pub fn prism_q::circuit::GuardedRegion::qubits(&self) -> &[usize]
pub struct prism_q::circuit::ParamLink
pub prism_q::circuit::ParamLink::instruction: usize
pub prism_q::circuit::ParamLink::slot: usize
pub struct prism_q::circuit::Parameters
impl prism_q::circuit::parameter::Parameters
pub fn prism_q::circuit::parameter::Parameters::all_rotations(&prism_q::circuit::Circuit) -> Self
pub fn prism_q::circuit::parameter::Parameters::bind(&self, &prism_q::circuit::Circuit, &[f64]) -> prism_q::error::Result<prism_q::circuit::Circuit>
pub fn prism_q::circuit::parameter::Parameters::bind_into(&self, &prism_q::circuit::Circuit, &[f64], &mut prism_q::circuit::Circuit) -> prism_q::error::Result<()>
pub fn prism_q::circuit::parameter::Parameters::from_links(alloc::vec::Vec<prism_q::circuit::parameter::ParamLink>, usize) -> Self
pub fn prism_q::circuit::parameter::Parameters::is_empty(&self) -> bool
pub fn prism_q::circuit::parameter::Parameters::link(&mut self, usize, usize)
pub fn prism_q::circuit::parameter::Parameters::links(&self) -> &[prism_q::circuit::parameter::ParamLink]
pub fn prism_q::circuit::parameter::Parameters::name_of(&self, usize) -> core::option::Option<&str>
pub fn prism_q::circuit::parameter::Parameters::new(usize) -> Self
pub fn prism_q::circuit::parameter::Parameters::num_slots(&self) -> usize
pub fn prism_q::circuit::parameter::Parameters::pinned_to(self, &prism_q::circuit::Circuit) -> Self
pub fn prism_q::circuit::parameter::Parameters::slot_of(&self, &str) -> core::option::Option<usize>
pub fn prism_q::circuit::parameter::Parameters::unread_slots(&self) -> alloc::vec::Vec<usize>
pub fn prism_q::circuit::parameter::Parameters::validate(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<()>
pub fn prism_q::circuit::parameter::Parameters::values(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::circuit::parameter::Parameters::with_names<I, S>(self, I) -> Self where I: core::iter::traits::collect::IntoIterator<Item = S>, S: core::convert::Into<alloc::string::String>
pub struct prism_q::circuit::PreparedCircuit
impl prism_q::circuit::prepared::PreparedCircuit
pub fn prism_q::circuit::prepared::PreparedCircuit::bind(&mut self, &[f64]) -> prism_q::error::Result<&prism_q::circuit::Circuit>
pub fn prism_q::circuit::prepared::PreparedCircuit::bind_fused(&mut self, &[f64]) -> prism_q::error::Result<&prism_q::circuit::Circuit>
pub fn prism_q::circuit::prepared::PreparedCircuit::expectation_values(&mut self, &[f64], &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::circuit::prepared::PreparedCircuit::expectation_values_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], u64) -> prism_q::error::Result<alloc::vec::Vec<alloc::vec::Vec<f64>>>
pub fn prism_q::circuit::prepared::PreparedCircuit::new(prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters) -> prism_q::error::Result<Self>
pub fn prism_q::circuit::prepared::PreparedCircuit::observable_expectation(&mut self, &[f64], &prism_q::PauliObservable, u64) -> prism_q::error::Result<prism_q::ObservableExpectation>
pub fn prism_q::circuit::prepared::PreparedCircuit::observable_expectation_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], &prism_q::PauliObservable, u64) -> prism_q::error::Result<alloc::vec::Vec<prism_q::ObservableExpectation>>
pub fn prism_q::circuit::prepared::PreparedCircuit::parameters(&self) -> &prism_q::circuit::parameter::Parameters
pub fn prism_q::circuit::prepared::PreparedCircuit::reuses_fusion_plan(&self) -> bool
pub fn prism_q::circuit::prepared::PreparedCircuit::run(&mut self, &[f64], u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::circuit::prepared::PreparedCircuit::run_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], u64) -> prism_q::error::Result<alloc::vec::Vec<prism_q::sim::RunOutcome>>
pub fn prism_q::circuit::prepared::PreparedCircuit::template(&self) -> &prism_q::circuit::Circuit
pub fn prism_q::circuit::prepared::PreparedCircuit::with_backend(prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters, prism_q::BackendKind) -> prism_q::error::Result<Self>
impl core::clone::Clone for prism_q::circuit::prepared::PreparedCircuit
pub fn prism_q::circuit::prepared::PreparedCircuit::clone(&self) -> Self
pub struct prism_q::circuit::SaveRecord
pub prism_q::circuit::SaveRecord::label: alloc::string::String
pub prism_q::circuit::SaveRecord::value: prism_q::circuit::SavedValue
pub struct prism_q::circuit::SvgOptions
pub prism_q::circuit::SvgOptions::animate: bool
pub prism_q::circuit::SvgOptions::auto_theme: bool
pub prism_q::circuit::SvgOptions::compact: bool
pub prism_q::circuit::SvgOptions::control_radius: f64
pub prism_q::circuit::SvgOptions::dark_mode: bool
pub prism_q::circuit::SvgOptions::ellipsis_mode: core::option::Option<(usize, usize)>
pub prism_q::circuit::SvgOptions::font_size: f64
pub prism_q::circuit::SvgOptions::gate_height: f64
pub prism_q::circuit::SvgOptions::gate_min_width: f64
pub prism_q::circuit::SvgOptions::max_moments: core::option::Option<usize>
pub prism_q::circuit::SvgOptions::max_qubits: core::option::Option<usize>
pub prism_q::circuit::SvgOptions::moment_width: f64
pub prism_q::circuit::SvgOptions::padding_bottom: f64
pub prism_q::circuit::SvgOptions::padding_left: f64
pub prism_q::circuit::SvgOptions::padding_right: f64
pub prism_q::circuit::SvgOptions::padding_top: f64
pub prism_q::circuit::SvgOptions::show_barriers: bool
pub prism_q::circuit::SvgOptions::show_idle_wires: bool
pub prism_q::circuit::SvgOptions::show_legend: bool
pub prism_q::circuit::SvgOptions::show_stats_header: bool
pub prism_q::circuit::SvgOptions::show_topology: bool
pub prism_q::circuit::SvgOptions::wire_spacing: f64
impl core::default::Default for prism_q::SvgOptions
pub fn prism_q::SvgOptions::default() -> Self
pub struct prism_q::circuit::TextOptions
pub prism_q::circuit::TextOptions::fold_width: usize
pub prism_q::circuit::TextOptions::max_moments: core::option::Option<usize>
pub prism_q::circuit::TextOptions::max_qubits: core::option::Option<usize>
pub prism_q::circuit::TextOptions::show_barriers: bool
pub prism_q::circuit::TextOptions::show_idle_wires: bool
impl core::default::Default for prism_q::TextOptions
pub fn prism_q::TextOptions::default() -> Self
pub const prism_q::circuit::MAX_REGION_DEPTH: usize
pub fn prism_q::circuit::expand_pauli_rotations(&prism_q::circuit::Circuit) -> alloc::borrow::Cow<'_, prism_q::circuit::Circuit>
pub fn prism_q::circuit::expand_qft_blocks(&prism_q::circuit::Circuit) -> alloc::borrow::Cow<'_, prism_q::circuit::Circuit>
pub fn prism_q::circuit::guarded(prism_q::circuit::ClassicalCondition, alloc::vec::Vec<prism_q::circuit::Instruction>) -> core::option::Option<prism_q::circuit::Instruction>
pub fn prism_q::circuit::qft_textbook_steps(usize, usize) -> impl core::iter::traits::iterator::Iterator<Item = prism_q::circuit::QftTextbookStep>
pub mod prism_q::circuits
pub fn prism_q::circuits::brickwork_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::clifford_heavy_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::clifford_random_pairs(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::clifford_t_circuit(usize, usize, f64, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::cz_chain_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::diagonal_mixed_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::disjoint_block_layers_circuit(usize, usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::ghz_circuit(usize) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::hardware_efficient_ansatz(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::independent_bell_pairs(usize) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::independent_random_blocks(usize, usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::jordan_wigner_hamiltonian(usize, usize, u64) -> alloc::vec::Vec<(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)>
pub fn prism_q::circuits::local_clifford_blocks(usize, usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::matched_brickwork_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::measure_split_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::partially_independent_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::phase_estimation_circuit(usize) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::qaoa_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::qft_circuit(usize) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::quantum_volume_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::random_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::single_qubit_rotation_circuit(usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::sparse_walk_circuit(usize, usize, usize, u64) -> prism_q::circuit::Circuit
pub fn prism_q::circuits::w_state_circuit(usize) -> prism_q::circuit::Circuit
pub mod prism_q::distributed
pub mod prism_q::distributed::comm
pub struct prism_q::distributed::comm::SerialComm
impl prism_q::distributed::comm::RankComm for prism_q::distributed::comm::SerialComm
pub fn prism_q::distributed::comm::SerialComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::distributed::comm::SerialComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::distributed::comm::SerialComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::distributed::comm::SerialComm::barrier(&self)
pub fn prism_q::distributed::comm::SerialComm::rank(&self) -> usize
pub fn prism_q::distributed::comm::SerialComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::distributed::comm::SerialComm::size(&self) -> usize
pub trait prism_q::distributed::comm::RankComm: core::fmt::Debug + core::marker::Send + core::marker::Sync
pub fn prism_q::distributed::comm::RankComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::distributed::comm::RankComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::distributed::comm::RankComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::RankComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::RankComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::distributed::comm::RankComm::barrier(&self)
pub fn prism_q::distributed::comm::RankComm::rank(&self) -> usize
pub fn prism_q::distributed::comm::RankComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::distributed::comm::RankComm::size(&self) -> usize
impl prism_q::distributed::comm::RankComm for prism_q::distributed::comm::SerialComm
pub fn prism_q::distributed::comm::SerialComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::distributed::comm::SerialComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::distributed::comm::SerialComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::distributed::comm::SerialComm::barrier(&self)
pub fn prism_q::distributed::comm::SerialComm::rank(&self) -> usize
pub fn prism_q::distributed::comm::SerialComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::distributed::comm::SerialComm::size(&self) -> usize
pub struct prism_q::distributed::DistributedContext
impl prism_q::distributed::DistributedContext
pub fn prism_q::distributed::DistributedContext::from_comm(alloc::sync::Arc<dyn prism_q::distributed::comm::RankComm>) -> alloc::sync::Arc<Self>
pub fn prism_q::distributed::DistributedContext::rank(&self) -> usize
pub fn prism_q::distributed::DistributedContext::serial() -> alloc::sync::Arc<Self>
pub fn prism_q::distributed::DistributedContext::size(&self) -> usize
impl core::fmt::Debug for prism_q::distributed::DistributedContext
pub fn prism_q::distributed::DistributedContext::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub struct prism_q::distributed::SerialComm
impl prism_q::distributed::comm::RankComm for prism_q::distributed::comm::SerialComm
pub fn prism_q::distributed::comm::SerialComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::distributed::comm::SerialComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::distributed::comm::SerialComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::distributed::comm::SerialComm::barrier(&self)
pub fn prism_q::distributed::comm::SerialComm::rank(&self) -> usize
pub fn prism_q::distributed::comm::SerialComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::distributed::comm::SerialComm::size(&self) -> usize
pub const prism_q::distributed::EXCHANGE_CHUNK_DEFAULT: usize
pub const prism_q::distributed::MIN_LOCAL_QUBITS_DEFAULT: usize
pub trait prism_q::distributed::RankComm: core::fmt::Debug + core::marker::Send + core::marker::Sync
pub fn prism_q::distributed::RankComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::distributed::RankComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::distributed::RankComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::RankComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::RankComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::distributed::RankComm::barrier(&self)
pub fn prism_q::distributed::RankComm::rank(&self) -> usize
pub fn prism_q::distributed::RankComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::distributed::RankComm::size(&self) -> usize
impl prism_q::distributed::comm::RankComm for prism_q::distributed::comm::SerialComm
pub fn prism_q::distributed::comm::SerialComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::distributed::comm::SerialComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::distributed::comm::SerialComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::distributed::comm::SerialComm::barrier(&self)
pub fn prism_q::distributed::comm::SerialComm::rank(&self) -> usize
pub fn prism_q::distributed::comm::SerialComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::distributed::comm::SerialComm::size(&self) -> usize
pub fn prism_q::distributed::exchange_chunk() -> usize
pub fn prism_q::distributed::min_local_qubits() -> usize
pub fn prism_q::distributed::relabel_enabled() -> bool
pub mod prism_q::error
#[non_exhaustive] pub enum prism_q::error::PrismError
pub prism_q::error::PrismError::BackendUnsupported
pub prism_q::error::PrismError::BackendUnsupported::backend: alloc::string::String
pub prism_q::error::PrismError::BackendUnsupported::operation: alloc::string::String
pub prism_q::error::PrismError::ExportUnsupported
pub prism_q::error::PrismError::ExportUnsupported::index: usize
pub prism_q::error::PrismError::ExportUnsupported::reason: alloc::string::String
pub prism_q::error::PrismError::GateArity
pub prism_q::error::PrismError::GateArity::expected: usize
pub prism_q::error::PrismError::GateArity::gate: alloc::string::String
pub prism_q::error::PrismError::GateArity::got: usize
pub prism_q::error::PrismError::IncompatibleBackend
pub prism_q::error::PrismError::IncompatibleBackend::backend: alloc::string::String
pub prism_q::error::PrismError::IncompatibleBackend::reason: alloc::string::String
pub prism_q::error::PrismError::InvalidClassicalBit
pub prism_q::error::PrismError::InvalidClassicalBit::index: usize
pub prism_q::error::PrismError::InvalidClassicalBit::register_size: usize
pub prism_q::error::PrismError::InvalidParameter
pub prism_q::error::PrismError::InvalidParameter::message: alloc::string::String
pub prism_q::error::PrismError::InvalidQubit
pub prism_q::error::PrismError::InvalidQubit::index: usize
pub prism_q::error::PrismError::InvalidQubit::register_size: usize
pub prism_q::error::PrismError::Parse
pub prism_q::error::PrismError::Parse::line: usize
pub prism_q::error::PrismError::Parse::message: alloc::string::String
pub prism_q::error::PrismError::ResourceLimit(alloc::boxed::Box<prism_q::error::ResourceLimit>)
pub prism_q::error::PrismError::UndefinedRegister
pub prism_q::error::PrismError::UndefinedRegister::line: usize
pub prism_q::error::PrismError::UndefinedRegister::name: alloc::string::String
pub prism_q::error::PrismError::UnsupportedConstruct
pub prism_q::error::PrismError::UnsupportedConstruct::construct: alloc::string::String
pub prism_q::error::PrismError::UnsupportedConstruct::line: usize
#[non_exhaustive] pub enum prism_q::error::ResourceKind
pub prism_q::error::ResourceKind::Amplitudes
pub prism_q::error::ResourceKind::DeviceBytes
pub prism_q::error::ResourceKind::Elements
pub prism_q::error::ResourceKind::Entries
pub prism_q::error::ResourceKind::Qubits
impl core::fmt::Display for prism_q::error::ResourceKind
pub fn prism_q::error::ResourceKind::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
#[non_exhaustive] pub struct prism_q::error::ResourceLimit
pub prism_q::error::ResourceLimit::backend: alloc::string::String
pub prism_q::error::ResourceLimit::env_var: core::option::Option<&'static str>
pub prism_q::error::ResourceLimit::limit: u128
pub prism_q::error::ResourceLimit::operation: alloc::string::String
pub prism_q::error::ResourceLimit::required: u128
pub prism_q::error::ResourceLimit::resource: prism_q::error::ResourceKind
pub type prism_q::error::Result<T> = core::result::Result<T, prism_q::error::PrismError>
pub mod prism_q::gates
pub enum prism_q::gates::DiagEntry
pub prism_q::gates::DiagEntry::Parity2q
pub prism_q::gates::DiagEntry::Parity2q::diff: num_complex::Complex64
pub prism_q::gates::DiagEntry::Parity2q::q0: usize
pub prism_q::gates::DiagEntry::Parity2q::q1: usize
pub prism_q::gates::DiagEntry::Parity2q::same: num_complex::Complex64
pub prism_q::gates::DiagEntry::Phase1q
pub prism_q::gates::DiagEntry::Phase1q::d0: num_complex::Complex64
pub prism_q::gates::DiagEntry::Phase1q::d1: num_complex::Complex64
pub prism_q::gates::DiagEntry::Phase1q::qubit: usize
pub prism_q::gates::DiagEntry::Phase2q
pub prism_q::gates::DiagEntry::Phase2q::phase: num_complex::Complex64
pub prism_q::gates::DiagEntry::Phase2q::q0: usize
pub prism_q::gates::DiagEntry::Phase2q::q1: usize
#[non_exhaustive] pub enum prism_q::gates::Gate
pub prism_q::gates::Gate::BatchPhase(alloc::boxed::Box<prism_q::gates::BatchPhaseData>)
pub prism_q::gates::Gate::BatchRzz(alloc::boxed::Box<prism_q::gates::BatchRzzData>)
pub prism_q::gates::Gate::Cu(alloc::boxed::Box<[[num_complex::Complex64; 2]; 2]>)
pub prism_q::gates::Gate::Cx
pub prism_q::gates::Gate::Cz
pub prism_q::gates::Gate::DiagonalBatch(alloc::boxed::Box<prism_q::gates::DiagonalBatchData>)
pub prism_q::gates::Gate::Fused(alloc::boxed::Box<[[num_complex::Complex64; 2]; 2]>)
pub prism_q::gates::Gate::Fused2q(alloc::boxed::Box<[[num_complex::Complex64; 4]; 4]>)
pub prism_q::gates::Gate::H
pub prism_q::gates::Gate::Id
pub prism_q::gates::Gate::Mcu(alloc::boxed::Box<prism_q::gates::McuData>)
pub prism_q::gates::Gate::Multi2q(alloc::boxed::Box<prism_q::gates::Multi2qData>)
pub prism_q::gates::Gate::MultiFused(alloc::boxed::Box<prism_q::gates::MultiFusedData>)
pub prism_q::gates::Gate::P(f64)
pub prism_q::gates::Gate::PauliRot(alloc::boxed::Box<prism_q::gates::PauliRotData>)
pub prism_q::gates::Gate::QftBlock
pub prism_q::gates::Gate::QftBlock::num: u8
pub prism_q::gates::Gate::QftBlock::start: u8
pub prism_q::gates::Gate::Rx(f64)
pub prism_q::gates::Gate::Ry(f64)
pub prism_q::gates::Gate::Rz(f64)
pub prism_q::gates::Gate::Rzz(f64)
pub prism_q::gates::Gate::S
pub prism_q::gates::Gate::SX
pub prism_q::gates::Gate::SXdg
pub prism_q::gates::Gate::Sdg
pub prism_q::gates::Gate::Swap
pub prism_q::gates::Gate::T
pub prism_q::gates::Gate::Tdg
pub prism_q::gates::Gate::Unitary(alloc::boxed::Box<prism_q::gates::UnitaryData>)
pub prism_q::gates::Gate::X
pub prism_q::gates::Gate::Y
pub prism_q::gates::Gate::Z
impl prism_q::gates::Gate
pub fn prism_q::gates::Gate::controlled_phase(&self) -> core::option::Option<num_complex::Complex64>
pub fn prism_q::gates::Gate::cphase(f64) -> prism_q::gates::Gate
pub fn prism_q::gates::Gate::cu([[num_complex::Complex64; 2]; 2]) -> prism_q::gates::Gate
pub fn prism_q::gates::Gate::inverse(&self) -> prism_q::gates::Gate
pub fn prism_q::gates::Gate::is_clifford(&self) -> bool
pub fn prism_q::gates::Gate::is_diagonal_1q(&self) -> bool
pub fn prism_q::gates::Gate::matrix_2x2(&self) -> [[num_complex::Complex64; 2]; 2]
pub fn prism_q::gates::Gate::matrix_4x4(&self) -> [[num_complex::Complex64; 4]; 4]
pub fn prism_q::gates::Gate::mcu([[num_complex::Complex64; 2]; 2], u8) -> prism_q::gates::Gate
pub fn prism_q::gates::Gate::name(&self) -> &'static str
pub fn prism_q::gates::Gate::num_qubits(&self) -> usize
pub fn prism_q::gates::Gate::pauli_generator(&self) -> core::option::Option<prism_q::gates::GeneratorKind<'_>>
pub fn prism_q::gates::Gate::unitary(alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<prism_q::gates::Gate>
impl core::fmt::Display for prism_q::gates::Gate
pub fn prism_q::gates::Gate::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub enum prism_q::gates::GeneratorKind<'a>
pub prism_q::gates::GeneratorKind::Phase
pub prism_q::gates::GeneratorKind::RotPauli(&'a [prism_q::sim::unified_pauli::PauliAxis])
pub prism_q::gates::GeneratorKind::RotX
pub prism_q::gates::GeneratorKind::RotY
pub prism_q::gates::GeneratorKind::RotZ
pub prism_q::gates::GeneratorKind::RotZz
pub struct prism_q::gates::BatchPhaseData
impl prism_q::gates::BatchPhaseData
pub const prism_q::gates::BatchPhaseData::MAX_PHASES: usize
pub fn prism_q::gates::BatchPhaseData::new(impl core::iter::traits::collect::IntoIterator<Item = (usize, num_complex::Complex64)>) -> Self
pub fn prism_q::gates::BatchPhaseData::phases(&self) -> &[(usize, num_complex::Complex64)]
pub struct prism_q::gates::BatchRzzData
impl prism_q::gates::BatchRzzData
pub const prism_q::gates::BatchRzzData::MAX_EDGES: usize
pub fn prism_q::gates::BatchRzzData::edges(&self) -> &[(usize, usize, f64)]
pub fn prism_q::gates::BatchRzzData::new(alloc::vec::Vec<(usize, usize, f64)>) -> Self
pub struct prism_q::gates::DiagonalBatchData
impl prism_q::gates::DiagonalBatchData
pub fn prism_q::gates::DiagonalBatchData::entries(&self) -> &[prism_q::gates::DiagEntry]
pub fn prism_q::gates::DiagonalBatchData::new(alloc::vec::Vec<prism_q::gates::DiagEntry>) -> Self
pub struct prism_q::gates::McuData
impl prism_q::gates::McuData
pub fn prism_q::gates::McuData::mat(&self) -> &[[num_complex::Complex64; 2]; 2]
pub fn prism_q::gates::McuData::new([[num_complex::Complex64; 2]; 2], u8) -> Self
pub fn prism_q::gates::McuData::num_controls(&self) -> u8
pub struct prism_q::gates::Multi2qData
impl prism_q::gates::Multi2qData
pub fn prism_q::gates::Multi2qData::gates(&self) -> &[(usize, usize, [[num_complex::Complex64; 4]; 4])]
pub fn prism_q::gates::Multi2qData::new(alloc::vec::Vec<(usize, usize, [[num_complex::Complex64; 4]; 4])>) -> Self
pub struct prism_q::gates::MultiFusedData
impl prism_q::gates::MultiFusedData
pub fn prism_q::gates::MultiFusedData::all_diagonal(&self) -> bool
pub fn prism_q::gates::MultiFusedData::gates(&self) -> &[(usize, [[num_complex::Complex64; 2]; 2])]
pub fn prism_q::gates::MultiFusedData::new(alloc::vec::Vec<(usize, [[num_complex::Complex64; 2]; 2])>) -> Self
pub struct prism_q::gates::PauliRotData
impl prism_q::gates::PauliRotData
pub fn prism_q::gates::PauliRotData::axes(&self) -> &[prism_q::sim::unified_pauli::PauliAxis]
pub fn prism_q::gates::PauliRotData::set_theta(&mut self, f64)
pub fn prism_q::gates::PauliRotData::theta(&self) -> f64
pub struct prism_q::gates::UnitaryData
impl prism_q::gates::UnitaryData
pub fn prism_q::gates::UnitaryData::matrix(&self) -> &[num_complex::Complex64]
pub fn prism_q::gates::UnitaryData::num_qubits(&self) -> usize
pub const prism_q::gates::MAX_UNITARY_QUBITS: usize
pub mod prism_q::gpu
pub struct prism_q::gpu::GpuContext
impl prism_q::gpu::GpuContext
pub fn prism_q::gpu::GpuContext::fits_statevector(&self, usize) -> prism_q::error::Result<bool>
pub fn prism_q::gpu::GpuContext::fits_statevector_with_scratch(&self, usize) -> prism_q::error::Result<bool>
pub fn prism_q::gpu::GpuContext::fits_tableau(&self, usize) -> prism_q::error::Result<bool>
pub fn prism_q::gpu::GpuContext::is_available() -> bool
pub fn prism_q::gpu::GpuContext::max_qubits_for_statevector(&self) -> prism_q::error::Result<usize>
pub fn prism_q::gpu::GpuContext::new(usize) -> prism_q::error::Result<alloc::sync::Arc<Self>>
pub fn prism_q::gpu::GpuContext::synchronize(&self) -> prism_q::error::Result<()>
pub fn prism_q::gpu::GpuContext::vram_available(&self) -> prism_q::error::Result<usize>
pub fn prism_q::gpu::GpuContext::vram_bytes(&self) -> prism_q::error::Result<usize>
impl core::fmt::Debug for prism_q::gpu::GpuContext
pub fn prism_q::gpu::GpuContext::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub struct prism_q::gpu::GpuState
impl prism_q::gpu::GpuState
pub fn prism_q::gpu::GpuState::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::gpu::GpuState::from_host_amplitudes(alloc::sync::Arc<prism_q::gpu::GpuContext>, &[num_complex::Complex64]) -> prism_q::error::Result<Self>
pub fn prism_q::gpu::GpuState::new(alloc::sync::Arc<prism_q::gpu::GpuContext>, usize) -> prism_q::error::Result<Self>
pub fn prism_q::gpu::GpuState::num_qubits(&self) -> usize
pub fn prism_q::gpu::GpuState::pending_norm(&self) -> f64
pub fn prism_q::gpu::GpuState::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub struct prism_q::gpu::GpuTableau
impl prism_q::gpu::GpuTableau
pub fn prism_q::gpu::GpuTableau::copy_from_host(&mut self, &[u64], &[bool]) -> prism_q::error::Result<()>
pub fn prism_q::gpu::GpuTableau::copy_to_host(&self) -> prism_q::error::Result<(alloc::vec::Vec<u64>, alloc::vec::Vec<bool>)>
pub fn prism_q::gpu::GpuTableau::new(alloc::sync::Arc<prism_q::gpu::GpuContext>, usize) -> prism_q::error::Result<Self>
pub fn prism_q::gpu::GpuTableau::num_qubits(&self) -> usize
pub fn prism_q::gpu::GpuTableau::num_words(&self) -> usize
pub const prism_q::gpu::BTS_MIN_RANK_DEFAULT: usize
pub const prism_q::gpu::BTS_MIN_SHOTS_DEFAULT: usize
pub const prism_q::gpu::BTS_MIN_WEIGHT_FACTOR_DEFAULT: usize
pub const prism_q::gpu::MIN_QUBITS_DEFAULT: usize
pub const prism_q::gpu::STABILIZER_MIN_QUBITS_DEFAULT: usize
pub fn prism_q::gpu::is_available() -> bool
pub fn prism_q::gpu::min_qubits() -> usize
pub fn prism_q::gpu::stabilizer_min_qubits() -> usize
pub mod prism_q::qec
pub mod prism_q::qec::observable_reroute
pub struct prism_q::qec::observable_reroute::ConeTelemetry
pub prism_q::qec::observable_reroute::ConeTelemetry::gates_in_cone: usize
pub prism_q::qec::observable_reroute::ConeTelemetry::gates_total: usize
pub prism_q::qec::observable_reroute::ConeTelemetry::t_in_cone: usize
pub prism_q::qec::observable_reroute::ConeTelemetry::t_total: usize
pub struct prism_q::qec::observable_reroute::ObservableRerouteResult
pub prism_q::qec::observable_reroute::ObservableRerouteResult::original: prism_q::qec::observable_reroute::ConeTelemetry
pub prism_q::qec::observable_reroute::ObservableRerouteResult::original_support: alloc::vec::Vec<usize>
pub prism_q::qec::observable_reroute::ObservableRerouteResult::rerouted: prism_q::qec::observable_reroute::ConeTelemetry
pub prism_q::qec::observable_reroute::ObservableRerouteResult::rerouted_support: alloc::vec::Vec<usize>
pub const prism_q::qec::observable_reroute::MAX_REROUTE_STABILIZERS: usize
pub fn prism_q::qec::observable_reroute::cone_telemetry(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm]) -> prism_q::qec::observable_reroute::ConeTelemetry
pub fn prism_q::qec::observable_reroute::min_cone_z_representative(&prism_q::circuit::Circuit, &[usize], &[alloc::vec::Vec<usize>]) -> prism_q::error::Result<prism_q::qec::observable_reroute::ObservableRerouteResult>
pub fn prism_q::qec::observable_reroute::xor_z_support(&[usize], &[usize]) -> alloc::vec::Vec<usize>
pub enum prism_q::qec::QecBasis
pub prism_q::qec::QecBasis::X
pub prism_q::qec::QecBasis::Y
pub prism_q::qec::QecBasis::Z
impl core::convert::From<prism_q::qec::QecBasis> for prism_q::sim::unified_pauli::PauliAxis
pub fn prism_q::sim::unified_pauli::PauliAxis::from(prism_q::qec::QecBasis) -> Self
#[non_exhaustive] pub enum prism_q::qec::QecNoise
pub prism_q::qec::QecNoise::Depolarize1(f64)
pub prism_q::qec::QecNoise::Depolarize2(f64)
pub prism_q::qec::QecNoise::XError(f64)
pub prism_q::qec::QecNoise::ZError(f64)
impl prism_q::qec::QecNoise
pub fn prism_q::qec::QecNoise::name(self) -> &'static str
pub fn prism_q::qec::QecNoise::probability(self) -> f64
#[non_exhaustive] pub enum prism_q::qec::QecOp
pub prism_q::qec::QecOp::Detector
pub prism_q::qec::QecOp::Detector::coords: alloc::vec::Vec<f64>
pub prism_q::qec::QecOp::Detector::records: alloc::vec::Vec<prism_q::qec::QecRecordRef>
pub prism_q::qec::QecOp::ExpectationValue
pub prism_q::qec::QecOp::ExpectationValue::coefficient: f64
pub prism_q::qec::QecOp::ExpectationValue::terms: alloc::vec::Vec<prism_q::qec::QecPauli>
pub prism_q::qec::QecOp::Feedforward
pub prism_q::qec::QecOp::Feedforward::body: alloc::vec::Vec<prism_q::qec::QecOp>
pub prism_q::qec::QecOp::Feedforward::expected: bool
pub prism_q::qec::QecOp::Feedforward::records: alloc::vec::Vec<prism_q::qec::QecRecordRef>
pub prism_q::qec::QecOp::Gate
pub prism_q::qec::QecOp::Gate::gate: prism_q::gates::Gate
pub prism_q::qec::QecOp::Gate::targets: alloc::vec::Vec<usize>
pub prism_q::qec::QecOp::Measure
pub prism_q::qec::QecOp::Measure::basis: prism_q::qec::QecBasis
pub prism_q::qec::QecOp::Measure::qubit: usize
pub prism_q::qec::QecOp::MeasurePauliProduct
pub prism_q::qec::QecOp::MeasurePauliProduct::terms: alloc::vec::Vec<prism_q::qec::QecPauli>
pub prism_q::qec::QecOp::Noise
pub prism_q::qec::QecOp::Noise::channel: prism_q::qec::QecNoise
pub prism_q::qec::QecOp::Noise::targets: alloc::vec::Vec<usize>
pub prism_q::qec::QecOp::ObservableInclude
pub prism_q::qec::QecOp::ObservableInclude::observable: usize
pub prism_q::qec::QecOp::ObservableInclude::records: alloc::vec::Vec<prism_q::qec::QecRecordRef>
pub prism_q::qec::QecOp::Postselect
pub prism_q::qec::QecOp::Postselect::expected: bool
pub prism_q::qec::QecOp::Postselect::records: alloc::vec::Vec<prism_q::qec::QecRecordRef>
pub prism_q::qec::QecOp::Reset
pub prism_q::qec::QecOp::Reset::basis: prism_q::qec::QecBasis
pub prism_q::qec::QecOp::Reset::qubit: usize
pub prism_q::qec::QecOp::Tick
#[non_exhaustive] pub enum prism_q::qec::QecRecordRef
pub prism_q::qec::QecRecordRef::Absolute(usize)
pub prism_q::qec::QecRecordRef::Lookback(usize)
impl prism_q::qec::QecRecordRef
pub fn prism_q::qec::QecRecordRef::absolute(usize) -> Self
pub fn prism_q::qec::QecRecordRef::lookback(usize) -> prism_q::error::Result<Self>
#[non_exhaustive] pub enum prism_q::qec::QecTStrategy
pub prism_q::qec::QecTStrategy::Auto
pub prism_q::qec::QecTStrategy::Camps
pub prism_q::qec::QecTStrategy::Reference
pub prism_q::qec::QecTStrategy::Spd
impl prism_q::QecTStrategy
pub fn prism_q::QecTStrategy::label(self) -> &'static str
pub struct prism_q::qec::DetectorErrorModel
impl prism_q::DetectorErrorModel
pub fn prism_q::DetectorErrorModel::decompose_graphlike(&self) -> prism_q::error::Result<prism_q::DetectorErrorModel>
pub fn prism_q::DetectorErrorModel::detector_coords(&self) -> &[alloc::vec::Vec<f64>]
pub fn prism_q::DetectorErrorModel::mechanisms(&self) -> &[prism_q::ErrorMechanism]
pub fn prism_q::DetectorErrorModel::num_detectors(&self) -> usize
pub fn prism_q::DetectorErrorModel::num_mechanisms(&self) -> usize
pub fn prism_q::DetectorErrorModel::num_observables(&self) -> usize
pub fn prism_q::DetectorErrorModel::to_text(&self) -> alloc::string::String
pub struct prism_q::qec::ErrorMechanism
impl prism_q::ErrorMechanism
pub fn prism_q::ErrorMechanism::detectors(&self) -> &[usize]
pub fn prism_q::ErrorMechanism::observables(&self) -> &[usize]
pub fn prism_q::ErrorMechanism::probability(&self) -> f64
pub struct prism_q::qec::QecCompiledRows
impl prism_q::qec::QecCompiledRows
pub fn prism_q::qec::QecCompiledRows::detector_parities(&self, &prism_q::sim::compiled::PackedShots) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::qec::QecCompiledRows::detector_rows(&self) -> &[alloc::vec::Vec<usize>]
pub fn prism_q::qec::QecCompiledRows::measurement_mask_bytes(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::measurement_rows(&self) -> &[prism_q::qec::QecMeasurementRow]
pub fn prism_q::qec::QecCompiledRows::num_detectors(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::num_measurements(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::num_observables(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::num_postselections(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::num_qubits(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::observable_parities(&self, &prism_q::sim::compiled::PackedShots) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::qec::QecCompiledRows::observable_rows(&self) -> &[alloc::vec::Vec<usize>]
pub fn prism_q::qec::QecCompiledRows::packed_row_words(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::postselection_expected(&self) -> &[bool]
pub fn prism_q::qec::QecCompiledRows::postselection_parities(&self, &prism_q::sim::compiled::PackedShots) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::qec::QecCompiledRows::postselection_predicates(&self) -> impl core::iter::traits::exact_size::ExactSizeIterator<Item = (&[usize], bool)> + '_
pub fn prism_q::qec::QecCompiledRows::postselection_rows(&self) -> &[alloc::vec::Vec<usize>]
pub struct prism_q::qec::QecMeasurementRow
impl prism_q::qec::QecMeasurementRow
pub fn prism_q::qec::QecMeasurementRow::from_terms(usize, &[prism_q::qec::QecPauli]) -> prism_q::error::Result<Self>
pub fn prism_q::qec::QecMeasurementRow::num_qubits(&self) -> usize
pub fn prism_q::qec::QecMeasurementRow::pauli_at(&self, usize) -> core::option::Option<prism_q::qec::QecBasis>
pub fn prism_q::qec::QecMeasurementRow::single(usize, prism_q::qec::QecBasis, usize) -> prism_q::error::Result<Self>
pub fn prism_q::qec::QecMeasurementRow::terms(&self) -> alloc::vec::Vec<prism_q::qec::QecPauli>
pub fn prism_q::qec::QecMeasurementRow::weight(&self) -> usize
pub fn prism_q::qec::QecMeasurementRow::x_mask(&self) -> &[u64]
pub fn prism_q::qec::QecMeasurementRow::z_mask(&self) -> &[u64]
pub struct prism_q::qec::QecObservableEstimate
pub prism_q::qec::QecObservableEstimate::mean: f64
pub prism_q::qec::QecObservableEstimate::num_shots: usize
pub prism_q::qec::QecObservableEstimate::variance: f64
pub struct prism_q::qec::QecObservableReroute
pub prism_q::qec::QecObservableReroute::observable: usize
pub prism_q::qec::QecObservableReroute::stabilizers: alloc::vec::Vec<alloc::vec::Vec<usize>>
pub struct prism_q::qec::QecOptions
pub prism_q::qec::QecOptions::chunk_size: core::option::Option<usize>
pub prism_q::qec::QecOptions::keep_measurements: bool
pub prism_q::qec::QecOptions::seed: u64
pub prism_q::qec::QecOptions::shots: usize
impl core::default::Default for prism_q::qec::QecOptions
pub fn prism_q::qec::QecOptions::default() -> Self
pub struct prism_q::qec::QecPauli
pub prism_q::qec::QecPauli::basis: prism_q::qec::QecBasis
pub prism_q::qec::QecPauli::qubit: usize
impl prism_q::qec::QecPauli
pub fn prism_q::qec::QecPauli::new(prism_q::qec::QecBasis, usize) -> Self
pub fn prism_q::qec::QecPauli::x(usize) -> Self
pub fn prism_q::qec::QecPauli::y(usize) -> Self
pub fn prism_q::qec::QecPauli::z(usize) -> Self
pub struct prism_q::qec::QecProgram
impl prism_q::qec::QecProgram
pub fn prism_q::qec::QecProgram::detector(&mut self, &[prism_q::qec::QecRecordRef]) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::detector_rows(&self) -> prism_q::error::Result<alloc::vec::Vec<alloc::vec::Vec<usize>>>
pub fn prism_q::qec::QecProgram::detector_with_coords(&mut self, &[prism_q::qec::QecRecordRef], &[f64]) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::empty_result(&self) -> prism_q::QecSampleResult
pub fn prism_q::qec::QecProgram::expectation_value(&mut self, &[prism_q::qec::QecPauli], f64) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::expectation_value_ops(&self) -> alloc::vec::Vec<(&[prism_q::qec::QecPauli], f64)>
pub fn prism_q::qec::QecProgram::feedforward(&mut self, &[prism_q::qec::QecRecordRef], bool, alloc::vec::Vec<prism_q::qec::QecOp>) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::from_ops(usize, prism_q::qec::QecOptions, alloc::vec::Vec<prism_q::qec::QecOp>) -> prism_q::error::Result<Self>
pub fn prism_q::qec::QecProgram::from_text(&str) -> prism_q::error::Result<Self>
pub fn prism_q::qec::QecProgram::measure(&mut self, prism_q::qec::QecBasis, usize) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::measure_pauli_product(&mut self, &[prism_q::qec::QecPauli]) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::measure_x(&mut self, usize) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::measure_z(&mut self, usize) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::new(usize) -> Self
pub fn prism_q::qec::QecProgram::noise(&mut self, prism_q::qec::QecNoise, &[usize]) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::num_detectors(&self) -> usize
pub fn prism_q::qec::QecProgram::num_expectation_values(&self) -> usize
pub fn prism_q::qec::QecProgram::num_measurements(&self) -> usize
pub fn prism_q::qec::QecProgram::num_observables(&self) -> usize
pub fn prism_q::qec::QecProgram::num_qubits(&self) -> usize
pub fn prism_q::qec::QecProgram::observable_include(&mut self, usize, &[prism_q::qec::QecRecordRef]) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::observable_rows(&self) -> prism_q::error::Result<alloc::vec::Vec<alloc::vec::Vec<usize>>>
pub fn prism_q::qec::QecProgram::ops(&self) -> &[prism_q::qec::QecOp]
pub fn prism_q::qec::QecProgram::options(&self) -> prism_q::qec::QecOptions
pub fn prism_q::qec::QecProgram::postselect(&mut self, &[prism_q::qec::QecRecordRef], bool) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::postselection_rows(&self) -> prism_q::error::Result<alloc::vec::Vec<(alloc::vec::Vec<usize>, bool)>>
pub fn prism_q::qec::QecProgram::push_gate(&mut self, prism_q::gates::Gate, &[usize]) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::push_op(&mut self, prism_q::qec::QecOp) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::reset(&mut self, prism_q::qec::QecBasis, usize) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::set_options(&mut self, prism_q::qec::QecOptions)
pub fn prism_q::qec::QecProgram::with_options(usize, prism_q::qec::QecOptions) -> Self
impl prism_q::qec::QecProgram
pub fn prism_q::qec::QecProgram::detector_error_model(&self) -> prism_q::error::Result<prism_q::DetectorErrorModel>
#[non_exhaustive] pub struct prism_q::qec::QecSampleResult
pub prism_q::qec::QecSampleResult::accepted_shots: usize
pub prism_q::qec::QecSampleResult::detectors: prism_q::sim::compiled::PackedShots
pub prism_q::qec::QecSampleResult::discarded_shots: usize
pub prism_q::qec::QecSampleResult::expectation_values: core::option::Option<alloc::vec::Vec<prism_q::QecObservableEstimate>>
pub prism_q::qec::QecSampleResult::logical_errors: alloc::vec::Vec<u64>
pub prism_q::qec::QecSampleResult::measurements: prism_q::sim::compiled::PackedShots
pub prism_q::qec::QecSampleResult::observable_expectations: core::option::Option<alloc::vec::Vec<prism_q::QecObservableEstimate>>
pub prism_q::qec::QecSampleResult::observables: prism_q::sim::compiled::PackedShots
pub prism_q::qec::QecSampleResult::total_shots: usize
impl prism_q::QecSampleResult
pub fn prism_q::QecSampleResult::empty(usize, usize, usize) -> Self
pub fn prism_q::QecSampleResult::logical_error_rate_wilson_intervals(&self, f64) -> alloc::vec::Vec<(f64, f64)>
pub fn prism_q::QecSampleResult::logical_error_rates(&self) -> alloc::vec::Vec<f64>
pub fn prism_q::QecSampleResult::new(prism_q::sim::compiled::PackedShots, prism_q::sim::compiled::PackedShots, prism_q::sim::compiled::PackedShots, usize, usize, alloc::vec::Vec<u64>) -> prism_q::error::Result<Self>
pub fn prism_q::QecSampleResult::new_with_total_shots(usize, prism_q::sim::compiled::PackedShots, prism_q::sim::compiled::PackedShots, prism_q::sim::compiled::PackedShots, usize, usize, alloc::vec::Vec<u64>) -> prism_q::error::Result<Self>
pub fn prism_q::QecSampleResult::survivor_rate(&self) -> f64
pub fn prism_q::QecSampleResult::survivor_rate_wilson_interval(&self, f64) -> (f64, f64)
pub fn prism_q::QecSampleResult::with_expectation_values(self, alloc::vec::Vec<prism_q::QecObservableEstimate>) -> Self
pub fn prism_q::QecSampleResult::with_observable_expectations(self, alloc::vec::Vec<prism_q::QecObservableEstimate>) -> prism_q::error::Result<Self>
pub struct prism_q::qec::UnionFindDecoder
impl prism_q::UnionFindDecoder
pub fn prism_q::UnionFindDecoder::decode_packed(&self, &prism_q::sim::compiled::PackedShots) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::UnionFindDecoder::from_model(&prism_q::DetectorErrorModel) -> prism_q::error::Result<Self>
pub fn prism_q::UnionFindDecoder::num_detectors(&self) -> usize
pub fn prism_q::UnionFindDecoder::num_observables(&self) -> usize
pub fn prism_q::qec::compile_qec_program_rows(&prism_q::qec::QecProgram) -> prism_q::error::Result<prism_q::qec::QecCompiledRows>
pub fn prism_q::qec::parse_qec_program(&str) -> prism_q::error::Result<prism_q::qec::QecProgram>
pub fn prism_q::qec::run_qec_program(&prism_q::qec::QecProgram) -> prism_q::error::Result<prism_q::QecSampleResult>
pub fn prism_q::qec::run_qec_program_reference(&prism_q::qec::QecProgram) -> prism_q::error::Result<prism_q::QecSampleResult>
pub fn prism_q::qec::run_qec_program_spd_rerouted(&prism_q::qec::QecProgram, &[prism_q::QecObservableReroute]) -> prism_q::error::Result<prism_q::QecSampleResult>
pub fn prism_q::qec::run_qec_program_with_strategy(&prism_q::qec::QecProgram, prism_q::QecTStrategy) -> prism_q::error::Result<prism_q::QecSampleResult>
pub mod prism_q::sim
pub mod prism_q::sim::braket
#[non_exhaustive] pub enum prism_q::sim::braket::ResultValue
pub prism_q::sim::braket::ResultValue::Amplitude(alloc::vec::Vec<(alloc::string::String, num_complex::Complex64)>)
pub prism_q::sim::braket::ResultValue::DensityMatrix(alloc::vec::Vec<alloc::vec::Vec<num_complex::Complex64>>)
pub prism_q::sim::braket::ResultValue::Expectation(alloc::vec::Vec<f64>)
pub prism_q::sim::braket::ResultValue::Probability(alloc::vec::Vec<f64>)
pub prism_q::sim::braket::ResultValue::Sample(alloc::vec::Vec<alloc::vec::Vec<f64>>)
pub prism_q::sim::braket::ResultValue::StateVector(alloc::vec::Vec<num_complex::Complex64>)
pub prism_q::sim::braket::ResultValue::Variance(alloc::vec::Vec<f64>)
pub mod prism_q::sim::calibration
pub mod prism_q::sim::calibration::presets
pub fn prism_q::sim::calibration::presets::neutral_atom(usize) -> prism_q::sim::calibration::DeviceCalibration
pub fn prism_q::sim::calibration::presets::superconducting_transmon(usize) -> prism_q::sim::calibration::DeviceCalibration
pub fn prism_q::sim::calibration::presets::trapped_ion(usize) -> prism_q::sim::calibration::DeviceCalibration
pub struct prism_q::sim::calibration::DeviceCalibration
impl prism_q::sim::calibration::DeviceCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::gate1q(&self) -> &prism_q::sim::calibration::GateCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::gate2q(&self) -> &prism_q::sim::calibration::GateCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::gate2q_on(&self, usize, usize) -> &prism_q::sim::calibration::GateCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::new(alloc::vec::Vec<prism_q::sim::calibration::QubitCalibration>, prism_q::sim::calibration::GateCalibration, prism_q::sim::calibration::GateCalibration) -> prism_q::error::Result<Self>
pub fn prism_q::sim::calibration::DeviceCalibration::num_qubits(&self) -> usize
pub fn prism_q::sim::calibration::DeviceCalibration::parse(&str) -> prism_q::error::Result<Self>
pub fn prism_q::sim::calibration::DeviceCalibration::qubit(&self, usize) -> &prism_q::sim::calibration::QubitCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::qubits(&self) -> &[prism_q::sim::calibration::QubitCalibration]
pub fn prism_q::sim::calibration::DeviceCalibration::to_noise_model(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<prism_q::sim::noise::NoiseModel>
pub fn prism_q::sim::calibration::DeviceCalibration::with_pair(self, usize, usize, prism_q::sim::calibration::GateCalibration) -> prism_q::error::Result<Self>
pub struct prism_q::sim::calibration::GateCalibration
pub prism_q::sim::calibration::GateCalibration::error: f64
pub prism_q::sim::calibration::GateCalibration::time: f64
pub struct prism_q::sim::calibration::QubitCalibration
pub prism_q::sim::calibration::QubitCalibration::p01: f64
pub prism_q::sim::calibration::QubitCalibration::p10: f64
pub prism_q::sim::calibration::QubitCalibration::t1: f64
pub prism_q::sim::calibration::QubitCalibration::t2: f64
pub mod prism_q::sim::compiled
#[non_exhaustive] pub enum prism_q::sim::compiled::ShotLayout
pub prism_q::sim::compiled::ShotLayout::MeasMajor
pub prism_q::sim::compiled::ShotLayout::ShotMajor
pub struct prism_q::sim::compiled::CompiledDetectorSampler
impl prism_q::sim::compiled::CompiledDetectorSampler
pub fn prism_q::sim::compiled::CompiledDetectorSampler::detector_rows(&self) -> &[alloc::vec::Vec<usize>]
pub fn prism_q::sim::compiled::CompiledDetectorSampler::num_detectors(&self) -> usize
pub fn prism_q::sim::compiled::CompiledDetectorSampler::num_measurements(&self) -> usize
pub fn prism_q::sim::compiled::CompiledDetectorSampler::num_observables(&self) -> usize
pub fn prism_q::sim::compiled::CompiledDetectorSampler::observable_rows(&self) -> &[alloc::vec::Vec<usize>]
pub fn prism_q::sim::compiled::CompiledDetectorSampler::rank(&self) -> usize
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_detector_counts(&mut self, usize) -> prism_q::error::Result<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_detectors_chunked<A: prism_q::ShotAccumulator>(&mut self, usize, &mut A) -> prism_q::error::Result<()>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_detectors_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_measurements_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_observables_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::DetectorSampleBatch>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub struct prism_q::sim::compiled::CompiledSampler
impl prism_q::sim::compiled::CompiledSampler
pub fn prism_q::sim::compiled::CompiledSampler::exact_counts(&self) -> core::option::Option<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::compiled::CompiledSampler::num_measurements(&self) -> usize
pub fn prism_q::sim::compiled::CompiledSampler::parity_report(&self) -> alloc::string::String
pub fn prism_q::sim::compiled::CompiledSampler::parity_stats(&self) -> core::option::Option<prism_q::ParityStats>
pub fn prism_q::sim::compiled::CompiledSampler::rank(&self) -> usize
pub fn prism_q::sim::compiled::CompiledSampler::sample(&mut self) -> alloc::vec::Vec<bool>
pub fn prism_q::sim::compiled::CompiledSampler::sample_bulk(&mut self, usize) -> alloc::vec::Vec<alloc::vec::Vec<bool>>
pub fn prism_q::sim::compiled::CompiledSampler::sample_bulk_packed(&mut self, usize) -> prism_q::sim::compiled::PackedShots
pub fn prism_q::sim::compiled::CompiledSampler::sample_bulk_packed_device(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::DevicePackedShots>
pub fn prism_q::sim::compiled::CompiledSampler::sample_chunked<A: prism_q::ShotAccumulator>(&mut self, usize, &mut A)
pub fn prism_q::sim::compiled::CompiledSampler::sample_chunked_with_size<A: prism_q::ShotAccumulator>(&mut self, usize, usize, &mut A)
pub fn prism_q::sim::compiled::CompiledSampler::sample_counts(&mut self, usize) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::sim::compiled::CompiledSampler::sample_detection_events(&mut self, &[(usize, usize)], usize) -> prism_q::sim::compiled::PackedShots
pub fn prism_q::sim::compiled::CompiledSampler::sample_marginals(&mut self, usize) -> alloc::vec::Vec<f64>
pub fn prism_q::sim::compiled::CompiledSampler::sparse(&self) -> core::option::Option<&prism_q::sim::compiled::parity::SparseParity>
pub fn prism_q::sim::compiled::CompiledSampler::try_sample_bulk_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::CompiledSampler::try_sample_counts(&mut self, usize) -> prism_q::error::Result<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::compiled::CompiledSampler::try_sample_marginals(&mut self, usize) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::compiled::CompiledSampler::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub struct prism_q::sim::compiled::CorrelatorAccumulator
impl prism_q::CorrelatorAccumulator
pub fn prism_q::CorrelatorAccumulator::correlators(&self) -> alloc::vec::Vec<f64>
pub fn prism_q::CorrelatorAccumulator::new(alloc::vec::Vec<(usize, usize)>) -> Self
pub fn prism_q::CorrelatorAccumulator::total_shots(&self) -> u64
impl prism_q::ShotAccumulator for prism_q::CorrelatorAccumulator
pub fn prism_q::CorrelatorAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::sim::compiled::DetectorSampleBatch
pub prism_q::sim::compiled::DetectorSampleBatch::detectors: prism_q::sim::compiled::PackedShots
pub prism_q::sim::compiled::DetectorSampleBatch::measurements: prism_q::sim::compiled::PackedShots
pub prism_q::sim::compiled::DetectorSampleBatch::observables: prism_q::sim::compiled::PackedShots
pub struct prism_q::sim::compiled::DevicePackedShots
impl prism_q::sim::compiled::DevicePackedShots
pub fn prism_q::sim::compiled::DevicePackedShots::counts(&self) -> prism_q::error::Result<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::compiled::DevicePackedShots::layout(&self) -> prism_q::sim::compiled::ShotLayout
pub fn prism_q::sim::compiled::DevicePackedShots::m_words(&self) -> usize
pub fn prism_q::sim::compiled::DevicePackedShots::marginal_counts(&self) -> prism_q::error::Result<alloc::vec::Vec<u64>>
pub fn prism_q::sim::compiled::DevicePackedShots::marginals(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::compiled::DevicePackedShots::num_measurements(&self) -> usize
pub fn prism_q::sim::compiled::DevicePackedShots::num_shots(&self) -> usize
pub fn prism_q::sim::compiled::DevicePackedShots::s_words(&self) -> usize
pub fn prism_q::sim::compiled::DevicePackedShots::to_host(&self) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub struct prism_q::sim::compiled::HistogramAccumulator
impl prism_q::HistogramAccumulator
pub fn prism_q::HistogramAccumulator::into_counts(self) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::HistogramAccumulator::new() -> Self
impl core::default::Default for prism_q::HistogramAccumulator
pub fn prism_q::HistogramAccumulator::default() -> Self
impl prism_q::ShotAccumulator for prism_q::HistogramAccumulator
pub fn prism_q::HistogramAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::sim::compiled::MarginalsAccumulator
impl prism_q::MarginalsAccumulator
pub fn prism_q::MarginalsAccumulator::marginals(&self) -> alloc::vec::Vec<f64>
pub fn prism_q::MarginalsAccumulator::new(usize) -> Self
pub fn prism_q::MarginalsAccumulator::total_shots(&self) -> u64
impl prism_q::ShotAccumulator for prism_q::MarginalsAccumulator
pub fn prism_q::MarginalsAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::sim::compiled::NullAccumulator
impl prism_q::NullAccumulator
pub fn prism_q::NullAccumulator::new() -> Self
pub fn prism_q::NullAccumulator::total_shots(&self) -> u64
impl core::default::Default for prism_q::NullAccumulator
pub fn prism_q::NullAccumulator::default() -> Self
impl prism_q::ShotAccumulator for prism_q::NullAccumulator
pub fn prism_q::NullAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::sim::compiled::PackedShots
impl prism_q::sim::compiled::PackedShots
pub const prism_q::sim::compiled::PackedShots::RAW_FORMAT_VERSION: u32
pub fn prism_q::sim::compiled::PackedShots::counts(&self) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::sim::compiled::PackedShots::from_meas_major(alloc::vec::Vec<u64>, usize, usize) -> Self
pub fn prism_q::sim::compiled::PackedShots::from_shot_major(alloc::vec::Vec<u64>, usize, usize) -> Self
pub fn prism_q::sim::compiled::PackedShots::get_bit(&self, usize, usize) -> bool
pub fn prism_q::sim::compiled::PackedShots::into_data(self) -> alloc::vec::Vec<u64>
pub fn prism_q::sim::compiled::PackedShots::layout(&self) -> prism_q::sim::compiled::ShotLayout
pub fn prism_q::sim::compiled::PackedShots::m_words(&self) -> usize
pub fn prism_q::sim::compiled::PackedShots::meas_words(&self, usize) -> &[u64]
pub fn prism_q::sim::compiled::PackedShots::num_measurements(&self) -> usize
pub fn prism_q::sim::compiled::PackedShots::num_shots(&self) -> usize
pub fn prism_q::sim::compiled::PackedShots::parity_rows(&self, &[alloc::vec::Vec<usize>]) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::PackedShots::raw_data(&self) -> &[u64]
pub fn prism_q::sim::compiled::PackedShots::raw_format_version(&self) -> u32
pub fn prism_q::sim::compiled::PackedShots::s_words(&self) -> usize
pub fn prism_q::sim::compiled::PackedShots::shot_words(&self, usize) -> &[u64]
pub fn prism_q::sim::compiled::PackedShots::to_shots(&self) -> alloc::vec::Vec<alloc::vec::Vec<bool>>
pub fn prism_q::sim::compiled::PackedShots::try_from_meas_major(alloc::vec::Vec<u64>, usize, usize) -> prism_q::error::Result<Self>
pub fn prism_q::sim::compiled::PackedShots::try_from_shot_major(alloc::vec::Vec<u64>, usize, usize) -> prism_q::error::Result<Self>
pub struct prism_q::sim::compiled::ParityStats
pub prism_q::sim::compiled::ParityStats::max_weight: usize
pub prism_q::sim::compiled::ParityStats::mean_weight: f64
pub prism_q::sim::compiled::ParityStats::min_weight: usize
pub prism_q::sim::compiled::ParityStats::num_deterministic: usize
pub prism_q::sim::compiled::ParityStats::total_weight: usize
pub struct prism_q::sim::compiled::PauliExpectationAccumulator
impl prism_q::PauliExpectationAccumulator
pub fn prism_q::PauliExpectationAccumulator::expectations(&self) -> alloc::vec::Vec<f64>
pub fn prism_q::PauliExpectationAccumulator::new(alloc::vec::Vec<alloc::vec::Vec<usize>>) -> Self
pub fn prism_q::PauliExpectationAccumulator::total_shots(&self) -> u64
impl prism_q::ShotAccumulator for prism_q::PauliExpectationAccumulator
pub fn prism_q::PauliExpectationAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub trait prism_q::sim::compiled::ShotAccumulator
pub fn prism_q::sim::compiled::ShotAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::CorrelatorAccumulator
pub fn prism_q::CorrelatorAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::HistogramAccumulator
pub fn prism_q::HistogramAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::MarginalsAccumulator
pub fn prism_q::MarginalsAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::NullAccumulator
pub fn prism_q::NullAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::PauliExpectationAccumulator
pub fn prism_q::PauliExpectationAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub fn prism_q::sim::compiled::compile_detector_sampler(&prism_q::circuit::Circuit, alloc::vec::Vec<alloc::vec::Vec<usize>>, alloc::vec::Vec<alloc::vec::Vec<usize>>, u64) -> prism_q::error::Result<prism_q::sim::compiled::CompiledDetectorSampler>
pub fn prism_q::sim::compiled::compile_forward(&prism_q::circuit::Circuit, u64) -> prism_q::error::Result<prism_q::sim::compiled::CompiledSampler>
pub fn prism_q::sim::compiled::compile_measurements(&prism_q::circuit::Circuit, u64) -> prism_q::error::Result<prism_q::sim::compiled::CompiledSampler>
pub fn prism_q::sim::compiled::default_chunk_size(usize) -> usize
pub fn prism_q::sim::compiled::optimal_chunk_size(usize, usize) -> usize
pub fn prism_q::sim::compiled::run_shots_compiled(&prism_q::circuit::Circuit, usize, u64) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::sim::compiled::run_shots_compiled_with_gpu(&prism_q::circuit::Circuit, usize, u64, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> prism_q::error::Result<prism_q::ShotsResult>
pub mod prism_q::sim::gradient
pub struct prism_q::sim::gradient::ExpectationGradient
pub prism_q::sim::gradient::ExpectationGradient::gradient: alloc::vec::Vec<f64>
pub prism_q::sim::gradient::ExpectationGradient::value: f64
pub fn prism_q::sim::gradient::run_expectation_gradient(&prism_q::circuit::Circuit, &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)], &prism_q::circuit::parameter::Parameters, u64) -> prism_q::error::Result<prism_q::sim::gradient::ExpectationGradient>
pub fn prism_q::sim::gradient::run_expectation_gradient_shift(&prism_q::circuit::Circuit, &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)], &prism_q::circuit::parameter::Parameters, u64) -> prism_q::error::Result<prism_q::sim::gradient::ExpectationGradient>
pub mod prism_q::sim::homological
pub struct prism_q::sim::homological::ErrorChainComplex
impl prism_q::sim::homological::ErrorChainComplex
pub fn prism_q::sim::homological::ErrorChainComplex::boundary_dim(&self) -> usize
pub fn prism_q::sim::homological::ErrorChainComplex::build(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, u64) -> prism_q::error::Result<Self>
pub fn prism_q::sim::homological::ErrorChainComplex::homology_dim(&self) -> usize
pub fn prism_q::sim::homological::ErrorChainComplex::noisy_marginals(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::sim::homological::noisy_marginals_analytical(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub mod prism_q::sim::noise
pub mod prism_q::sim::noise::builder
pub struct prism_q::sim::noise::builder::GateFilter
impl prism_q::sim::noise::builder::GateFilter
pub fn prism_q::sim::noise::builder::GateFilter::all() -> Self
pub fn prism_q::sim::noise::builder::GateFilter::arity(self, usize) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::named(self, impl core::convert::Into<alloc::string::String>) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::on_qubits(self, impl core::iter::traits::collect::IntoIterator<Item = usize>) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::on_targets(self, impl core::iter::traits::collect::IntoIterator<Item = usize>) -> Self
pub struct prism_q::sim::noise::builder::NoiseBuilder
impl prism_q::sim::noise::builder::NoiseBuilder
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_gates(self, prism_q::sim::noise::builder::GateFilter, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_gates_joint(self, prism_q::sim::noise::builder::GateFilter, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_resets(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::before_measurements(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::build(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<prism_q::sim::noise::NoiseModel>
pub fn prism_q::sim::noise::builder::NoiseBuilder::crosstalk(self, prism_q::sim::noise::builder::GateFilter, impl core::iter::traits::collect::IntoIterator<Item = (usize, usize)>, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::new() -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::on_idle_qubits(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::over_rotation(self, prism_q::sim::noise::builder::GateFilter, f64) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::readout_error(self, usize, f64, f64) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::uniform_readout_error(self, f64, f64) -> Self
#[non_exhaustive] pub enum prism_q::sim::noise::NoiseChannel
pub prism_q::sim::noise::NoiseChannel::AmplitudeDamping
pub prism_q::sim::noise::NoiseChannel::AmplitudeDamping::gamma: f64
pub prism_q::sim::noise::NoiseChannel::Custom
pub prism_q::sim::noise::NoiseChannel::Custom::kraus: alloc::vec::Vec<[[num_complex::Complex64; 2]; 2]>
pub prism_q::sim::noise::NoiseChannel::Depolarizing
pub prism_q::sim::noise::NoiseChannel::Depolarizing::p: f64
pub prism_q::sim::noise::NoiseChannel::Kraus2q
pub prism_q::sim::noise::NoiseChannel::Kraus2q::kraus: alloc::vec::Vec<[[num_complex::Complex64; 4]; 4]>
pub prism_q::sim::noise::NoiseChannel::Pauli
pub prism_q::sim::noise::NoiseChannel::Pauli::px: f64
pub prism_q::sim::noise::NoiseChannel::Pauli::py: f64
pub prism_q::sim::noise::NoiseChannel::Pauli::pz: f64
pub prism_q::sim::noise::NoiseChannel::PhaseDamping
pub prism_q::sim::noise::NoiseChannel::PhaseDamping::gamma: f64
pub prism_q::sim::noise::NoiseChannel::ThermalRelaxation
pub prism_q::sim::noise::NoiseChannel::ThermalRelaxation::excited_population: f64
pub prism_q::sim::noise::NoiseChannel::ThermalRelaxation::gate_time: f64
pub prism_q::sim::noise::NoiseChannel::ThermalRelaxation::t1: f64
pub prism_q::sim::noise::NoiseChannel::ThermalRelaxation::t2: f64
pub prism_q::sim::noise::NoiseChannel::TwoQubitDepolarizing
pub prism_q::sim::noise::NoiseChannel::TwoQubitDepolarizing::p: f64
impl prism_q::sim::noise::NoiseChannel
pub fn prism_q::sim::noise::NoiseChannel::as_pauli(&self) -> core::option::Option<(f64, f64, f64)>
pub fn prism_q::sim::noise::NoiseChannel::is_exactly_samplable(&self) -> bool
pub fn prism_q::sim::noise::NoiseChannel::is_pauli(&self) -> bool
pub fn prism_q::sim::noise::NoiseChannel::num_qubits(&self) -> usize
pub fn prism_q::sim::noise::NoiseChannel::pauli_pair_rate(&self) -> core::option::Option<f64>
pub fn prism_q::sim::noise::NoiseChannel::validate(&self) -> prism_q::error::Result<()>
pub struct prism_q::sim::noise::GateFilter
impl prism_q::sim::noise::builder::GateFilter
pub fn prism_q::sim::noise::builder::GateFilter::all() -> Self
pub fn prism_q::sim::noise::builder::GateFilter::arity(self, usize) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::named(self, impl core::convert::Into<alloc::string::String>) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::on_qubits(self, impl core::iter::traits::collect::IntoIterator<Item = usize>) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::on_targets(self, impl core::iter::traits::collect::IntoIterator<Item = usize>) -> Self
pub struct prism_q::sim::noise::NoiseBuilder
impl prism_q::sim::noise::builder::NoiseBuilder
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_gates(self, prism_q::sim::noise::builder::GateFilter, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_gates_joint(self, prism_q::sim::noise::builder::GateFilter, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_resets(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::before_measurements(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::build(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<prism_q::sim::noise::NoiseModel>
pub fn prism_q::sim::noise::builder::NoiseBuilder::crosstalk(self, prism_q::sim::noise::builder::GateFilter, impl core::iter::traits::collect::IntoIterator<Item = (usize, usize)>, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::new() -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::on_idle_qubits(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::over_rotation(self, prism_q::sim::noise::builder::GateFilter, f64) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::readout_error(self, usize, f64, f64) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::uniform_readout_error(self, f64, f64) -> Self
pub struct prism_q::sim::noise::NoiseEvent
pub prism_q::sim::noise::NoiseEvent::channel: prism_q::sim::noise::NoiseChannel
pub prism_q::sim::noise::NoiseEvent::qubits: smallvec::SmallVec<[usize; 2]>
impl prism_q::sim::noise::NoiseEvent
pub fn prism_q::sim::noise::NoiseEvent::pauli(usize, f64, f64, f64) -> Self
pub fn prism_q::sim::noise::NoiseEvent::pauli_pair(&self) -> core::option::Option<(usize, usize, f64)>
pub fn prism_q::sim::noise::NoiseEvent::pauli_probs(&self) -> (f64, f64, f64)
pub fn prism_q::sim::noise::NoiseEvent::qubit(&self) -> usize
pub struct prism_q::sim::noise::NoiseModel
pub prism_q::sim::noise::NoiseModel::after_gate: alloc::vec::Vec<alloc::vec::Vec<prism_q::sim::noise::NoiseEvent>>
pub prism_q::sim::noise::NoiseModel::readout: alloc::vec::Vec<core::option::Option<prism_q::sim::noise::ReadoutError>>
impl prism_q::sim::noise::NoiseModel
pub fn prism_q::sim::noise::NoiseModel::has_noise(&self) -> bool
pub fn prism_q::sim::noise::NoiseModel::is_pauli_only(&self) -> bool
pub fn prism_q::sim::noise::NoiseModel::set_bit_readout_error(&mut self, usize, f64, f64) -> &mut Self
pub fn prism_q::sim::noise::NoiseModel::uniform_depolarizing(&prism_q::circuit::Circuit, f64) -> Self
pub fn prism_q::sim::noise::NoiseModel::validate(&self) -> prism_q::error::Result<()>
pub fn prism_q::sim::noise::NoiseModel::validate_for(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<()>
pub fn prism_q::sim::noise::NoiseModel::with_amplitude_damping(&prism_q::circuit::Circuit, f64) -> Self
pub fn prism_q::sim::noise::NoiseModel::with_readout_error(&mut self, f64, f64) -> &mut Self
pub struct prism_q::sim::noise::NoisyCompiledSampler
impl prism_q::sim::noise::NoisyCompiledSampler
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_bulk_packed(&mut self, usize) -> prism_q::sim::compiled::PackedShots
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_chunked<A: prism_q::ShotAccumulator>(&mut self, usize, &mut A)
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_chunked_with_size<A: prism_q::ShotAccumulator>(&mut self, usize, usize, &mut A)
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_counts(&mut self, usize) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_marginals(&mut self, usize) -> alloc::vec::Vec<f64>
pub fn prism_q::sim::noise::NoisyCompiledSampler::try_sample_bulk_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::noise::NoisyCompiledSampler::try_sample_counts(&mut self, usize) -> prism_q::error::Result<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::noise::NoisyCompiledSampler::try_sample_marginals(&mut self, usize) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::noise::NoisyCompiledSampler::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub struct prism_q::sim::noise::ReadoutError
pub prism_q::sim::noise::ReadoutError::p01: f64
pub prism_q::sim::noise::ReadoutError::p10: f64
pub fn prism_q::sim::noise::compile_noisy(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, u64) -> prism_q::error::Result<prism_q::sim::noise::NoisyCompiledSampler>
pub fn prism_q::sim::noise::density_matrix_expectation_values(&prism_q::circuit::Circuit, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], core::option::Option<&prism_q::sim::noise::NoiseModel>, u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::noise::run_shots_noisy(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, usize, u64) -> prism_q::error::Result<prism_q::ShotsResult>
pub mod prism_q::sim::stabilizer_rank
pub struct prism_q::sim::stabilizer_rank::StabRankResult
pub prism_q::sim::stabilizer_rank::StabRankResult::discarded_weight: f64
pub prism_q::sim::stabilizer_rank::StabRankResult::num_terms: usize
pub prism_q::sim::stabilizer_rank::StabRankResult::probabilities: alloc::vec::Vec<f64>
pub prism_q::sim::stabilizer_rank::StabRankResult::pruned_count: usize
pub prism_q::sim::stabilizer_rank::StabRankResult::t_count: usize
impl prism_q::sim::stabilizer_rank::StabRankResult
pub fn prism_q::sim::stabilizer_rank::StabRankResult::fidelity_bound(&self) -> f64
pub fn prism_q::sim::stabilizer_rank::run_stabilizer_rank(&prism_q::circuit::Circuit, u64) -> prism_q::error::Result<prism_q::sim::stabilizer_rank::StabRankResult>
pub fn prism_q::sim::stabilizer_rank::run_stabilizer_rank_approx(&prism_q::circuit::Circuit, usize, u64) -> prism_q::error::Result<prism_q::sim::stabilizer_rank::StabRankResult>
pub fn prism_q::sim::stabilizer_rank::run_stabilizer_rank_shots(&prism_q::circuit::Circuit, usize, u64) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::sim::stabilizer_rank::stabilizer_inner_product(&prism_q::backend::stabilizer::StabilizerBackend, &prism_q::backend::stabilizer::StabilizerBackend, usize) -> prism_q::error::Result<num_complex::Complex64>
pub fn prism_q::sim::stabilizer_rank::stabilizer_overlap_sq(&prism_q::backend::stabilizer::StabilizerBackend, &prism_q::backend::stabilizer::StabilizerBackend, usize) -> f64
pub mod prism_q::sim::unified_pauli
pub enum prism_q::sim::unified_pauli::PauliAxis
pub prism_q::sim::unified_pauli::PauliAxis::X
pub prism_q::sim::unified_pauli::PauliAxis::Y
pub prism_q::sim::unified_pauli::PauliAxis::Z
impl prism_q::sim::unified_pauli::PauliAxis
pub fn prism_q::sim::unified_pauli::PauliAxis::from_letter(char) -> core::option::Option<Self>
pub fn prism_q::sim::unified_pauli::PauliAxis::letter(self) -> char
impl core::convert::From<prism_q::qec::QecBasis> for prism_q::sim::unified_pauli::PauliAxis
pub fn prism_q::sim::unified_pauli::PauliAxis::from(prism_q::qec::QecBasis) -> Self
#[non_exhaustive] pub enum prism_q::sim::unified_pauli::SpdTruncation
pub prism_q::sim::unified_pauli::SpdTruncation::Budget
pub prism_q::sim::unified_pauli::SpdTruncation::Budget::max_terms: usize
pub prism_q::sim::unified_pauli::SpdTruncation::Threshold
pub prism_q::sim::unified_pauli::SpdTruncation::Threshold::epsilon: f64
pub prism_q::sim::unified_pauli::SpdTruncation::Threshold::max_terms: usize
pub struct prism_q::sim::unified_pauli::PauliPathResult
pub prism_q::sim::unified_pauli::PauliPathResult::mean: f64
pub prism_q::sim::unified_pauli::PauliPathResult::peak_terms: usize
pub prism_q::sim::unified_pauli::PauliPathResult::total_discarded: f64
pub struct prism_q::sim::unified_pauli::PauliTerm
pub prism_q::sim::unified_pauli::PauliTerm::axis: prism_q::sim::unified_pauli::PauliAxis
pub prism_q::sim::unified_pauli::PauliTerm::qubit: usize
impl prism_q::sim::unified_pauli::PauliTerm
pub fn prism_q::sim::unified_pauli::PauliTerm::new(usize, prism_q::sim::unified_pauli::PauliAxis) -> Self
pub fn prism_q::sim::unified_pauli::PauliTerm::x(usize) -> Self
pub fn prism_q::sim::unified_pauli::PauliTerm::y(usize) -> Self
pub fn prism_q::sim::unified_pauli::PauliTerm::z(usize) -> Self
pub struct prism_q::sim::unified_pauli::SpdObservableResult
pub prism_q::sim::unified_pauli::SpdObservableResult::mean: f64
pub prism_q::sim::unified_pauli::SpdObservableResult::peak_terms: usize
pub prism_q::sim::unified_pauli::SpdObservableResult::t_count: usize
pub prism_q::sim::unified_pauli::SpdObservableResult::total_discarded: f64
pub struct prism_q::sim::unified_pauli::SpdResult
pub prism_q::sim::unified_pauli::SpdResult::expectations: alloc::vec::Vec<f64>
pub prism_q::sim::unified_pauli::SpdResult::max_terms: usize
pub prism_q::sim::unified_pauli::SpdResult::t_count: usize
pub prism_q::sim::unified_pauli::SpdResult::total_discarded: f64
pub struct prism_q::sim::unified_pauli::SppObservableResult
pub prism_q::sim::unified_pauli::SppObservableResult::mean: f64
pub prism_q::sim::unified_pauli::SppObservableResult::nonzero_fraction: f64
pub prism_q::sim::unified_pauli::SppObservableResult::num_samples: usize
pub prism_q::sim::unified_pauli::SppObservableResult::std_error: f64
pub prism_q::sim::unified_pauli::SppObservableResult::t_count: usize
pub prism_q::sim::unified_pauli::SppObservableResult::variance: f64
pub struct prism_q::sim::unified_pauli::SppResult
pub prism_q::sim::unified_pauli::SppResult::expectations: alloc::vec::Vec<f64>
pub prism_q::sim::unified_pauli::SppResult::nonzero_fraction: f64
pub prism_q::sim::unified_pauli::SppResult::num_samples: usize
pub prism_q::sim::unified_pauli::SppResult::std_errors: alloc::vec::Vec<f64>
pub prism_q::sim::unified_pauli::SppResult::t_count: usize
pub fn prism_q::sim::unified_pauli::inverse_light_cone(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm]) -> alloc::vec::Vec<bool>
pub fn prism_q::sim::unified_pauli::run_pauli_path_observable(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, &[prism_q::sim::unified_pauli::PauliTerm], f64, usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::PauliPathResult>
pub fn prism_q::sim::unified_pauli::run_spd(&prism_q::circuit::Circuit, f64, usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdResult>
pub fn prism_q::sim::unified_pauli::run_spd_observable(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm], f64, usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdObservableResult>
pub fn prism_q::sim::unified_pauli::run_spd_observable_budgeted(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm], usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdObservableResult>
pub fn prism_q::sim::unified_pauli::run_spd_observable_light_cone(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm], f64, usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdObservableResult>
pub fn prism_q::sim::unified_pauli::run_spd_with(&prism_q::circuit::Circuit, &prism_q::sim::unified_pauli::SpdTruncation) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdResult>
pub fn prism_q::sim::unified_pauli::run_spp(&prism_q::circuit::Circuit, usize, u64) -> prism_q::error::Result<prism_q::sim::unified_pauli::SppResult>
pub fn prism_q::sim::unified_pauli::run_spp_observable(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm], usize, u64) -> prism_q::error::Result<prism_q::sim::unified_pauli::SppObservableResult>
#[non_exhaustive] pub enum prism_q::sim::BackendKind
pub prism_q::sim::BackendKind::Auto
pub prism_q::sim::BackendKind::AutoGpu
pub prism_q::sim::BackendKind::AutoGpu::context: alloc::sync::Arc<prism_q::gpu::GpuContext>
pub prism_q::sim::BackendKind::DensityMatrix
pub prism_q::sim::BackendKind::DensityMatrixGpu
pub prism_q::sim::BackendKind::DensityMatrixGpu::context: alloc::sync::Arc<prism_q::gpu::GpuContext>
pub prism_q::sim::BackendKind::DeterministicPauli
pub prism_q::sim::BackendKind::DeterministicPauli::truncation: prism_q::sim::unified_pauli::SpdTruncation
pub prism_q::sim::BackendKind::Factored
pub prism_q::sim::BackendKind::FactoredStabilizer
pub prism_q::sim::BackendKind::Mps
pub prism_q::sim::BackendKind::Mps::max_bond_dim: usize
pub prism_q::sim::BackendKind::PauliPath
pub prism_q::sim::BackendKind::PauliPath::epsilon: f64
pub prism_q::sim::BackendKind::PauliPath::max_terms: usize
pub prism_q::sim::BackendKind::ProductState
pub prism_q::sim::BackendKind::Sparse
pub prism_q::sim::BackendKind::Stabilizer
pub prism_q::sim::BackendKind::StabilizerGpu
pub prism_q::sim::BackendKind::StabilizerGpu::context: alloc::sync::Arc<prism_q::gpu::GpuContext>
pub prism_q::sim::BackendKind::StabilizerRank
pub prism_q::sim::BackendKind::Statevector
pub prism_q::sim::BackendKind::StatevectorDistributed
pub prism_q::sim::BackendKind::StatevectorDistributed::context: alloc::sync::Arc<prism_q::distributed::DistributedContext>
pub prism_q::sim::BackendKind::StatevectorGpu
pub prism_q::sim::BackendKind::StatevectorGpu::context: alloc::sync::Arc<prism_q::gpu::GpuContext>
pub prism_q::sim::BackendKind::StochasticPauli
pub prism_q::sim::BackendKind::StochasticPauli::num_samples: usize
pub prism_q::sim::BackendKind::TensorNetwork
pub prism_q::sim::BackendKind::TensorNetworkBounded
pub prism_q::sim::BackendKind::TensorNetworkBounded::tolerance: f64
impl prism_q::BackendKind
pub fn prism_q::BackendKind::supports_general_noise(&self) -> bool
pub fn prism_q::BackendKind::supports_noisy_per_shot(&self) -> bool
#[non_exhaustive] pub enum prism_q::sim::Engine
pub prism_q::sim::Engine::CompiledSampler
pub prism_q::sim::Engine::FrameSampler
pub prism_q::sim::Engine::NoisyCompiledSampler
#[non_exhaustive] pub enum prism_q::sim::Exactness
pub prism_q::sim::Exactness::Approximate
pub prism_q::sim::Exactness::Approximate::fidelity_lower_bound: core::option::Option<f64>
pub prism_q::sim::Exactness::Exact
#[non_exhaustive] pub enum prism_q::sim::Placement
pub prism_q::sim::Placement::Device
pub prism_q::sim::Placement::Host
#[non_exhaustive] pub enum prism_q::sim::Probabilities
pub prism_q::sim::Probabilities::Dense(alloc::vec::Vec<f64>)
pub prism_q::sim::Probabilities::Factored
pub prism_q::sim::Probabilities::Factored::blocks: alloc::vec::Vec<prism_q::FactoredBlock>
pub prism_q::sim::Probabilities::Factored::total_qubits: usize
impl prism_q::Probabilities
pub fn prism_q::Probabilities::get(&self, usize) -> f64
pub fn prism_q::Probabilities::is_empty(&self) -> bool
pub fn prism_q::Probabilities::iter(&self) -> prism_q::sim::ProbabilitiesIter<'_>
pub fn prism_q::Probabilities::len(&self) -> usize
pub fn prism_q::Probabilities::marginals(&self) -> alloc::vec::Vec<(f64, f64)>
pub fn prism_q::Probabilities::subset_marginal(&self, &[usize]) -> alloc::vec::Vec<f64>
pub fn prism_q::Probabilities::to_vec(&self) -> alloc::vec::Vec<f64>
#[non_exhaustive] pub enum prism_q::sim::ResolvedBackend
pub prism_q::sim::ResolvedBackend::CompiledStabilizer
pub prism_q::sim::ResolvedBackend::Decomposed
pub prism_q::sim::ResolvedBackend::DensityMatrix
pub prism_q::sim::ResolvedBackend::DeterministicPauli
pub prism_q::sim::ResolvedBackend::Distributed
pub prism_q::sim::ResolvedBackend::Factored
pub prism_q::sim::ResolvedBackend::FactoredStabilizer
pub prism_q::sim::ResolvedBackend::Mps
pub prism_q::sim::ResolvedBackend::Other(&'static str)
pub prism_q::sim::ResolvedBackend::PauliPath
pub prism_q::sim::ResolvedBackend::ProductState
pub prism_q::sim::ResolvedBackend::Sparse
pub prism_q::sim::ResolvedBackend::Stabilizer
pub prism_q::sim::ResolvedBackend::StabilizerRank
pub prism_q::sim::ResolvedBackend::Statevector
pub prism_q::sim::ResolvedBackend::StochasticPauli
pub prism_q::sim::ResolvedBackend::TensorNetwork
#[non_exhaustive] pub enum prism_q::sim::ResultValue
pub prism_q::sim::ResultValue::Amplitude(alloc::vec::Vec<(alloc::string::String, num_complex::Complex64)>)
pub prism_q::sim::ResultValue::DensityMatrix(alloc::vec::Vec<alloc::vec::Vec<num_complex::Complex64>>)
pub prism_q::sim::ResultValue::Expectation(alloc::vec::Vec<f64>)
pub prism_q::sim::ResultValue::Probability(alloc::vec::Vec<f64>)
pub prism_q::sim::ResultValue::Sample(alloc::vec::Vec<alloc::vec::Vec<f64>>)
pub prism_q::sim::ResultValue::StateVector(alloc::vec::Vec<num_complex::Complex64>)
pub prism_q::sim::ResultValue::Variance(alloc::vec::Vec<f64>)
pub struct prism_q::sim::BondReport
pub prism_q::sim::BondReport::cap: usize
pub prism_q::sim::BondReport::peak: usize
impl prism_q::BondReport
pub fn prism_q::BondReport::saturated(&self) -> bool
pub struct prism_q::sim::CountsResult
pub prism_q::sim::CountsResult::counts: std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub prism_q::sim::CountsResult::metadata: prism_q::RunMetadata
pub prism_q::sim::CountsResult::num_classical_bits: usize
impl prism_q::sim::CountsResult
pub fn prism_q::sim::CountsResult::into_counts(self) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub struct prism_q::sim::EntropyResult
pub prism_q::sim::EntropyResult::entropy: f64
pub prism_q::sim::EntropyResult::metadata: prism_q::RunMetadata
pub prism_q::sim::EntropyResult::schmidt_values: core::option::Option<alloc::vec::Vec<f64>>
pub prism_q::sim::EntropyResult::subsystem: alloc::vec::Vec<usize>
pub struct prism_q::sim::ExpectationResult
pub prism_q::sim::ExpectationResult::metadata: prism_q::RunMetadata
pub prism_q::sim::ExpectationResult::std_errors: core::option::Option<alloc::vec::Vec<f64>>
pub prism_q::sim::ExpectationResult::values: alloc::vec::Vec<f64>
impl prism_q::ExpectationResult
pub fn prism_q::ExpectationResult::into_values(self) -> alloc::vec::Vec<f64>
pub struct prism_q::sim::FactoredBlock
pub prism_q::sim::FactoredBlock::mask: u64
pub prism_q::sim::FactoredBlock::probs: alloc::vec::Vec<f64>
pub struct prism_q::sim::MarginalsResult
pub prism_q::sim::MarginalsResult::marginals: alloc::vec::Vec<(f64, f64)>
pub prism_q::sim::MarginalsResult::metadata: prism_q::RunMetadata
impl prism_q::sim::MarginalsResult
pub fn prism_q::sim::MarginalsResult::into_vec(self) -> alloc::vec::Vec<(f64, f64)>
pub struct prism_q::sim::ObservableExpectation
pub prism_q::sim::ObservableExpectation::group_variances: core::option::Option<alloc::vec::Vec<f64>>
pub prism_q::sim::ObservableExpectation::mean: f64
pub prism_q::sim::ObservableExpectation::metadata: prism_q::RunMetadata
pub prism_q::sim::ObservableExpectation::std_error: core::option::Option<f64>
pub prism_q::sim::ObservableExpectation::variance: core::option::Option<f64>
pub struct prism_q::sim::ObservableVariance
pub prism_q::sim::ObservableVariance::mean: f64
pub prism_q::sim::ObservableVariance::metadata: prism_q::RunMetadata
pub prism_q::sim::ObservableVariance::variance: f64
pub struct prism_q::sim::OverlapResult
pub prism_q::sim::OverlapResult::fidelity: f64
pub prism_q::sim::OverlapResult::left: prism_q::RunMetadata
pub prism_q::sim::OverlapResult::right: prism_q::RunMetadata
pub struct prism_q::sim::PauliObservable
impl prism_q::PauliObservable
pub fn prism_q::PauliObservable::add_term(&mut self, f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>) -> prism_q::error::Result<()>
pub fn prism_q::PauliObservable::from_terms(impl core::iter::traits::collect::IntoIterator<Item = (f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)>) -> prism_q::error::Result<Self>
pub fn prism_q::PauliObservable::new() -> Self
pub fn prism_q::PauliObservable::num_groups(&self) -> usize
pub fn prism_q::PauliObservable::num_terms(&self) -> usize
pub fn prism_q::PauliObservable::split_identity(&self) -> (f64, prism_q::PauliObservable)
pub fn prism_q::PauliObservable::square(&self) -> prism_q::PauliObservable
pub fn prism_q::PauliObservable::terms(&self) -> &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)]
impl core::ops::arith::Add for prism_q::PauliObservable
pub type prism_q::PauliObservable::Output = prism_q::PauliObservable
pub fn prism_q::PauliObservable::add(self, prism_q::PauliObservable) -> prism_q::PauliObservable
impl core::ops::arith::Mul<f64> for prism_q::PauliObservable
pub type prism_q::PauliObservable::Output = prism_q::PauliObservable
pub fn prism_q::PauliObservable::mul(self, f64) -> prism_q::PauliObservable
impl core::ops::arith::Neg for prism_q::PauliObservable
pub type prism_q::PauliObservable::Output = prism_q::PauliObservable
pub fn prism_q::PauliObservable::neg(self) -> prism_q::PauliObservable
impl core::ops::arith::Sub for prism_q::PauliObservable
pub type prism_q::PauliObservable::Output = prism_q::PauliObservable
pub fn prism_q::PauliObservable::sub(self, prism_q::PauliObservable) -> prism_q::PauliObservable
pub struct prism_q::sim::ProbabilitiesIter<'a>
impl core::iter::traits::exact_size::ExactSizeIterator for prism_q::sim::ProbabilitiesIter<'_>
impl core::iter::traits::iterator::Iterator for prism_q::sim::ProbabilitiesIter<'_>
pub type prism_q::sim::ProbabilitiesIter<'_>::Item = f64
pub fn prism_q::sim::ProbabilitiesIter<'_>::next(&mut self) -> core::option::Option<Self::Item>
pub fn prism_q::sim::ProbabilitiesIter<'_>::size_hint(&self) -> (usize, core::option::Option<usize>)
pub struct prism_q::sim::ReducedDensityMatrix
pub prism_q::sim::ReducedDensityMatrix::data: alloc::vec::Vec<num_complex::Complex64>
pub prism_q::sim::ReducedDensityMatrix::metadata: prism_q::RunMetadata
pub prism_q::sim::ReducedDensityMatrix::qubits: alloc::vec::Vec<usize>
impl prism_q::sim::ReducedDensityMatrix
pub fn prism_q::sim::ReducedDensityMatrix::purity(&self) -> f64
#[non_exhaustive] pub struct prism_q::sim::RunMetadata
pub prism_q::sim::RunMetadata::backend: prism_q::ResolvedBackend
pub prism_q::sim::RunMetadata::bond: core::option::Option<prism_q::BondReport>
pub prism_q::sim::RunMetadata::engine: core::option::Option<prism_q::Engine>
pub prism_q::sim::RunMetadata::exactness: prism_q::Exactness
pub prism_q::sim::RunMetadata::placement: prism_q::Placement
pub prism_q::sim::RunMetadata::shots: core::option::Option<usize>
impl prism_q::RunMetadata
pub fn prism_q::RunMetadata::fidelity_lower_bound(&self) -> core::option::Option<f64>
pub fn prism_q::RunMetadata::is_exact(&self) -> bool
pub struct prism_q::sim::RunOutcome
pub prism_q::sim::RunOutcome::classical_bits: alloc::vec::Vec<bool>
pub prism_q::sim::RunOutcome::metadata: prism_q::RunMetadata
pub prism_q::sim::RunOutcome::probabilities: core::option::Option<prism_q::Probabilities>
pub prism_q::sim::RunOutcome::saves: alloc::vec::Vec<prism_q::circuit::SaveRecord>
pub struct prism_q::sim::Seeded
pub struct prism_q::sim::ShotsResult
pub prism_q::sim::ShotsResult::metadata: prism_q::RunMetadata
pub prism_q::sim::ShotsResult::shots: alloc::vec::Vec<alloc::vec::Vec<bool>>
impl prism_q::ShotsResult
pub fn prism_q::ShotsResult::counts(&self) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::ShotsResult::num_classical_bits(&self) -> usize
pub fn prism_q::ShotsResult::num_shots(&self) -> usize
impl core::fmt::Display for prism_q::ShotsResult
pub fn prism_q::ShotsResult::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub struct prism_q::sim::Simulate<'c, SeedState>
impl<'c, SeedState> prism_q::sim::Simulate<'c, SeedState>
pub fn prism_q::sim::Simulate<'c, SeedState>::backend(self, prism_q::BackendKind) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::distributed(self, alloc::sync::Arc<prism_q::distributed::DistributedContext>) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::gpu_auto(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::initial_density_matrix(self, &'c [num_complex::Complex64]) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::initial_state(self, &'c [num_complex::Complex64]) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::noise(self, &'c prism_q::sim::noise::NoiseModel) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::require_exact(self) -> Self
impl<'c> prism_q::sim::Simulate<'c, prism_q::sim::Seeded>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::braket_results(self, &[prism_q::circuit::braket::ResultSpec]) -> prism_q::error::Result<alloc::vec::Vec<prism_q::sim::braket::ResultValue>>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::braket_results_sampled(self, &[prism_q::circuit::braket::ResultSpec], usize) -> prism_q::error::Result<alloc::vec::Vec<prism_q::sim::braket::ResultValue>>
impl<'c> prism_q::sim::Simulate<'c, prism_q::sim::Seeded>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::entanglement_entropy(self, &[usize]) -> prism_q::error::Result<prism_q::sim::EntropyResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::expectation_gradient(self, &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)], &prism_q::circuit::parameter::Parameters) -> prism_q::error::Result<prism_q::sim::gradient::ExpectationGradient>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::expectation_gradient_shift(self, &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)], &prism_q::circuit::parameter::Parameters) -> prism_q::error::Result<prism_q::sim::gradient::ExpectationGradient>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::expectation_values(self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::expectation_values_reported(self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<prism_q::ExpectationResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::marginals(self) -> prism_q::error::Result<prism_q::sim::MarginalsResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::observable_expectation(self, &prism_q::PauliObservable) -> prism_q::error::Result<prism_q::ObservableExpectation>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::observable_variance(self, &prism_q::PauliObservable) -> prism_q::error::Result<prism_q::sim::ObservableVariance>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::overlap(self, prism_q::sim::Simulate<'_, prism_q::sim::Seeded>) -> prism_q::error::Result<prism_q::sim::OverlapResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::probabilities_of(self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::reduced_density_matrix(self, &[usize]) -> prism_q::error::Result<prism_q::sim::ReducedDensityMatrix>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::run(self) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::sample_counts(self, usize) -> prism_q::error::Result<prism_q::sim::CountsResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::shots(self, usize) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::state_vector(self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
impl<'c> prism_q::sim::Simulate<'c, prism_q::sim::Unseeded>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Unseeded>::seed(self, u64) -> prism_q::sim::Simulate<'c, prism_q::sim::Seeded>
pub struct prism_q::sim::Unseeded
pub fn prism_q::sim::bitstring(&[u64], usize) -> alloc::string::String
pub fn prism_q::sim::run_batch(&[prism_q::circuit::Circuit], prism_q::BackendKind, u64) -> prism_q::error::Result<alloc::vec::Vec<prism_q::sim::RunOutcome>>
pub fn prism_q::sim::run_expectation_values(&prism_q::circuit::Circuit, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::run_observable_expectation(&prism_q::circuit::Circuit, &prism_q::PauliObservable, u64) -> prism_q::error::Result<prism_q::ObservableExpectation>
pub fn prism_q::sim::run_on(&mut dyn prism_q::backend::Backend, &prism_q::circuit::Circuit) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::sim::run_on_state(&mut dyn prism_q::backend::Backend, &prism_q::circuit::Circuit, &[num_complex::Complex64]) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::sim::run_qasm(&str, u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::sim::simulate(&prism_q::circuit::Circuit) -> prism_q::sim::Simulate<'_, prism_q::sim::Unseeded>
pub mod prism_q::threading
pub struct prism_q::threading::ThreadPool
impl prism_q::threading::ThreadPool
pub fn prism_q::threading::ThreadPool::install<T: core::marker::Send>(&self, impl core::ops::function::FnOnce() -> T + core::marker::Send) -> T
pub fn prism_q::threading::ThreadPool::num_threads(&self) -> usize
pub fn prism_q::threading::ThreadPool::with_threads(usize) -> prism_q::error::Result<Self>
#[non_exhaustive] pub enum prism_q::BackendKind
pub prism_q::BackendKind::Auto
pub prism_q::BackendKind::AutoGpu
pub prism_q::BackendKind::AutoGpu::context: alloc::sync::Arc<prism_q::gpu::GpuContext>
pub prism_q::BackendKind::DensityMatrix
pub prism_q::BackendKind::DensityMatrixGpu
pub prism_q::BackendKind::DensityMatrixGpu::context: alloc::sync::Arc<prism_q::gpu::GpuContext>
pub prism_q::BackendKind::DeterministicPauli
pub prism_q::BackendKind::DeterministicPauli::truncation: prism_q::sim::unified_pauli::SpdTruncation
pub prism_q::BackendKind::Factored
pub prism_q::BackendKind::FactoredStabilizer
pub prism_q::BackendKind::Mps
pub prism_q::BackendKind::Mps::max_bond_dim: usize
pub prism_q::BackendKind::PauliPath
pub prism_q::BackendKind::PauliPath::epsilon: f64
pub prism_q::BackendKind::PauliPath::max_terms: usize
pub prism_q::BackendKind::ProductState
pub prism_q::BackendKind::Sparse
pub prism_q::BackendKind::Stabilizer
pub prism_q::BackendKind::StabilizerGpu
pub prism_q::BackendKind::StabilizerGpu::context: alloc::sync::Arc<prism_q::gpu::GpuContext>
pub prism_q::BackendKind::StabilizerRank
pub prism_q::BackendKind::Statevector
pub prism_q::BackendKind::StatevectorDistributed
pub prism_q::BackendKind::StatevectorDistributed::context: alloc::sync::Arc<prism_q::distributed::DistributedContext>
pub prism_q::BackendKind::StatevectorGpu
pub prism_q::BackendKind::StatevectorGpu::context: alloc::sync::Arc<prism_q::gpu::GpuContext>
pub prism_q::BackendKind::StochasticPauli
pub prism_q::BackendKind::StochasticPauli::num_samples: usize
pub prism_q::BackendKind::TensorNetwork
pub prism_q::BackendKind::TensorNetworkBounded
pub prism_q::BackendKind::TensorNetworkBounded::tolerance: f64
impl prism_q::BackendKind
pub fn prism_q::BackendKind::supports_general_noise(&self) -> bool
pub fn prism_q::BackendKind::supports_noisy_per_shot(&self) -> bool
#[non_exhaustive] pub enum prism_q::ClassicalCondition
pub prism_q::ClassicalCondition::BitIsOne(usize)
pub prism_q::ClassicalCondition::BitIsZero(usize)
pub prism_q::ClassicalCondition::Parity
pub prism_q::ClassicalCondition::Parity::bits: alloc::boxed::Box<[usize]>
pub prism_q::ClassicalCondition::Parity::expected: bool
pub prism_q::ClassicalCondition::RegisterEquals
pub prism_q::ClassicalCondition::RegisterEquals::offset: usize
pub prism_q::ClassicalCondition::RegisterEquals::size: usize
pub prism_q::ClassicalCondition::RegisterEquals::value: u64
pub prism_q::ClassicalCondition::RegisterNotEquals
pub prism_q::ClassicalCondition::RegisterNotEquals::offset: usize
pub prism_q::ClassicalCondition::RegisterNotEquals::size: usize
pub prism_q::ClassicalCondition::RegisterNotEquals::value: u64
impl prism_q::circuit::ClassicalCondition
pub fn prism_q::circuit::ClassicalCondition::evaluate(&self, &[bool]) -> bool
pub fn prism_q::circuit::ClassicalCondition::negate(&self) -> prism_q::circuit::ClassicalCondition
#[non_exhaustive] pub enum prism_q::Engine
pub prism_q::Engine::CompiledSampler
pub prism_q::Engine::FrameSampler
pub prism_q::Engine::NoisyCompiledSampler
#[non_exhaustive] pub enum prism_q::Exactness
pub prism_q::Exactness::Approximate
pub prism_q::Exactness::Approximate::fidelity_lower_bound: core::option::Option<f64>
pub prism_q::Exactness::Exact
#[non_exhaustive] pub enum prism_q::Gate
pub prism_q::Gate::BatchPhase(alloc::boxed::Box<prism_q::gates::BatchPhaseData>)
pub prism_q::Gate::BatchRzz(alloc::boxed::Box<prism_q::gates::BatchRzzData>)
pub prism_q::Gate::Cu(alloc::boxed::Box<[[num_complex::Complex64; 2]; 2]>)
pub prism_q::Gate::Cx
pub prism_q::Gate::Cz
pub prism_q::Gate::DiagonalBatch(alloc::boxed::Box<prism_q::gates::DiagonalBatchData>)
pub prism_q::Gate::Fused(alloc::boxed::Box<[[num_complex::Complex64; 2]; 2]>)
pub prism_q::Gate::Fused2q(alloc::boxed::Box<[[num_complex::Complex64; 4]; 4]>)
pub prism_q::Gate::H
pub prism_q::Gate::Id
pub prism_q::Gate::Mcu(alloc::boxed::Box<prism_q::gates::McuData>)
pub prism_q::Gate::Multi2q(alloc::boxed::Box<prism_q::gates::Multi2qData>)
pub prism_q::Gate::MultiFused(alloc::boxed::Box<prism_q::gates::MultiFusedData>)
pub prism_q::Gate::P(f64)
pub prism_q::Gate::PauliRot(alloc::boxed::Box<prism_q::gates::PauliRotData>)
pub prism_q::Gate::QftBlock
pub prism_q::Gate::QftBlock::num: u8
pub prism_q::Gate::QftBlock::start: u8
pub prism_q::Gate::Rx(f64)
pub prism_q::Gate::Ry(f64)
pub prism_q::Gate::Rz(f64)
pub prism_q::Gate::Rzz(f64)
pub prism_q::Gate::S
pub prism_q::Gate::SX
pub prism_q::Gate::SXdg
pub prism_q::Gate::Sdg
pub prism_q::Gate::Swap
pub prism_q::Gate::T
pub prism_q::Gate::Tdg
pub prism_q::Gate::Unitary(alloc::boxed::Box<prism_q::gates::UnitaryData>)
pub prism_q::Gate::X
pub prism_q::Gate::Y
pub prism_q::Gate::Z
impl prism_q::gates::Gate
pub fn prism_q::gates::Gate::controlled_phase(&self) -> core::option::Option<num_complex::Complex64>
pub fn prism_q::gates::Gate::cphase(f64) -> prism_q::gates::Gate
pub fn prism_q::gates::Gate::cu([[num_complex::Complex64; 2]; 2]) -> prism_q::gates::Gate
pub fn prism_q::gates::Gate::inverse(&self) -> prism_q::gates::Gate
pub fn prism_q::gates::Gate::is_clifford(&self) -> bool
pub fn prism_q::gates::Gate::is_diagonal_1q(&self) -> bool
pub fn prism_q::gates::Gate::matrix_2x2(&self) -> [[num_complex::Complex64; 2]; 2]
pub fn prism_q::gates::Gate::matrix_4x4(&self) -> [[num_complex::Complex64; 4]; 4]
pub fn prism_q::gates::Gate::mcu([[num_complex::Complex64; 2]; 2], u8) -> prism_q::gates::Gate
pub fn prism_q::gates::Gate::name(&self) -> &'static str
pub fn prism_q::gates::Gate::num_qubits(&self) -> usize
pub fn prism_q::gates::Gate::pauli_generator(&self) -> core::option::Option<prism_q::gates::GeneratorKind<'_>>
pub fn prism_q::gates::Gate::unitary(alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<prism_q::gates::Gate>
impl core::fmt::Display for prism_q::gates::Gate
pub fn prism_q::gates::Gate::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub enum prism_q::GeneratorKind<'a>
pub prism_q::GeneratorKind::Phase
pub prism_q::GeneratorKind::RotPauli(&'a [prism_q::sim::unified_pauli::PauliAxis])
pub prism_q::GeneratorKind::RotX
pub prism_q::GeneratorKind::RotY
pub prism_q::GeneratorKind::RotZ
pub prism_q::GeneratorKind::RotZz
pub enum prism_q::Instruction
pub prism_q::Instruction::Barrier
pub prism_q::Instruction::Barrier::qubits: smallvec::SmallVec<[usize; 4]>
pub prism_q::Instruction::Conditional
pub prism_q::Instruction::Conditional::condition: prism_q::circuit::ClassicalCondition
pub prism_q::Instruction::Conditional::gate: prism_q::gates::Gate
pub prism_q::Instruction::Conditional::targets: smallvec::SmallVec<[usize; 4]>
pub prism_q::Instruction::Gate
pub prism_q::Instruction::Gate::gate: prism_q::gates::Gate
pub prism_q::Instruction::Gate::targets: smallvec::SmallVec<[usize; 4]>
pub prism_q::Instruction::Measure
pub prism_q::Instruction::Measure::classical_bit: usize
pub prism_q::Instruction::Measure::qubit: usize
pub prism_q::Instruction::Region(alloc::boxed::Box<prism_q::circuit::GuardedRegion>)
pub prism_q::Instruction::Reset
pub prism_q::Instruction::Reset::qubit: usize
pub prism_q::Instruction::Save
pub prism_q::Instruction::Save::label: alloc::string::String
pub prism_q::Instruction::Save::qubits: smallvec::SmallVec<[usize; 4]>
pub prism_q::Instruction::Save::spec: prism_q::circuit::SaveSpec
#[non_exhaustive] pub enum prism_q::NoiseChannel
pub prism_q::NoiseChannel::AmplitudeDamping
pub prism_q::NoiseChannel::AmplitudeDamping::gamma: f64
pub prism_q::NoiseChannel::Custom
pub prism_q::NoiseChannel::Custom::kraus: alloc::vec::Vec<[[num_complex::Complex64; 2]; 2]>
pub prism_q::NoiseChannel::Depolarizing
pub prism_q::NoiseChannel::Depolarizing::p: f64
pub prism_q::NoiseChannel::Kraus2q
pub prism_q::NoiseChannel::Kraus2q::kraus: alloc::vec::Vec<[[num_complex::Complex64; 4]; 4]>
pub prism_q::NoiseChannel::Pauli
pub prism_q::NoiseChannel::Pauli::px: f64
pub prism_q::NoiseChannel::Pauli::py: f64
pub prism_q::NoiseChannel::Pauli::pz: f64
pub prism_q::NoiseChannel::PhaseDamping
pub prism_q::NoiseChannel::PhaseDamping::gamma: f64
pub prism_q::NoiseChannel::ThermalRelaxation
pub prism_q::NoiseChannel::ThermalRelaxation::excited_population: f64
pub prism_q::NoiseChannel::ThermalRelaxation::gate_time: f64
pub prism_q::NoiseChannel::ThermalRelaxation::t1: f64
pub prism_q::NoiseChannel::ThermalRelaxation::t2: f64
pub prism_q::NoiseChannel::TwoQubitDepolarizing
pub prism_q::NoiseChannel::TwoQubitDepolarizing::p: f64
impl prism_q::sim::noise::NoiseChannel
pub fn prism_q::sim::noise::NoiseChannel::as_pauli(&self) -> core::option::Option<(f64, f64, f64)>
pub fn prism_q::sim::noise::NoiseChannel::is_exactly_samplable(&self) -> bool
pub fn prism_q::sim::noise::NoiseChannel::is_pauli(&self) -> bool
pub fn prism_q::sim::noise::NoiseChannel::num_qubits(&self) -> usize
pub fn prism_q::sim::noise::NoiseChannel::pauli_pair_rate(&self) -> core::option::Option<f64>
pub fn prism_q::sim::noise::NoiseChannel::validate(&self) -> prism_q::error::Result<()>
pub enum prism_q::PauliAxis
pub prism_q::PauliAxis::X
pub prism_q::PauliAxis::Y
pub prism_q::PauliAxis::Z
impl prism_q::sim::unified_pauli::PauliAxis
pub fn prism_q::sim::unified_pauli::PauliAxis::from_letter(char) -> core::option::Option<Self>
pub fn prism_q::sim::unified_pauli::PauliAxis::letter(self) -> char
impl core::convert::From<prism_q::qec::QecBasis> for prism_q::sim::unified_pauli::PauliAxis
pub fn prism_q::sim::unified_pauli::PauliAxis::from(prism_q::qec::QecBasis) -> Self
#[non_exhaustive] pub enum prism_q::Placement
pub prism_q::Placement::Device
pub prism_q::Placement::Host
#[non_exhaustive] pub enum prism_q::PrismError
pub prism_q::PrismError::BackendUnsupported
pub prism_q::PrismError::BackendUnsupported::backend: alloc::string::String
pub prism_q::PrismError::BackendUnsupported::operation: alloc::string::String
pub prism_q::PrismError::ExportUnsupported
pub prism_q::PrismError::ExportUnsupported::index: usize
pub prism_q::PrismError::ExportUnsupported::reason: alloc::string::String
pub prism_q::PrismError::GateArity
pub prism_q::PrismError::GateArity::expected: usize
pub prism_q::PrismError::GateArity::gate: alloc::string::String
pub prism_q::PrismError::GateArity::got: usize
pub prism_q::PrismError::IncompatibleBackend
pub prism_q::PrismError::IncompatibleBackend::backend: alloc::string::String
pub prism_q::PrismError::IncompatibleBackend::reason: alloc::string::String
pub prism_q::PrismError::InvalidClassicalBit
pub prism_q::PrismError::InvalidClassicalBit::index: usize
pub prism_q::PrismError::InvalidClassicalBit::register_size: usize
pub prism_q::PrismError::InvalidParameter
pub prism_q::PrismError::InvalidParameter::message: alloc::string::String
pub prism_q::PrismError::InvalidQubit
pub prism_q::PrismError::InvalidQubit::index: usize
pub prism_q::PrismError::InvalidQubit::register_size: usize
pub prism_q::PrismError::Parse
pub prism_q::PrismError::Parse::line: usize
pub prism_q::PrismError::Parse::message: alloc::string::String
pub prism_q::PrismError::ResourceLimit(alloc::boxed::Box<prism_q::error::ResourceLimit>)
pub prism_q::PrismError::UndefinedRegister
pub prism_q::PrismError::UndefinedRegister::line: usize
pub prism_q::PrismError::UndefinedRegister::name: alloc::string::String
pub prism_q::PrismError::UnsupportedConstruct
pub prism_q::PrismError::UnsupportedConstruct::construct: alloc::string::String
pub prism_q::PrismError::UnsupportedConstruct::line: usize
#[non_exhaustive] pub enum prism_q::Probabilities
pub prism_q::Probabilities::Dense(alloc::vec::Vec<f64>)
pub prism_q::Probabilities::Factored
pub prism_q::Probabilities::Factored::blocks: alloc::vec::Vec<prism_q::FactoredBlock>
pub prism_q::Probabilities::Factored::total_qubits: usize
impl prism_q::Probabilities
pub fn prism_q::Probabilities::get(&self, usize) -> f64
pub fn prism_q::Probabilities::is_empty(&self) -> bool
pub fn prism_q::Probabilities::iter(&self) -> prism_q::sim::ProbabilitiesIter<'_>
pub fn prism_q::Probabilities::len(&self) -> usize
pub fn prism_q::Probabilities::marginals(&self) -> alloc::vec::Vec<(f64, f64)>
pub fn prism_q::Probabilities::subset_marginal(&self, &[usize]) -> alloc::vec::Vec<f64>
pub fn prism_q::Probabilities::to_vec(&self) -> alloc::vec::Vec<f64>
pub enum prism_q::QecBasis
pub prism_q::QecBasis::X
pub prism_q::QecBasis::Y
pub prism_q::QecBasis::Z
impl core::convert::From<prism_q::qec::QecBasis> for prism_q::sim::unified_pauli::PauliAxis
pub fn prism_q::sim::unified_pauli::PauliAxis::from(prism_q::qec::QecBasis) -> Self
#[non_exhaustive] pub enum prism_q::QecNoise
pub prism_q::QecNoise::Depolarize1(f64)
pub prism_q::QecNoise::Depolarize2(f64)
pub prism_q::QecNoise::XError(f64)
pub prism_q::QecNoise::ZError(f64)
impl prism_q::qec::QecNoise
pub fn prism_q::qec::QecNoise::name(self) -> &'static str
pub fn prism_q::qec::QecNoise::probability(self) -> f64
#[non_exhaustive] pub enum prism_q::QecOp
pub prism_q::QecOp::Detector
pub prism_q::QecOp::Detector::coords: alloc::vec::Vec<f64>
pub prism_q::QecOp::Detector::records: alloc::vec::Vec<prism_q::qec::QecRecordRef>
pub prism_q::QecOp::ExpectationValue
pub prism_q::QecOp::ExpectationValue::coefficient: f64
pub prism_q::QecOp::ExpectationValue::terms: alloc::vec::Vec<prism_q::qec::QecPauli>
pub prism_q::QecOp::Feedforward
pub prism_q::QecOp::Feedforward::body: alloc::vec::Vec<prism_q::qec::QecOp>
pub prism_q::QecOp::Feedforward::expected: bool
pub prism_q::QecOp::Feedforward::records: alloc::vec::Vec<prism_q::qec::QecRecordRef>
pub prism_q::QecOp::Gate
pub prism_q::QecOp::Gate::gate: prism_q::gates::Gate
pub prism_q::QecOp::Gate::targets: alloc::vec::Vec<usize>
pub prism_q::QecOp::Measure
pub prism_q::QecOp::Measure::basis: prism_q::qec::QecBasis
pub prism_q::QecOp::Measure::qubit: usize
pub prism_q::QecOp::MeasurePauliProduct
pub prism_q::QecOp::MeasurePauliProduct::terms: alloc::vec::Vec<prism_q::qec::QecPauli>
pub prism_q::QecOp::Noise
pub prism_q::QecOp::Noise::channel: prism_q::qec::QecNoise
pub prism_q::QecOp::Noise::targets: alloc::vec::Vec<usize>
pub prism_q::QecOp::ObservableInclude
pub prism_q::QecOp::ObservableInclude::observable: usize
pub prism_q::QecOp::ObservableInclude::records: alloc::vec::Vec<prism_q::qec::QecRecordRef>
pub prism_q::QecOp::Postselect
pub prism_q::QecOp::Postselect::expected: bool
pub prism_q::QecOp::Postselect::records: alloc::vec::Vec<prism_q::qec::QecRecordRef>
pub prism_q::QecOp::Reset
pub prism_q::QecOp::Reset::basis: prism_q::qec::QecBasis
pub prism_q::QecOp::Reset::qubit: usize
pub prism_q::QecOp::Tick
#[non_exhaustive] pub enum prism_q::QecRecordRef
pub prism_q::QecRecordRef::Absolute(usize)
pub prism_q::QecRecordRef::Lookback(usize)
impl prism_q::qec::QecRecordRef
pub fn prism_q::qec::QecRecordRef::absolute(usize) -> Self
pub fn prism_q::qec::QecRecordRef::lookback(usize) -> prism_q::error::Result<Self>
#[non_exhaustive] pub enum prism_q::QecTStrategy
pub prism_q::QecTStrategy::Auto
pub prism_q::QecTStrategy::Camps
pub prism_q::QecTStrategy::Reference
pub prism_q::QecTStrategy::Spd
impl prism_q::QecTStrategy
pub fn prism_q::QecTStrategy::label(self) -> &'static str
#[non_exhaustive] pub enum prism_q::ResolvedBackend
pub prism_q::ResolvedBackend::CompiledStabilizer
pub prism_q::ResolvedBackend::Decomposed
pub prism_q::ResolvedBackend::DensityMatrix
pub prism_q::ResolvedBackend::DeterministicPauli
pub prism_q::ResolvedBackend::Distributed
pub prism_q::ResolvedBackend::Factored
pub prism_q::ResolvedBackend::FactoredStabilizer
pub prism_q::ResolvedBackend::Mps
pub prism_q::ResolvedBackend::Other(&'static str)
pub prism_q::ResolvedBackend::PauliPath
pub prism_q::ResolvedBackend::ProductState
pub prism_q::ResolvedBackend::Sparse
pub prism_q::ResolvedBackend::Stabilizer
pub prism_q::ResolvedBackend::StabilizerRank
pub prism_q::ResolvedBackend::Statevector
pub prism_q::ResolvedBackend::StochasticPauli
pub prism_q::ResolvedBackend::TensorNetwork
#[non_exhaustive] pub enum prism_q::ResourceKind
pub prism_q::ResourceKind::Amplitudes
pub prism_q::ResourceKind::DeviceBytes
pub prism_q::ResourceKind::Elements
pub prism_q::ResourceKind::Entries
pub prism_q::ResourceKind::Qubits
impl core::fmt::Display for prism_q::error::ResourceKind
pub fn prism_q::error::ResourceKind::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
#[non_exhaustive] pub enum prism_q::SaveSpec
pub prism_q::SaveSpec::DensityMatrix
pub prism_q::SaveSpec::Probabilities
pub prism_q::SaveSpec::StateVector
#[non_exhaustive] pub enum prism_q::SavedValue
pub prism_q::SavedValue::DensityMatrix(alloc::vec::Vec<num_complex::Complex64>)
pub prism_q::SavedValue::Probabilities(alloc::vec::Vec<f64>)
pub prism_q::SavedValue::StateVector(alloc::vec::Vec<num_complex::Complex64>)
#[non_exhaustive] pub enum prism_q::ShotLayout
pub prism_q::ShotLayout::MeasMajor
pub prism_q::ShotLayout::ShotMajor
#[non_exhaustive] pub enum prism_q::SpdTruncation
pub prism_q::SpdTruncation::Budget
pub prism_q::SpdTruncation::Budget::max_terms: usize
pub prism_q::SpdTruncation::Threshold
pub prism_q::SpdTruncation::Threshold::epsilon: f64
pub prism_q::SpdTruncation::Threshold::max_terms: usize
pub struct prism_q::BatchPhaseData
impl prism_q::gates::BatchPhaseData
pub const prism_q::gates::BatchPhaseData::MAX_PHASES: usize
pub fn prism_q::gates::BatchPhaseData::new(impl core::iter::traits::collect::IntoIterator<Item = (usize, num_complex::Complex64)>) -> Self
pub fn prism_q::gates::BatchPhaseData::phases(&self) -> &[(usize, num_complex::Complex64)]
pub struct prism_q::BondReport
pub prism_q::BondReport::cap: usize
pub prism_q::BondReport::peak: usize
impl prism_q::BondReport
pub fn prism_q::BondReport::saturated(&self) -> bool
pub struct prism_q::Circuit
pub prism_q::Circuit::instructions: alloc::vec::Vec<prism_q::circuit::Instruction>
pub prism_q::Circuit::num_classical_bits: usize
pub prism_q::Circuit::num_qubits: usize
impl prism_q::circuit::Circuit
pub fn prism_q::circuit::Circuit::add_barrier(&mut self, &[usize])
pub fn prism_q::circuit::Circuit::add_gate(&mut self, prism_q::gates::Gate, &[usize])
pub fn prism_q::circuit::Circuit::add_measure(&mut self, usize, usize)
pub fn prism_q::circuit::Circuit::add_pauli_rotation(&mut self, f64, &[prism_q::sim::unified_pauli::PauliTerm])
pub fn prism_q::circuit::Circuit::add_reset(&mut self, usize)
pub fn prism_q::circuit::Circuit::add_save(&mut self, prism_q::circuit::SaveSpec, impl core::convert::Into<alloc::string::String>)
pub fn prism_q::circuit::Circuit::add_unitary(&mut self, alloc::vec::Vec<num_complex::Complex64>, &[usize]) -> prism_q::error::Result<()>
pub fn prism_q::circuit::Circuit::depth(&self) -> usize
pub fn prism_q::circuit::Circuit::fold_static_guards(&self) -> alloc::borrow::Cow<'_, prism_q::circuit::Circuit>
pub fn prism_q::circuit::Circuit::gate_count(&self) -> usize
pub fn prism_q::circuit::Circuit::has_entangling_gates(&self) -> bool
pub fn prism_q::circuit::Circuit::has_resets(&self) -> bool
pub fn prism_q::circuit::Circuit::has_t_gates(&self) -> bool
pub fn prism_q::circuit::Circuit::has_terminal_measurements_only(&self) -> bool
pub fn prism_q::circuit::Circuit::independent_subsystems(&self) -> alloc::vec::Vec<alloc::vec::Vec<usize>>
pub fn prism_q::circuit::Circuit::is_clifford_only(&self) -> bool
pub fn prism_q::circuit::Circuit::is_clifford_plus_t(&self) -> bool
pub fn prism_q::circuit::Circuit::is_sparse_friendly(&self) -> bool
pub fn prism_q::circuit::Circuit::measure_all(&mut self)
pub fn prism_q::circuit::Circuit::measurement_map(&self) -> alloc::vec::Vec<(usize, usize)>
pub fn prism_q::circuit::Circuit::new(usize, usize) -> Self
pub fn prism_q::circuit::Circuit::save_count(&self) -> usize
pub fn prism_q::circuit::Circuit::t_count(&self) -> usize
pub fn prism_q::circuit::Circuit::without_measurements(&self) -> prism_q::circuit::Circuit
impl prism_q::circuit::Circuit
pub fn prism_q::circuit::Circuit::draw(&self, &prism_q::TextOptions) -> alloc::string::String
pub fn prism_q::circuit::Circuit::heatmap(&self, &prism_q::TextOptions) -> alloc::string::String
pub fn prism_q::circuit::Circuit::summary(&self) -> alloc::string::String
impl prism_q::circuit::Circuit
pub fn prism_q::circuit::Circuit::to_svg(&self, &prism_q::SvgOptions) -> alloc::string::String
pub fn prism_q::circuit::Circuit::to_svg_heatmap(&self, &prism_q::SvgOptions) -> alloc::string::String
impl core::fmt::Display for prism_q::circuit::Circuit
pub fn prism_q::circuit::Circuit::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub struct prism_q::CircuitBuilder
impl prism_q::circuit::builder::CircuitBuilder
pub fn prism_q::circuit::builder::CircuitBuilder::barrier(&mut self, &[usize]) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::build(&mut self) -> prism_q::circuit::Circuit
pub fn prism_q::circuit::builder::CircuitBuilder::build_parametric(&mut self) -> (prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters)
pub fn prism_q::circuit::builder::CircuitBuilder::circuit(&self) -> &prism_q::circuit::Circuit
pub fn prism_q::circuit::builder::CircuitBuilder::conditional(&mut self, prism_q::circuit::ClassicalCondition, prism_q::gates::Gate, &[usize]) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::cphase(&mut self, f64, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::cu(&mut self, [[num_complex::Complex64; 2]; 2], usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::cx(&mut self, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::cz(&mut self, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::gate(&mut self, prism_q::gates::Gate, &[usize]) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::guarded(&mut self, prism_q::circuit::ClassicalCondition, impl core::ops::function::FnOnce(&mut prism_q::circuit::builder::CircuitBuilder)) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::h(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::id(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::mcu(&mut self, [[num_complex::Complex64; 2]; 2], &[usize], usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::measure(&mut self, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::measure_all(&mut self) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::measure_in_basis(&mut self, usize, prism_q::sim::unified_pauli::PauliAxis, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::measure_pauli_product(&mut self, &[prism_q::sim::unified_pauli::PauliTerm], usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::new(usize) -> Self
pub fn prism_q::circuit::builder::CircuitBuilder::new_with_classical(usize, usize) -> Self
pub fn prism_q::circuit::builder::CircuitBuilder::p(&mut self, f64, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::param(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::parameters(&self) -> &prism_q::circuit::parameter::Parameters
pub fn prism_q::circuit::builder::CircuitBuilder::pauli_rotation(&mut self, f64, &[prism_q::sim::unified_pauli::PauliTerm]) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::reset(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::run(&self, u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::circuit::builder::CircuitBuilder::run_shots(&self, usize, u64) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::circuit::builder::CircuitBuilder::run_with(&self, prism_q::BackendKind, u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::circuit::builder::CircuitBuilder::rx(&mut self, f64, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::ry(&mut self, f64, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::rz(&mut self, f64, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::rzz(&mut self, f64, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::s(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::sdg(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::swap(&mut self, usize, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::sx(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::sxdg(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::t(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::tdg(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::x(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::y(&mut self, usize) -> &mut Self
pub fn prism_q::circuit::builder::CircuitBuilder::z(&mut self, usize) -> &mut Self
pub struct prism_q::CompiledDetectorSampler
impl prism_q::sim::compiled::CompiledDetectorSampler
pub fn prism_q::sim::compiled::CompiledDetectorSampler::detector_rows(&self) -> &[alloc::vec::Vec<usize>]
pub fn prism_q::sim::compiled::CompiledDetectorSampler::num_detectors(&self) -> usize
pub fn prism_q::sim::compiled::CompiledDetectorSampler::num_measurements(&self) -> usize
pub fn prism_q::sim::compiled::CompiledDetectorSampler::num_observables(&self) -> usize
pub fn prism_q::sim::compiled::CompiledDetectorSampler::observable_rows(&self) -> &[alloc::vec::Vec<usize>]
pub fn prism_q::sim::compiled::CompiledDetectorSampler::rank(&self) -> usize
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_detector_counts(&mut self, usize) -> prism_q::error::Result<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_detectors_chunked<A: prism_q::ShotAccumulator>(&mut self, usize, &mut A) -> prism_q::error::Result<()>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_detectors_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_measurements_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_observables_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::sample_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::DetectorSampleBatch>
pub fn prism_q::sim::compiled::CompiledDetectorSampler::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub struct prism_q::CompiledSampler
impl prism_q::sim::compiled::CompiledSampler
pub fn prism_q::sim::compiled::CompiledSampler::exact_counts(&self) -> core::option::Option<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::compiled::CompiledSampler::num_measurements(&self) -> usize
pub fn prism_q::sim::compiled::CompiledSampler::parity_report(&self) -> alloc::string::String
pub fn prism_q::sim::compiled::CompiledSampler::parity_stats(&self) -> core::option::Option<prism_q::ParityStats>
pub fn prism_q::sim::compiled::CompiledSampler::rank(&self) -> usize
pub fn prism_q::sim::compiled::CompiledSampler::sample(&mut self) -> alloc::vec::Vec<bool>
pub fn prism_q::sim::compiled::CompiledSampler::sample_bulk(&mut self, usize) -> alloc::vec::Vec<alloc::vec::Vec<bool>>
pub fn prism_q::sim::compiled::CompiledSampler::sample_bulk_packed(&mut self, usize) -> prism_q::sim::compiled::PackedShots
pub fn prism_q::sim::compiled::CompiledSampler::sample_bulk_packed_device(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::DevicePackedShots>
pub fn prism_q::sim::compiled::CompiledSampler::sample_chunked<A: prism_q::ShotAccumulator>(&mut self, usize, &mut A)
pub fn prism_q::sim::compiled::CompiledSampler::sample_chunked_with_size<A: prism_q::ShotAccumulator>(&mut self, usize, usize, &mut A)
pub fn prism_q::sim::compiled::CompiledSampler::sample_counts(&mut self, usize) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::sim::compiled::CompiledSampler::sample_detection_events(&mut self, &[(usize, usize)], usize) -> prism_q::sim::compiled::PackedShots
pub fn prism_q::sim::compiled::CompiledSampler::sample_marginals(&mut self, usize) -> alloc::vec::Vec<f64>
pub fn prism_q::sim::compiled::CompiledSampler::sparse(&self) -> core::option::Option<&prism_q::sim::compiled::parity::SparseParity>
pub fn prism_q::sim::compiled::CompiledSampler::try_sample_bulk_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::CompiledSampler::try_sample_counts(&mut self, usize) -> prism_q::error::Result<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::compiled::CompiledSampler::try_sample_marginals(&mut self, usize) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::compiled::CompiledSampler::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub struct prism_q::CorrelatorAccumulator
impl prism_q::CorrelatorAccumulator
pub fn prism_q::CorrelatorAccumulator::correlators(&self) -> alloc::vec::Vec<f64>
pub fn prism_q::CorrelatorAccumulator::new(alloc::vec::Vec<(usize, usize)>) -> Self
pub fn prism_q::CorrelatorAccumulator::total_shots(&self) -> u64
impl prism_q::ShotAccumulator for prism_q::CorrelatorAccumulator
pub fn prism_q::CorrelatorAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::CountsResult
pub prism_q::CountsResult::counts: std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub prism_q::CountsResult::metadata: prism_q::RunMetadata
pub prism_q::CountsResult::num_classical_bits: usize
impl prism_q::sim::CountsResult
pub fn prism_q::sim::CountsResult::into_counts(self) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub struct prism_q::DensityMatrixBackend
impl prism_q::backend::density_matrix::DensityMatrixBackend
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_1q_kraus(&mut self, usize, &[[[num_complex::Complex64; 2]; 2]])
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_2q_depolarizing(&mut self, usize, usize, f64)
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_2q_kraus(&mut self, usize, usize, &[[[num_complex::Complex64; 4]; 4]])
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::density_matrix(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::expectations_pauli(&self, &[(usize, usize, u32)]) -> alloc::vec::Vec<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::new(u64) -> Self
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::purity(&self) -> f64
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
impl prism_q::backend::Backend for prism_q::backend::density_matrix::DensityMatrixBackend
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::name(&self) -> &'static str
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::density_matrix::DensityMatrixBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::DetectorErrorModel
impl prism_q::DetectorErrorModel
pub fn prism_q::DetectorErrorModel::decompose_graphlike(&self) -> prism_q::error::Result<prism_q::DetectorErrorModel>
pub fn prism_q::DetectorErrorModel::detector_coords(&self) -> &[alloc::vec::Vec<f64>]
pub fn prism_q::DetectorErrorModel::mechanisms(&self) -> &[prism_q::ErrorMechanism]
pub fn prism_q::DetectorErrorModel::num_detectors(&self) -> usize
pub fn prism_q::DetectorErrorModel::num_mechanisms(&self) -> usize
pub fn prism_q::DetectorErrorModel::num_observables(&self) -> usize
pub fn prism_q::DetectorErrorModel::to_text(&self) -> alloc::string::String
pub struct prism_q::DetectorSampleBatch
pub prism_q::DetectorSampleBatch::detectors: prism_q::sim::compiled::PackedShots
pub prism_q::DetectorSampleBatch::measurements: prism_q::sim::compiled::PackedShots
pub prism_q::DetectorSampleBatch::observables: prism_q::sim::compiled::PackedShots
pub struct prism_q::DeviceCalibration
impl prism_q::sim::calibration::DeviceCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::gate1q(&self) -> &prism_q::sim::calibration::GateCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::gate2q(&self) -> &prism_q::sim::calibration::GateCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::gate2q_on(&self, usize, usize) -> &prism_q::sim::calibration::GateCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::new(alloc::vec::Vec<prism_q::sim::calibration::QubitCalibration>, prism_q::sim::calibration::GateCalibration, prism_q::sim::calibration::GateCalibration) -> prism_q::error::Result<Self>
pub fn prism_q::sim::calibration::DeviceCalibration::num_qubits(&self) -> usize
pub fn prism_q::sim::calibration::DeviceCalibration::parse(&str) -> prism_q::error::Result<Self>
pub fn prism_q::sim::calibration::DeviceCalibration::qubit(&self, usize) -> &prism_q::sim::calibration::QubitCalibration
pub fn prism_q::sim::calibration::DeviceCalibration::qubits(&self) -> &[prism_q::sim::calibration::QubitCalibration]
pub fn prism_q::sim::calibration::DeviceCalibration::to_noise_model(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<prism_q::sim::noise::NoiseModel>
pub fn prism_q::sim::calibration::DeviceCalibration::with_pair(self, usize, usize, prism_q::sim::calibration::GateCalibration) -> prism_q::error::Result<Self>
pub struct prism_q::DevicePackedShots
impl prism_q::sim::compiled::DevicePackedShots
pub fn prism_q::sim::compiled::DevicePackedShots::counts(&self) -> prism_q::error::Result<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::compiled::DevicePackedShots::layout(&self) -> prism_q::sim::compiled::ShotLayout
pub fn prism_q::sim::compiled::DevicePackedShots::m_words(&self) -> usize
pub fn prism_q::sim::compiled::DevicePackedShots::marginal_counts(&self) -> prism_q::error::Result<alloc::vec::Vec<u64>>
pub fn prism_q::sim::compiled::DevicePackedShots::marginals(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::compiled::DevicePackedShots::num_measurements(&self) -> usize
pub fn prism_q::sim::compiled::DevicePackedShots::num_shots(&self) -> usize
pub fn prism_q::sim::compiled::DevicePackedShots::s_words(&self) -> usize
pub fn prism_q::sim::compiled::DevicePackedShots::to_host(&self) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub struct prism_q::DistributedContext
impl prism_q::distributed::DistributedContext
pub fn prism_q::distributed::DistributedContext::from_comm(alloc::sync::Arc<dyn prism_q::distributed::comm::RankComm>) -> alloc::sync::Arc<Self>
pub fn prism_q::distributed::DistributedContext::rank(&self) -> usize
pub fn prism_q::distributed::DistributedContext::serial() -> alloc::sync::Arc<Self>
pub fn prism_q::distributed::DistributedContext::size(&self) -> usize
impl core::fmt::Debug for prism_q::distributed::DistributedContext
pub fn prism_q::distributed::DistributedContext::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub struct prism_q::DistributedStatevectorBackend
impl prism_q::backend::distributed_statevector::DistributedStatevectorBackend
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::exchange_amplitudes(&self) -> u64
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::exchange_messages(&self) -> u64
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::new(alloc::sync::Arc<prism_q::distributed::DistributedContext>, u64) -> Self
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::sample_state_indices(&mut self, usize, u64) -> prism_q::error::Result<alloc::vec::Vec<u64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::set_relabel(&mut self, bool)
impl prism_q::backend::Backend for prism_q::backend::distributed_statevector::DistributedStatevectorBackend
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::name(&self) -> &'static str
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::distributed_statevector::DistributedStatevectorBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::EntropyResult
pub prism_q::EntropyResult::entropy: f64
pub prism_q::EntropyResult::metadata: prism_q::RunMetadata
pub prism_q::EntropyResult::schmidt_values: core::option::Option<alloc::vec::Vec<f64>>
pub prism_q::EntropyResult::subsystem: alloc::vec::Vec<usize>
pub struct prism_q::ErrorChainComplex
impl prism_q::sim::homological::ErrorChainComplex
pub fn prism_q::sim::homological::ErrorChainComplex::boundary_dim(&self) -> usize
pub fn prism_q::sim::homological::ErrorChainComplex::build(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, u64) -> prism_q::error::Result<Self>
pub fn prism_q::sim::homological::ErrorChainComplex::homology_dim(&self) -> usize
pub fn prism_q::sim::homological::ErrorChainComplex::noisy_marginals(&self, &[f64]) -> alloc::vec::Vec<f64>
pub struct prism_q::ErrorMechanism
impl prism_q::ErrorMechanism
pub fn prism_q::ErrorMechanism::detectors(&self) -> &[usize]
pub fn prism_q::ErrorMechanism::observables(&self) -> &[usize]
pub fn prism_q::ErrorMechanism::probability(&self) -> f64
pub struct prism_q::ExpectationGradient
pub prism_q::ExpectationGradient::gradient: alloc::vec::Vec<f64>
pub prism_q::ExpectationGradient::value: f64
pub struct prism_q::ExpectationResult
pub prism_q::ExpectationResult::metadata: prism_q::RunMetadata
pub prism_q::ExpectationResult::std_errors: core::option::Option<alloc::vec::Vec<f64>>
pub prism_q::ExpectationResult::values: alloc::vec::Vec<f64>
impl prism_q::ExpectationResult
pub fn prism_q::ExpectationResult::into_values(self) -> alloc::vec::Vec<f64>
pub struct prism_q::FactoredBackend
impl prism_q::backend::factored::FactoredBackend
pub fn prism_q::backend::factored::FactoredBackend::new(u64) -> Self
impl prism_q::backend::Backend for prism_q::backend::factored::FactoredBackend
pub fn prism_q::backend::factored::FactoredBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::factored::FactoredBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::factored::FactoredBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::factored::FactoredBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::factored::FactoredBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::factored::FactoredBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored::FactoredBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::factored::FactoredBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::name(&self) -> &'static str
pub fn prism_q::backend::factored::FactoredBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::factored::FactoredBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::factored::FactoredBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::factored::FactoredBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::factored::FactoredBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored::FactoredBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::factored::FactoredBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::factored::FactoredBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored::FactoredBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::factored::FactoredBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::FactoredBlock
pub prism_q::FactoredBlock::mask: u64
pub prism_q::FactoredBlock::probs: alloc::vec::Vec<f64>
pub struct prism_q::FactoredStabilizerBackend
impl prism_q::backend::factored_stabilizer::FactoredStabilizerBackend
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::export_tableau(&self) -> (alloc::vec::Vec<u64>, alloc::vec::Vec<bool>)
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init_from_tableau(&mut self, usize, alloc::vec::Vec<u64>, alloc::vec::Vec<bool>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::new(u64) -> Self
impl prism_q::backend::Backend for prism_q::backend::factored_stabilizer::FactoredStabilizerBackend
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::name(&self) -> &'static str
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::factored_stabilizer::FactoredStabilizerBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::GateCalibration
pub prism_q::GateCalibration::error: f64
pub prism_q::GateCalibration::time: f64
pub struct prism_q::GateFilter
impl prism_q::sim::noise::builder::GateFilter
pub fn prism_q::sim::noise::builder::GateFilter::all() -> Self
pub fn prism_q::sim::noise::builder::GateFilter::arity(self, usize) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::named(self, impl core::convert::Into<alloc::string::String>) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::on_qubits(self, impl core::iter::traits::collect::IntoIterator<Item = usize>) -> Self
pub fn prism_q::sim::noise::builder::GateFilter::on_targets(self, impl core::iter::traits::collect::IntoIterator<Item = usize>) -> Self
pub struct prism_q::HistogramAccumulator
impl prism_q::HistogramAccumulator
pub fn prism_q::HistogramAccumulator::into_counts(self) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::HistogramAccumulator::new() -> Self
impl core::default::Default for prism_q::HistogramAccumulator
pub fn prism_q::HistogramAccumulator::default() -> Self
impl prism_q::ShotAccumulator for prism_q::HistogramAccumulator
pub fn prism_q::HistogramAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::MarginalsAccumulator
impl prism_q::MarginalsAccumulator
pub fn prism_q::MarginalsAccumulator::marginals(&self) -> alloc::vec::Vec<f64>
pub fn prism_q::MarginalsAccumulator::new(usize) -> Self
pub fn prism_q::MarginalsAccumulator::total_shots(&self) -> u64
impl prism_q::ShotAccumulator for prism_q::MarginalsAccumulator
pub fn prism_q::MarginalsAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::MarginalsResult
pub prism_q::MarginalsResult::marginals: alloc::vec::Vec<(f64, f64)>
pub prism_q::MarginalsResult::metadata: prism_q::RunMetadata
impl prism_q::sim::MarginalsResult
pub fn prism_q::sim::MarginalsResult::into_vec(self) -> alloc::vec::Vec<(f64, f64)>
pub struct prism_q::McuData
impl prism_q::gates::McuData
pub fn prism_q::gates::McuData::mat(&self) -> &[[num_complex::Complex64; 2]; 2]
pub fn prism_q::gates::McuData::new([[num_complex::Complex64; 2]; 2], u8) -> Self
pub fn prism_q::gates::McuData::num_controls(&self) -> u8
pub struct prism_q::MpsBackend
impl prism_q::backend::mps::MpsBackend
pub fn prism_q::backend::mps::MpsBackend::current_max_bond_dim(&self) -> usize
pub fn prism_q::backend::mps::MpsBackend::inner_product(&self, &Self) -> prism_q::error::Result<num_complex::Complex64>
pub fn prism_q::backend::mps::MpsBackend::is_qubit_in_zero_state(&self, usize, f64) -> prism_q::error::Result<bool>
pub fn prism_q::backend::mps::MpsBackend::new(u64, usize) -> Self
pub fn prism_q::backend::mps::MpsBackend::pauli_expectation(&self, &[(usize, prism_q::backend::mps::MpsPauliAxis)]) -> prism_q::error::Result<num_complex::Complex64>
pub fn prism_q::backend::mps::MpsBackend::reset_truncation_tracking(&mut self)
pub fn prism_q::backend::mps::MpsBackend::set_svd_epsilon(&mut self, f64)
pub fn prism_q::backend::mps::MpsBackend::site_for_qubit(&self, usize) -> usize
pub fn prism_q::backend::mps::MpsBackend::truncation_discarded(&self) -> f64
impl core::clone::Clone for prism_q::backend::mps::MpsBackend
pub fn prism_q::backend::mps::MpsBackend::clone(&self) -> Self
impl prism_q::backend::Backend for prism_q::backend::mps::MpsBackend
pub fn prism_q::backend::mps::MpsBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::mps::MpsBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::mps::MpsBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::mps::MpsBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::mps::MpsBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::mps::MpsBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::mps::MpsBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::mps::MpsBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::name(&self) -> &'static str
pub fn prism_q::backend::mps::MpsBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::mps::MpsBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::mps::MpsBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::mps::MpsBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::mps::MpsBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::mps::MpsBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::mps::MpsBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::mps::MpsBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::mps::MpsBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::mps::MpsBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::Multi2qData
impl prism_q::gates::Multi2qData
pub fn prism_q::gates::Multi2qData::gates(&self) -> &[(usize, usize, [[num_complex::Complex64; 4]; 4])]
pub fn prism_q::gates::Multi2qData::new(alloc::vec::Vec<(usize, usize, [[num_complex::Complex64; 4]; 4])>) -> Self
pub struct prism_q::MultiFusedData
impl prism_q::gates::MultiFusedData
pub fn prism_q::gates::MultiFusedData::all_diagonal(&self) -> bool
pub fn prism_q::gates::MultiFusedData::gates(&self) -> &[(usize, [[num_complex::Complex64; 2]; 2])]
pub fn prism_q::gates::MultiFusedData::new(alloc::vec::Vec<(usize, [[num_complex::Complex64; 2]; 2])>) -> Self
pub struct prism_q::NoiseBuilder
impl prism_q::sim::noise::builder::NoiseBuilder
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_gates(self, prism_q::sim::noise::builder::GateFilter, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_gates_joint(self, prism_q::sim::noise::builder::GateFilter, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::after_resets(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::before_measurements(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::build(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<prism_q::sim::noise::NoiseModel>
pub fn prism_q::sim::noise::builder::NoiseBuilder::crosstalk(self, prism_q::sim::noise::builder::GateFilter, impl core::iter::traits::collect::IntoIterator<Item = (usize, usize)>, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::new() -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::on_idle_qubits(self, prism_q::sim::noise::NoiseChannel) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::over_rotation(self, prism_q::sim::noise::builder::GateFilter, f64) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::readout_error(self, usize, f64, f64) -> Self
pub fn prism_q::sim::noise::builder::NoiseBuilder::uniform_readout_error(self, f64, f64) -> Self
pub struct prism_q::NoiseEvent
pub prism_q::NoiseEvent::channel: prism_q::sim::noise::NoiseChannel
pub prism_q::NoiseEvent::qubits: smallvec::SmallVec<[usize; 2]>
impl prism_q::sim::noise::NoiseEvent
pub fn prism_q::sim::noise::NoiseEvent::pauli(usize, f64, f64, f64) -> Self
pub fn prism_q::sim::noise::NoiseEvent::pauli_pair(&self) -> core::option::Option<(usize, usize, f64)>
pub fn prism_q::sim::noise::NoiseEvent::pauli_probs(&self) -> (f64, f64, f64)
pub fn prism_q::sim::noise::NoiseEvent::qubit(&self) -> usize
pub struct prism_q::NoiseModel
pub prism_q::NoiseModel::after_gate: alloc::vec::Vec<alloc::vec::Vec<prism_q::sim::noise::NoiseEvent>>
pub prism_q::NoiseModel::readout: alloc::vec::Vec<core::option::Option<prism_q::sim::noise::ReadoutError>>
impl prism_q::sim::noise::NoiseModel
pub fn prism_q::sim::noise::NoiseModel::has_noise(&self) -> bool
pub fn prism_q::sim::noise::NoiseModel::is_pauli_only(&self) -> bool
pub fn prism_q::sim::noise::NoiseModel::set_bit_readout_error(&mut self, usize, f64, f64) -> &mut Self
pub fn prism_q::sim::noise::NoiseModel::uniform_depolarizing(&prism_q::circuit::Circuit, f64) -> Self
pub fn prism_q::sim::noise::NoiseModel::validate(&self) -> prism_q::error::Result<()>
pub fn prism_q::sim::noise::NoiseModel::validate_for(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<()>
pub fn prism_q::sim::noise::NoiseModel::with_amplitude_damping(&prism_q::circuit::Circuit, f64) -> Self
pub fn prism_q::sim::noise::NoiseModel::with_readout_error(&mut self, f64, f64) -> &mut Self
pub struct prism_q::NoisyCompiledSampler
impl prism_q::sim::noise::NoisyCompiledSampler
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_bulk_packed(&mut self, usize) -> prism_q::sim::compiled::PackedShots
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_chunked<A: prism_q::ShotAccumulator>(&mut self, usize, &mut A)
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_chunked_with_size<A: prism_q::ShotAccumulator>(&mut self, usize, usize, &mut A)
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_counts(&mut self, usize) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::sim::noise::NoisyCompiledSampler::sample_marginals(&mut self, usize) -> alloc::vec::Vec<f64>
pub fn prism_q::sim::noise::NoisyCompiledSampler::try_sample_bulk_packed(&mut self, usize) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::noise::NoisyCompiledSampler::try_sample_counts(&mut self, usize) -> prism_q::error::Result<std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>>
pub fn prism_q::sim::noise::NoisyCompiledSampler::try_sample_marginals(&mut self, usize) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::noise::NoisyCompiledSampler::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub struct prism_q::NullAccumulator
impl prism_q::NullAccumulator
pub fn prism_q::NullAccumulator::new() -> Self
pub fn prism_q::NullAccumulator::total_shots(&self) -> u64
impl core::default::Default for prism_q::NullAccumulator
pub fn prism_q::NullAccumulator::default() -> Self
impl prism_q::ShotAccumulator for prism_q::NullAccumulator
pub fn prism_q::NullAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::ObservableExpectation
pub prism_q::ObservableExpectation::group_variances: core::option::Option<alloc::vec::Vec<f64>>
pub prism_q::ObservableExpectation::mean: f64
pub prism_q::ObservableExpectation::metadata: prism_q::RunMetadata
pub prism_q::ObservableExpectation::std_error: core::option::Option<f64>
pub prism_q::ObservableExpectation::variance: core::option::Option<f64>
pub struct prism_q::ObservableVariance
pub prism_q::ObservableVariance::mean: f64
pub prism_q::ObservableVariance::metadata: prism_q::RunMetadata
pub prism_q::ObservableVariance::variance: f64
pub struct prism_q::OverlapResult
pub prism_q::OverlapResult::fidelity: f64
pub prism_q::OverlapResult::left: prism_q::RunMetadata
pub prism_q::OverlapResult::right: prism_q::RunMetadata
pub struct prism_q::PackedShots
impl prism_q::sim::compiled::PackedShots
pub const prism_q::sim::compiled::PackedShots::RAW_FORMAT_VERSION: u32
pub fn prism_q::sim::compiled::PackedShots::counts(&self) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::sim::compiled::PackedShots::from_meas_major(alloc::vec::Vec<u64>, usize, usize) -> Self
pub fn prism_q::sim::compiled::PackedShots::from_shot_major(alloc::vec::Vec<u64>, usize, usize) -> Self
pub fn prism_q::sim::compiled::PackedShots::get_bit(&self, usize, usize) -> bool
pub fn prism_q::sim::compiled::PackedShots::into_data(self) -> alloc::vec::Vec<u64>
pub fn prism_q::sim::compiled::PackedShots::layout(&self) -> prism_q::sim::compiled::ShotLayout
pub fn prism_q::sim::compiled::PackedShots::m_words(&self) -> usize
pub fn prism_q::sim::compiled::PackedShots::meas_words(&self, usize) -> &[u64]
pub fn prism_q::sim::compiled::PackedShots::num_measurements(&self) -> usize
pub fn prism_q::sim::compiled::PackedShots::num_shots(&self) -> usize
pub fn prism_q::sim::compiled::PackedShots::parity_rows(&self, &[alloc::vec::Vec<usize>]) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::sim::compiled::PackedShots::raw_data(&self) -> &[u64]
pub fn prism_q::sim::compiled::PackedShots::raw_format_version(&self) -> u32
pub fn prism_q::sim::compiled::PackedShots::s_words(&self) -> usize
pub fn prism_q::sim::compiled::PackedShots::shot_words(&self, usize) -> &[u64]
pub fn prism_q::sim::compiled::PackedShots::to_shots(&self) -> alloc::vec::Vec<alloc::vec::Vec<bool>>
pub fn prism_q::sim::compiled::PackedShots::try_from_meas_major(alloc::vec::Vec<u64>, usize, usize) -> prism_q::error::Result<Self>
pub fn prism_q::sim::compiled::PackedShots::try_from_shot_major(alloc::vec::Vec<u64>, usize, usize) -> prism_q::error::Result<Self>
pub struct prism_q::ParamLink
pub prism_q::ParamLink::instruction: usize
pub prism_q::ParamLink::slot: usize
pub struct prism_q::Parameters
impl prism_q::circuit::parameter::Parameters
pub fn prism_q::circuit::parameter::Parameters::all_rotations(&prism_q::circuit::Circuit) -> Self
pub fn prism_q::circuit::parameter::Parameters::bind(&self, &prism_q::circuit::Circuit, &[f64]) -> prism_q::error::Result<prism_q::circuit::Circuit>
pub fn prism_q::circuit::parameter::Parameters::bind_into(&self, &prism_q::circuit::Circuit, &[f64], &mut prism_q::circuit::Circuit) -> prism_q::error::Result<()>
pub fn prism_q::circuit::parameter::Parameters::from_links(alloc::vec::Vec<prism_q::circuit::parameter::ParamLink>, usize) -> Self
pub fn prism_q::circuit::parameter::Parameters::is_empty(&self) -> bool
pub fn prism_q::circuit::parameter::Parameters::link(&mut self, usize, usize)
pub fn prism_q::circuit::parameter::Parameters::links(&self) -> &[prism_q::circuit::parameter::ParamLink]
pub fn prism_q::circuit::parameter::Parameters::name_of(&self, usize) -> core::option::Option<&str>
pub fn prism_q::circuit::parameter::Parameters::new(usize) -> Self
pub fn prism_q::circuit::parameter::Parameters::num_slots(&self) -> usize
pub fn prism_q::circuit::parameter::Parameters::pinned_to(self, &prism_q::circuit::Circuit) -> Self
pub fn prism_q::circuit::parameter::Parameters::slot_of(&self, &str) -> core::option::Option<usize>
pub fn prism_q::circuit::parameter::Parameters::unread_slots(&self) -> alloc::vec::Vec<usize>
pub fn prism_q::circuit::parameter::Parameters::validate(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<()>
pub fn prism_q::circuit::parameter::Parameters::values(&self, &prism_q::circuit::Circuit) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::circuit::parameter::Parameters::with_names<I, S>(self, I) -> Self where I: core::iter::traits::collect::IntoIterator<Item = S>, S: core::convert::Into<alloc::string::String>
pub struct prism_q::ParityStats
pub prism_q::ParityStats::max_weight: usize
pub prism_q::ParityStats::mean_weight: f64
pub prism_q::ParityStats::min_weight: usize
pub prism_q::ParityStats::num_deterministic: usize
pub prism_q::ParityStats::total_weight: usize
pub struct prism_q::PauliExpectationAccumulator
impl prism_q::PauliExpectationAccumulator
pub fn prism_q::PauliExpectationAccumulator::expectations(&self) -> alloc::vec::Vec<f64>
pub fn prism_q::PauliExpectationAccumulator::new(alloc::vec::Vec<alloc::vec::Vec<usize>>) -> Self
pub fn prism_q::PauliExpectationAccumulator::total_shots(&self) -> u64
impl prism_q::ShotAccumulator for prism_q::PauliExpectationAccumulator
pub fn prism_q::PauliExpectationAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub struct prism_q::PauliObservable
impl prism_q::PauliObservable
pub fn prism_q::PauliObservable::add_term(&mut self, f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>) -> prism_q::error::Result<()>
pub fn prism_q::PauliObservable::from_terms(impl core::iter::traits::collect::IntoIterator<Item = (f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)>) -> prism_q::error::Result<Self>
pub fn prism_q::PauliObservable::new() -> Self
pub fn prism_q::PauliObservable::num_groups(&self) -> usize
pub fn prism_q::PauliObservable::num_terms(&self) -> usize
pub fn prism_q::PauliObservable::split_identity(&self) -> (f64, prism_q::PauliObservable)
pub fn prism_q::PauliObservable::square(&self) -> prism_q::PauliObservable
pub fn prism_q::PauliObservable::terms(&self) -> &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)]
impl core::ops::arith::Add for prism_q::PauliObservable
pub type prism_q::PauliObservable::Output = prism_q::PauliObservable
pub fn prism_q::PauliObservable::add(self, prism_q::PauliObservable) -> prism_q::PauliObservable
impl core::ops::arith::Mul<f64> for prism_q::PauliObservable
pub type prism_q::PauliObservable::Output = prism_q::PauliObservable
pub fn prism_q::PauliObservable::mul(self, f64) -> prism_q::PauliObservable
impl core::ops::arith::Neg for prism_q::PauliObservable
pub type prism_q::PauliObservable::Output = prism_q::PauliObservable
pub fn prism_q::PauliObservable::neg(self) -> prism_q::PauliObservable
impl core::ops::arith::Sub for prism_q::PauliObservable
pub type prism_q::PauliObservable::Output = prism_q::PauliObservable
pub fn prism_q::PauliObservable::sub(self, prism_q::PauliObservable) -> prism_q::PauliObservable
pub struct prism_q::PauliTerm
pub prism_q::PauliTerm::axis: prism_q::sim::unified_pauli::PauliAxis
pub prism_q::PauliTerm::qubit: usize
impl prism_q::sim::unified_pauli::PauliTerm
pub fn prism_q::sim::unified_pauli::PauliTerm::new(usize, prism_q::sim::unified_pauli::PauliAxis) -> Self
pub fn prism_q::sim::unified_pauli::PauliTerm::x(usize) -> Self
pub fn prism_q::sim::unified_pauli::PauliTerm::y(usize) -> Self
pub fn prism_q::sim::unified_pauli::PauliTerm::z(usize) -> Self
pub struct prism_q::PreparedCircuit
impl prism_q::circuit::prepared::PreparedCircuit
pub fn prism_q::circuit::prepared::PreparedCircuit::bind(&mut self, &[f64]) -> prism_q::error::Result<&prism_q::circuit::Circuit>
pub fn prism_q::circuit::prepared::PreparedCircuit::bind_fused(&mut self, &[f64]) -> prism_q::error::Result<&prism_q::circuit::Circuit>
pub fn prism_q::circuit::prepared::PreparedCircuit::expectation_values(&mut self, &[f64], &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::circuit::prepared::PreparedCircuit::expectation_values_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], u64) -> prism_q::error::Result<alloc::vec::Vec<alloc::vec::Vec<f64>>>
pub fn prism_q::circuit::prepared::PreparedCircuit::new(prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters) -> prism_q::error::Result<Self>
pub fn prism_q::circuit::prepared::PreparedCircuit::observable_expectation(&mut self, &[f64], &prism_q::PauliObservable, u64) -> prism_q::error::Result<prism_q::ObservableExpectation>
pub fn prism_q::circuit::prepared::PreparedCircuit::observable_expectation_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], &prism_q::PauliObservable, u64) -> prism_q::error::Result<alloc::vec::Vec<prism_q::ObservableExpectation>>
pub fn prism_q::circuit::prepared::PreparedCircuit::parameters(&self) -> &prism_q::circuit::parameter::Parameters
pub fn prism_q::circuit::prepared::PreparedCircuit::reuses_fusion_plan(&self) -> bool
pub fn prism_q::circuit::prepared::PreparedCircuit::run(&mut self, &[f64], u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::circuit::prepared::PreparedCircuit::run_many<V: core::convert::AsRef<[f64]> + core::marker::Sync>(&mut self, &[V], u64) -> prism_q::error::Result<alloc::vec::Vec<prism_q::sim::RunOutcome>>
pub fn prism_q::circuit::prepared::PreparedCircuit::template(&self) -> &prism_q::circuit::Circuit
pub fn prism_q::circuit::prepared::PreparedCircuit::with_backend(prism_q::circuit::Circuit, prism_q::circuit::parameter::Parameters, prism_q::BackendKind) -> prism_q::error::Result<Self>
impl core::clone::Clone for prism_q::circuit::prepared::PreparedCircuit
pub fn prism_q::circuit::prepared::PreparedCircuit::clone(&self) -> Self
pub struct prism_q::ProductStateBackend
impl prism_q::backend::product::ProductStateBackend
pub fn prism_q::backend::product::ProductStateBackend::new(u64) -> Self
impl prism_q::backend::Backend for prism_q::backend::product::ProductStateBackend
pub fn prism_q::backend::product::ProductStateBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::product::ProductStateBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::product::ProductStateBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::product::ProductStateBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::product::ProductStateBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::product::ProductStateBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::product::ProductStateBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::product::ProductStateBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::name(&self) -> &'static str
pub fn prism_q::backend::product::ProductStateBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::product::ProductStateBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::product::ProductStateBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::product::ProductStateBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::product::ProductStateBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::product::ProductStateBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::product::ProductStateBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::product::ProductStateBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::product::ProductStateBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::product::ProductStateBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::QecCompiledRows
impl prism_q::qec::QecCompiledRows
pub fn prism_q::qec::QecCompiledRows::detector_parities(&self, &prism_q::sim::compiled::PackedShots) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::qec::QecCompiledRows::detector_rows(&self) -> &[alloc::vec::Vec<usize>]
pub fn prism_q::qec::QecCompiledRows::measurement_mask_bytes(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::measurement_rows(&self) -> &[prism_q::qec::QecMeasurementRow]
pub fn prism_q::qec::QecCompiledRows::num_detectors(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::num_measurements(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::num_observables(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::num_postselections(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::num_qubits(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::observable_parities(&self, &prism_q::sim::compiled::PackedShots) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::qec::QecCompiledRows::observable_rows(&self) -> &[alloc::vec::Vec<usize>]
pub fn prism_q::qec::QecCompiledRows::packed_row_words(&self) -> usize
pub fn prism_q::qec::QecCompiledRows::postselection_expected(&self) -> &[bool]
pub fn prism_q::qec::QecCompiledRows::postselection_parities(&self, &prism_q::sim::compiled::PackedShots) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::qec::QecCompiledRows::postselection_predicates(&self) -> impl core::iter::traits::exact_size::ExactSizeIterator<Item = (&[usize], bool)> + '_
pub fn prism_q::qec::QecCompiledRows::postselection_rows(&self) -> &[alloc::vec::Vec<usize>]
pub struct prism_q::QecMeasurementRow
impl prism_q::qec::QecMeasurementRow
pub fn prism_q::qec::QecMeasurementRow::from_terms(usize, &[prism_q::qec::QecPauli]) -> prism_q::error::Result<Self>
pub fn prism_q::qec::QecMeasurementRow::num_qubits(&self) -> usize
pub fn prism_q::qec::QecMeasurementRow::pauli_at(&self, usize) -> core::option::Option<prism_q::qec::QecBasis>
pub fn prism_q::qec::QecMeasurementRow::single(usize, prism_q::qec::QecBasis, usize) -> prism_q::error::Result<Self>
pub fn prism_q::qec::QecMeasurementRow::terms(&self) -> alloc::vec::Vec<prism_q::qec::QecPauli>
pub fn prism_q::qec::QecMeasurementRow::weight(&self) -> usize
pub fn prism_q::qec::QecMeasurementRow::x_mask(&self) -> &[u64]
pub fn prism_q::qec::QecMeasurementRow::z_mask(&self) -> &[u64]
pub struct prism_q::QecObservableEstimate
pub prism_q::QecObservableEstimate::mean: f64
pub prism_q::QecObservableEstimate::num_shots: usize
pub prism_q::QecObservableEstimate::variance: f64
pub struct prism_q::QecObservableReroute
pub prism_q::QecObservableReroute::observable: usize
pub prism_q::QecObservableReroute::stabilizers: alloc::vec::Vec<alloc::vec::Vec<usize>>
pub struct prism_q::QecOptions
pub prism_q::QecOptions::chunk_size: core::option::Option<usize>
pub prism_q::QecOptions::keep_measurements: bool
pub prism_q::QecOptions::seed: u64
pub prism_q::QecOptions::shots: usize
impl core::default::Default for prism_q::qec::QecOptions
pub fn prism_q::qec::QecOptions::default() -> Self
pub struct prism_q::QecPauli
pub prism_q::QecPauli::basis: prism_q::qec::QecBasis
pub prism_q::QecPauli::qubit: usize
impl prism_q::qec::QecPauli
pub fn prism_q::qec::QecPauli::new(prism_q::qec::QecBasis, usize) -> Self
pub fn prism_q::qec::QecPauli::x(usize) -> Self
pub fn prism_q::qec::QecPauli::y(usize) -> Self
pub fn prism_q::qec::QecPauli::z(usize) -> Self
pub struct prism_q::QecProgram
impl prism_q::qec::QecProgram
pub fn prism_q::qec::QecProgram::detector(&mut self, &[prism_q::qec::QecRecordRef]) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::detector_rows(&self) -> prism_q::error::Result<alloc::vec::Vec<alloc::vec::Vec<usize>>>
pub fn prism_q::qec::QecProgram::detector_with_coords(&mut self, &[prism_q::qec::QecRecordRef], &[f64]) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::empty_result(&self) -> prism_q::QecSampleResult
pub fn prism_q::qec::QecProgram::expectation_value(&mut self, &[prism_q::qec::QecPauli], f64) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::expectation_value_ops(&self) -> alloc::vec::Vec<(&[prism_q::qec::QecPauli], f64)>
pub fn prism_q::qec::QecProgram::feedforward(&mut self, &[prism_q::qec::QecRecordRef], bool, alloc::vec::Vec<prism_q::qec::QecOp>) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::from_ops(usize, prism_q::qec::QecOptions, alloc::vec::Vec<prism_q::qec::QecOp>) -> prism_q::error::Result<Self>
pub fn prism_q::qec::QecProgram::from_text(&str) -> prism_q::error::Result<Self>
pub fn prism_q::qec::QecProgram::measure(&mut self, prism_q::qec::QecBasis, usize) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::measure_pauli_product(&mut self, &[prism_q::qec::QecPauli]) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::measure_x(&mut self, usize) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::measure_z(&mut self, usize) -> prism_q::error::Result<usize>
pub fn prism_q::qec::QecProgram::new(usize) -> Self
pub fn prism_q::qec::QecProgram::noise(&mut self, prism_q::qec::QecNoise, &[usize]) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::num_detectors(&self) -> usize
pub fn prism_q::qec::QecProgram::num_expectation_values(&self) -> usize
pub fn prism_q::qec::QecProgram::num_measurements(&self) -> usize
pub fn prism_q::qec::QecProgram::num_observables(&self) -> usize
pub fn prism_q::qec::QecProgram::num_qubits(&self) -> usize
pub fn prism_q::qec::QecProgram::observable_include(&mut self, usize, &[prism_q::qec::QecRecordRef]) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::observable_rows(&self) -> prism_q::error::Result<alloc::vec::Vec<alloc::vec::Vec<usize>>>
pub fn prism_q::qec::QecProgram::ops(&self) -> &[prism_q::qec::QecOp]
pub fn prism_q::qec::QecProgram::options(&self) -> prism_q::qec::QecOptions
pub fn prism_q::qec::QecProgram::postselect(&mut self, &[prism_q::qec::QecRecordRef], bool) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::postselection_rows(&self) -> prism_q::error::Result<alloc::vec::Vec<(alloc::vec::Vec<usize>, bool)>>
pub fn prism_q::qec::QecProgram::push_gate(&mut self, prism_q::gates::Gate, &[usize]) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::push_op(&mut self, prism_q::qec::QecOp) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::reset(&mut self, prism_q::qec::QecBasis, usize) -> prism_q::error::Result<()>
pub fn prism_q::qec::QecProgram::set_options(&mut self, prism_q::qec::QecOptions)
pub fn prism_q::qec::QecProgram::with_options(usize, prism_q::qec::QecOptions) -> Self
impl prism_q::qec::QecProgram
pub fn prism_q::qec::QecProgram::detector_error_model(&self) -> prism_q::error::Result<prism_q::DetectorErrorModel>
#[non_exhaustive] pub struct prism_q::QecSampleResult
pub prism_q::QecSampleResult::accepted_shots: usize
pub prism_q::QecSampleResult::detectors: prism_q::sim::compiled::PackedShots
pub prism_q::QecSampleResult::discarded_shots: usize
pub prism_q::QecSampleResult::expectation_values: core::option::Option<alloc::vec::Vec<prism_q::QecObservableEstimate>>
pub prism_q::QecSampleResult::logical_errors: alloc::vec::Vec<u64>
pub prism_q::QecSampleResult::measurements: prism_q::sim::compiled::PackedShots
pub prism_q::QecSampleResult::observable_expectations: core::option::Option<alloc::vec::Vec<prism_q::QecObservableEstimate>>
pub prism_q::QecSampleResult::observables: prism_q::sim::compiled::PackedShots
pub prism_q::QecSampleResult::total_shots: usize
impl prism_q::QecSampleResult
pub fn prism_q::QecSampleResult::empty(usize, usize, usize) -> Self
pub fn prism_q::QecSampleResult::logical_error_rate_wilson_intervals(&self, f64) -> alloc::vec::Vec<(f64, f64)>
pub fn prism_q::QecSampleResult::logical_error_rates(&self) -> alloc::vec::Vec<f64>
pub fn prism_q::QecSampleResult::new(prism_q::sim::compiled::PackedShots, prism_q::sim::compiled::PackedShots, prism_q::sim::compiled::PackedShots, usize, usize, alloc::vec::Vec<u64>) -> prism_q::error::Result<Self>
pub fn prism_q::QecSampleResult::new_with_total_shots(usize, prism_q::sim::compiled::PackedShots, prism_q::sim::compiled::PackedShots, prism_q::sim::compiled::PackedShots, usize, usize, alloc::vec::Vec<u64>) -> prism_q::error::Result<Self>
pub fn prism_q::QecSampleResult::survivor_rate(&self) -> f64
pub fn prism_q::QecSampleResult::survivor_rate_wilson_interval(&self, f64) -> (f64, f64)
pub fn prism_q::QecSampleResult::with_expectation_values(self, alloc::vec::Vec<prism_q::QecObservableEstimate>) -> Self
pub fn prism_q::QecSampleResult::with_observable_expectations(self, alloc::vec::Vec<prism_q::QecObservableEstimate>) -> prism_q::error::Result<Self>
pub struct prism_q::QubitCalibration
pub prism_q::QubitCalibration::p01: f64
pub prism_q::QubitCalibration::p10: f64
pub prism_q::QubitCalibration::t1: f64
pub prism_q::QubitCalibration::t2: f64
pub struct prism_q::ReadoutError
pub prism_q::ReadoutError::p01: f64
pub prism_q::ReadoutError::p10: f64
pub struct prism_q::ReducedDensityMatrix
pub prism_q::ReducedDensityMatrix::data: alloc::vec::Vec<num_complex::Complex64>
pub prism_q::ReducedDensityMatrix::metadata: prism_q::RunMetadata
pub prism_q::ReducedDensityMatrix::qubits: alloc::vec::Vec<usize>
impl prism_q::sim::ReducedDensityMatrix
pub fn prism_q::sim::ReducedDensityMatrix::purity(&self) -> f64
#[non_exhaustive] pub struct prism_q::ResourceLimit
pub prism_q::ResourceLimit::backend: alloc::string::String
pub prism_q::ResourceLimit::env_var: core::option::Option<&'static str>
pub prism_q::ResourceLimit::limit: u128
pub prism_q::ResourceLimit::operation: alloc::string::String
pub prism_q::ResourceLimit::required: u128
pub prism_q::ResourceLimit::resource: prism_q::error::ResourceKind
#[non_exhaustive] pub struct prism_q::RunMetadata
pub prism_q::RunMetadata::backend: prism_q::ResolvedBackend
pub prism_q::RunMetadata::bond: core::option::Option<prism_q::BondReport>
pub prism_q::RunMetadata::engine: core::option::Option<prism_q::Engine>
pub prism_q::RunMetadata::exactness: prism_q::Exactness
pub prism_q::RunMetadata::placement: prism_q::Placement
pub prism_q::RunMetadata::shots: core::option::Option<usize>
impl prism_q::RunMetadata
pub fn prism_q::RunMetadata::fidelity_lower_bound(&self) -> core::option::Option<f64>
pub fn prism_q::RunMetadata::is_exact(&self) -> bool
pub struct prism_q::RunOutcome
pub prism_q::RunOutcome::classical_bits: alloc::vec::Vec<bool>
pub prism_q::RunOutcome::metadata: prism_q::RunMetadata
pub prism_q::RunOutcome::probabilities: core::option::Option<prism_q::Probabilities>
pub prism_q::RunOutcome::saves: alloc::vec::Vec<prism_q::circuit::SaveRecord>
pub struct prism_q::SaveRecord
pub prism_q::SaveRecord::label: alloc::string::String
pub prism_q::SaveRecord::value: prism_q::circuit::SavedValue
pub struct prism_q::Seeded
pub struct prism_q::SerialComm
impl prism_q::distributed::comm::RankComm for prism_q::distributed::comm::SerialComm
pub fn prism_q::distributed::comm::SerialComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::distributed::comm::SerialComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::distributed::comm::SerialComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::distributed::comm::SerialComm::barrier(&self)
pub fn prism_q::distributed::comm::SerialComm::rank(&self) -> usize
pub fn prism_q::distributed::comm::SerialComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::distributed::comm::SerialComm::size(&self) -> usize
pub struct prism_q::ShotsResult
pub prism_q::ShotsResult::metadata: prism_q::RunMetadata
pub prism_q::ShotsResult::shots: alloc::vec::Vec<alloc::vec::Vec<bool>>
impl prism_q::ShotsResult
pub fn prism_q::ShotsResult::counts(&self) -> std::collections::hash::map::HashMap<alloc::vec::Vec<u64>, u64>
pub fn prism_q::ShotsResult::num_classical_bits(&self) -> usize
pub fn prism_q::ShotsResult::num_shots(&self) -> usize
impl core::fmt::Display for prism_q::ShotsResult
pub fn prism_q::ShotsResult::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
pub struct prism_q::Simulate<'c, SeedState>
impl<'c, SeedState> prism_q::sim::Simulate<'c, SeedState>
pub fn prism_q::sim::Simulate<'c, SeedState>::backend(self, prism_q::BackendKind) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::distributed(self, alloc::sync::Arc<prism_q::distributed::DistributedContext>) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::gpu_auto(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::initial_density_matrix(self, &'c [num_complex::Complex64]) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::initial_state(self, &'c [num_complex::Complex64]) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::noise(self, &'c prism_q::sim::noise::NoiseModel) -> Self
pub fn prism_q::sim::Simulate<'c, SeedState>::require_exact(self) -> Self
impl<'c> prism_q::sim::Simulate<'c, prism_q::sim::Seeded>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::braket_results(self, &[prism_q::circuit::braket::ResultSpec]) -> prism_q::error::Result<alloc::vec::Vec<prism_q::sim::braket::ResultValue>>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::braket_results_sampled(self, &[prism_q::circuit::braket::ResultSpec], usize) -> prism_q::error::Result<alloc::vec::Vec<prism_q::sim::braket::ResultValue>>
impl<'c> prism_q::sim::Simulate<'c, prism_q::sim::Seeded>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::entanglement_entropy(self, &[usize]) -> prism_q::error::Result<prism_q::sim::EntropyResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::expectation_gradient(self, &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)], &prism_q::circuit::parameter::Parameters) -> prism_q::error::Result<prism_q::sim::gradient::ExpectationGradient>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::expectation_gradient_shift(self, &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)], &prism_q::circuit::parameter::Parameters) -> prism_q::error::Result<prism_q::sim::gradient::ExpectationGradient>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::expectation_values(self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::expectation_values_reported(self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<prism_q::ExpectationResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::marginals(self) -> prism_q::error::Result<prism_q::sim::MarginalsResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::observable_expectation(self, &prism_q::PauliObservable) -> prism_q::error::Result<prism_q::ObservableExpectation>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::observable_variance(self, &prism_q::PauliObservable) -> prism_q::error::Result<prism_q::sim::ObservableVariance>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::overlap(self, prism_q::sim::Simulate<'_, prism_q::sim::Seeded>) -> prism_q::error::Result<prism_q::sim::OverlapResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::probabilities_of(self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::reduced_density_matrix(self, &[usize]) -> prism_q::error::Result<prism_q::sim::ReducedDensityMatrix>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::run(self) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::sample_counts(self, usize) -> prism_q::error::Result<prism_q::sim::CountsResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::shots(self, usize) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Seeded>::state_vector(self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
impl<'c> prism_q::sim::Simulate<'c, prism_q::sim::Unseeded>
pub fn prism_q::sim::Simulate<'c, prism_q::sim::Unseeded>::seed(self, u64) -> prism_q::sim::Simulate<'c, prism_q::sim::Seeded>
pub struct prism_q::SparseBackend
impl prism_q::backend::sparse::SparseBackend
pub fn prism_q::backend::sparse::SparseBackend::entry_count(&self) -> usize
pub fn prism_q::backend::sparse::SparseBackend::new(u64) -> Self
impl prism_q::backend::Backend for prism_q::backend::sparse::SparseBackend
pub fn prism_q::backend::sparse::SparseBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::sparse::SparseBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::sparse::SparseBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::sparse::SparseBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::sparse::SparseBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::sparse::SparseBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::sparse::SparseBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::sparse::SparseBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::name(&self) -> &'static str
pub fn prism_q::backend::sparse::SparseBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::sparse::SparseBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::sparse::SparseBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::sparse::SparseBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::sparse::SparseBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::sparse::SparseBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::sparse::SparseBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::sparse::SparseBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::sparse::SparseBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::sparse::SparseBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::SpdObservableResult
pub prism_q::SpdObservableResult::mean: f64
pub prism_q::SpdObservableResult::peak_terms: usize
pub prism_q::SpdObservableResult::t_count: usize
pub prism_q::SpdObservableResult::total_discarded: f64
pub struct prism_q::SpdResult
pub prism_q::SpdResult::expectations: alloc::vec::Vec<f64>
pub prism_q::SpdResult::max_terms: usize
pub prism_q::SpdResult::t_count: usize
pub prism_q::SpdResult::total_discarded: f64
pub struct prism_q::SppObservableResult
pub prism_q::SppObservableResult::mean: f64
pub prism_q::SppObservableResult::nonzero_fraction: f64
pub prism_q::SppObservableResult::num_samples: usize
pub prism_q::SppObservableResult::std_error: f64
pub prism_q::SppObservableResult::t_count: usize
pub prism_q::SppObservableResult::variance: f64
pub struct prism_q::SppResult
pub prism_q::SppResult::expectations: alloc::vec::Vec<f64>
pub prism_q::SppResult::nonzero_fraction: f64
pub prism_q::SppResult::num_samples: usize
pub prism_q::SppResult::std_errors: alloc::vec::Vec<f64>
pub prism_q::SppResult::t_count: usize
pub struct prism_q::StabRankResult
pub prism_q::StabRankResult::discarded_weight: f64
pub prism_q::StabRankResult::num_terms: usize
pub prism_q::StabRankResult::probabilities: alloc::vec::Vec<f64>
pub prism_q::StabRankResult::pruned_count: usize
pub prism_q::StabRankResult::t_count: usize
impl prism_q::sim::stabilizer_rank::StabRankResult
pub fn prism_q::sim::stabilizer_rank::StabRankResult::fidelity_bound(&self) -> f64
pub struct prism_q::StabilizerBackend
impl prism_q::backend::stabilizer::StabilizerBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_gates_only(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::enable_lazy_destab(&mut self)
pub fn prism_q::backend::stabilizer::StabilizerBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::export_tableau(&self) -> prism_q::error::Result<(alloc::vec::Vec<u64>, alloc::vec::Vec<bool>)>
pub fn prism_q::backend::stabilizer::StabilizerBackend::init_from_tableau(&mut self, usize, alloc::vec::Vec<u64>, alloc::vec::Vec<bool>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::new(u64) -> Self
pub fn prism_q::backend::stabilizer::StabilizerBackend::new_lazy(u64) -> Self
pub fn prism_q::backend::stabilizer::StabilizerBackend::raw_tableau(&self) -> (&[u64], &[bool])
pub fn prism_q::backend::stabilizer::StabilizerBackend::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub fn prism_q::backend::stabilizer::StabilizerBackend::with_gpu_auto(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
impl core::clone::Clone for prism_q::backend::stabilizer::StabilizerBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::clone(&self) -> Self
impl prism_q::backend::Backend for prism_q::backend::stabilizer::StabilizerBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::stabilizer::StabilizerBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::stabilizer::StabilizerBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::stabilizer::StabilizerBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::stabilizer::StabilizerBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::stabilizer::StabilizerBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::stabilizer::StabilizerBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::name(&self) -> &'static str
pub fn prism_q::backend::stabilizer::StabilizerBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::stabilizer::StabilizerBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::stabilizer::StabilizerBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::stabilizer::StabilizerBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::stabilizer::StabilizerBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::stabilizer::StabilizerBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::stabilizer::StabilizerBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::stabilizer::StabilizerBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::StatevectorBackend
impl prism_q::backend::statevector::StatevectorBackend
pub fn prism_q::backend::statevector::StatevectorBackend::init_from_state(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::new(u64) -> Self
pub fn prism_q::backend::statevector::StatevectorBackend::state_vector(&self) -> &[num_complex::Complex64]
pub fn prism_q::backend::statevector::StatevectorBackend::with_gpu(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
pub fn prism_q::backend::statevector::StatevectorBackend::with_gpu_auto(self, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> Self
impl prism_q::backend::Backend for prism_q::backend::statevector::StatevectorBackend
pub fn prism_q::backend::statevector::StatevectorBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::statevector::StatevectorBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::statevector::StatevectorBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::statevector::StatevectorBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::statevector::StatevectorBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::statevector::StatevectorBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::statevector::StatevectorBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::statevector::StatevectorBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::name(&self) -> &'static str
pub fn prism_q::backend::statevector::StatevectorBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::statevector::StatevectorBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::statevector::StatevectorBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::statevector::StatevectorBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::statevector::StatevectorBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::statevector::StatevectorBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::statevector::StatevectorBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::statevector::StatevectorBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::statevector::StatevectorBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::statevector::StatevectorBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::SvgOptions
pub prism_q::SvgOptions::animate: bool
pub prism_q::SvgOptions::auto_theme: bool
pub prism_q::SvgOptions::compact: bool
pub prism_q::SvgOptions::control_radius: f64
pub prism_q::SvgOptions::dark_mode: bool
pub prism_q::SvgOptions::ellipsis_mode: core::option::Option<(usize, usize)>
pub prism_q::SvgOptions::font_size: f64
pub prism_q::SvgOptions::gate_height: f64
pub prism_q::SvgOptions::gate_min_width: f64
pub prism_q::SvgOptions::max_moments: core::option::Option<usize>
pub prism_q::SvgOptions::max_qubits: core::option::Option<usize>
pub prism_q::SvgOptions::moment_width: f64
pub prism_q::SvgOptions::padding_bottom: f64
pub prism_q::SvgOptions::padding_left: f64
pub prism_q::SvgOptions::padding_right: f64
pub prism_q::SvgOptions::padding_top: f64
pub prism_q::SvgOptions::show_barriers: bool
pub prism_q::SvgOptions::show_idle_wires: bool
pub prism_q::SvgOptions::show_legend: bool
pub prism_q::SvgOptions::show_stats_header: bool
pub prism_q::SvgOptions::show_topology: bool
pub prism_q::SvgOptions::wire_spacing: f64
impl core::default::Default for prism_q::SvgOptions
pub fn prism_q::SvgOptions::default() -> Self
pub struct prism_q::TensorNetworkBackend
impl prism_q::backend::tensornetwork::TensorNetworkBackend
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::new(u64) -> Self
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::truncation_discarded(&self) -> f64
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::with_tolerance(u64, f64) -> Self
impl prism_q::backend::Backend for prism_q::backend::tensornetwork::TensorNetworkBackend
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply(&mut self, &prism_q::circuit::Instruction) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_1q_matrix(&mut self, usize, &[[num_complex::Complex64; 2]; 2]) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_instructions(&mut self, &[prism_q::circuit::Instruction]) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::apply_region(&mut self, &prism_q::circuit::GuardedRegion) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::as_any(&self) -> core::option::Option<&dyn core::any::Any>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::block_probabilities(&self) -> core::option::Option<prism_q::Probabilities>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::bond_report(&self) -> core::option::Option<prism_q::BondReport>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::classical_results(&self) -> &[bool]
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::entanglement_entropy(&mut self, &[usize]) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::exactness(&self) -> prism_q::Exactness
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::export_statevector(&self) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::fusion_state_qubits(&self, usize) -> usize
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init(&mut self, usize, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init_from_amplitudes(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::init_from_density_matrix(&mut self, alloc::vec::Vec<num_complex::Complex64>, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::name(&self) -> &'static str
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::num_qubits(&self) -> usize
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::overlap_sq(&self, &dyn prism_q::backend::Backend) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::pauli_expectations(&self, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::placement(&self) -> prism_q::Placement
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::probabilities(&self) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::qubit_probability(&self, usize) -> prism_q::error::Result<f64>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<num_complex::Complex64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix_1q(&self, usize) -> prism_q::error::Result<[[num_complex::Complex64; 2]; 2]>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reduced_density_matrix_2q(&mut self, usize, usize) -> prism_q::error::Result<[[num_complex::Complex64; 4]; 4]>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::reset(&mut self, usize) -> prism_q::error::Result<()>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::resolved(&self) -> prism_q::ResolvedBackend
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::sample_basis_states(&mut self, usize, u64) -> prism_q::error::Result<prism_q::backend::BasisSamples>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::schmidt_values(&mut self, &[usize]) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_fused_gates(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_initial_density_matrix(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_initial_state(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_native_sampling(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_pauli_expectation(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_pauli_rotation(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_qft_block(&self) -> bool
pub fn prism_q::backend::tensornetwork::TensorNetworkBackend::supports_two_qubit_kraus(&self) -> bool
pub struct prism_q::TextOptions
pub prism_q::TextOptions::fold_width: usize
pub prism_q::TextOptions::max_moments: core::option::Option<usize>
pub prism_q::TextOptions::max_qubits: core::option::Option<usize>
pub prism_q::TextOptions::show_barriers: bool
pub prism_q::TextOptions::show_idle_wires: bool
impl core::default::Default for prism_q::TextOptions
pub fn prism_q::TextOptions::default() -> Self
pub struct prism_q::ThreadPool
impl prism_q::threading::ThreadPool
pub fn prism_q::threading::ThreadPool::install<T: core::marker::Send>(&self, impl core::ops::function::FnOnce() -> T + core::marker::Send) -> T
pub fn prism_q::threading::ThreadPool::num_threads(&self) -> usize
pub fn prism_q::threading::ThreadPool::with_threads(usize) -> prism_q::error::Result<Self>
pub struct prism_q::UnionFindDecoder
impl prism_q::UnionFindDecoder
pub fn prism_q::UnionFindDecoder::decode_packed(&self, &prism_q::sim::compiled::PackedShots) -> prism_q::error::Result<prism_q::sim::compiled::PackedShots>
pub fn prism_q::UnionFindDecoder::from_model(&prism_q::DetectorErrorModel) -> prism_q::error::Result<Self>
pub fn prism_q::UnionFindDecoder::num_detectors(&self) -> usize
pub fn prism_q::UnionFindDecoder::num_observables(&self) -> usize
pub struct prism_q::UnitaryData
impl prism_q::gates::UnitaryData
pub fn prism_q::gates::UnitaryData::matrix(&self) -> &[num_complex::Complex64]
pub fn prism_q::gates::UnitaryData::num_qubits(&self) -> usize
pub struct prism_q::Unseeded
pub trait prism_q::RankComm: core::fmt::Debug + core::marker::Send + core::marker::Sync
pub fn prism_q::RankComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::RankComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::RankComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::RankComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::RankComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::RankComm::barrier(&self)
pub fn prism_q::RankComm::rank(&self) -> usize
pub fn prism_q::RankComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::RankComm::size(&self) -> usize
impl prism_q::distributed::comm::RankComm for prism_q::distributed::comm::SerialComm
pub fn prism_q::distributed::comm::SerialComm::allgather_c64(&self, &[num_complex::Complex64]) -> alloc::vec::Vec<num_complex::Complex64>
pub fn prism_q::distributed::comm::SerialComm::allgather_f64(&self, &[f64]) -> alloc::vec::Vec<f64>
pub fn prism_q::distributed::comm::SerialComm::allgather_u64(&self, &[u64]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allgatherv_u64(&self, &[u64], &[usize]) -> alloc::vec::Vec<u64>
pub fn prism_q::distributed::comm::SerialComm::allreduce_sum_f64(&self, f64) -> f64
pub fn prism_q::distributed::comm::SerialComm::barrier(&self)
pub fn prism_q::distributed::comm::SerialComm::rank(&self) -> usize
pub fn prism_q::distributed::comm::SerialComm::sendrecv_c64(&self, usize, &[num_complex::Complex64], &mut [num_complex::Complex64])
pub fn prism_q::distributed::comm::SerialComm::size(&self) -> usize
pub trait prism_q::ShotAccumulator
pub fn prism_q::ShotAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::CorrelatorAccumulator
pub fn prism_q::CorrelatorAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::HistogramAccumulator
pub fn prism_q::HistogramAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::MarginalsAccumulator
pub fn prism_q::MarginalsAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::NullAccumulator
pub fn prism_q::NullAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
impl prism_q::ShotAccumulator for prism_q::PauliExpectationAccumulator
pub fn prism_q::PauliExpectationAccumulator::accumulate(&mut self, &prism_q::sim::compiled::PackedShots)
pub fn prism_q::bitstring(&[u64], usize) -> alloc::string::String
pub fn prism_q::compile_detector_sampler(&prism_q::circuit::Circuit, alloc::vec::Vec<alloc::vec::Vec<usize>>, alloc::vec::Vec<alloc::vec::Vec<usize>>, u64) -> prism_q::error::Result<prism_q::sim::compiled::CompiledDetectorSampler>
pub fn prism_q::compile_forward(&prism_q::circuit::Circuit, u64) -> prism_q::error::Result<prism_q::sim::compiled::CompiledSampler>
pub fn prism_q::compile_measurements(&prism_q::circuit::Circuit, u64) -> prism_q::error::Result<prism_q::sim::compiled::CompiledSampler>
pub fn prism_q::compile_noisy(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, u64) -> prism_q::error::Result<prism_q::sim::noise::NoisyCompiledSampler>
pub fn prism_q::compile_qec_program_rows(&prism_q::qec::QecProgram) -> prism_q::error::Result<prism_q::qec::QecCompiledRows>
pub fn prism_q::density_matrix_expectation_values(&prism_q::circuit::Circuit, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], core::option::Option<&prism_q::sim::noise::NoiseModel>, u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::inverse_light_cone(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm]) -> alloc::vec::Vec<bool>
pub fn prism_q::noisy_marginals_analytical(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::parse_qec_program(&str) -> prism_q::error::Result<prism_q::qec::QecProgram>
pub fn prism_q::run_expectation_gradient(&prism_q::circuit::Circuit, &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)], &prism_q::circuit::parameter::Parameters, u64) -> prism_q::error::Result<prism_q::sim::gradient::ExpectationGradient>
pub fn prism_q::run_expectation_gradient_shift(&prism_q::circuit::Circuit, &[(f64, alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>)], &prism_q::circuit::parameter::Parameters, u64) -> prism_q::error::Result<prism_q::sim::gradient::ExpectationGradient>
pub fn prism_q::run_expectation_values(&prism_q::circuit::Circuit, &[alloc::vec::Vec<prism_q::sim::unified_pauli::PauliTerm>], u64) -> prism_q::error::Result<alloc::vec::Vec<f64>>
pub fn prism_q::run_observable_expectation(&prism_q::circuit::Circuit, &prism_q::PauliObservable, u64) -> prism_q::error::Result<prism_q::ObservableExpectation>
pub fn prism_q::run_on(&mut dyn prism_q::backend::Backend, &prism_q::circuit::Circuit) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::run_on_state(&mut dyn prism_q::backend::Backend, &prism_q::circuit::Circuit, &[num_complex::Complex64]) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::run_qasm(&str, u64) -> prism_q::error::Result<prism_q::sim::RunOutcome>
pub fn prism_q::run_qec_program(&prism_q::qec::QecProgram) -> prism_q::error::Result<prism_q::QecSampleResult>
pub fn prism_q::run_qec_program_reference(&prism_q::qec::QecProgram) -> prism_q::error::Result<prism_q::QecSampleResult>
pub fn prism_q::run_qec_program_spd_rerouted(&prism_q::qec::QecProgram, &[prism_q::QecObservableReroute]) -> prism_q::error::Result<prism_q::QecSampleResult>
pub fn prism_q::run_qec_program_with_strategy(&prism_q::qec::QecProgram, prism_q::QecTStrategy) -> prism_q::error::Result<prism_q::QecSampleResult>
pub fn prism_q::run_shots_compiled(&prism_q::circuit::Circuit, usize, u64) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::run_shots_compiled_with_gpu(&prism_q::circuit::Circuit, usize, u64, alloc::sync::Arc<prism_q::gpu::GpuContext>) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::run_shots_noisy(&prism_q::circuit::Circuit, &prism_q::sim::noise::NoiseModel, usize, u64) -> prism_q::error::Result<prism_q::ShotsResult>
pub fn prism_q::run_spd(&prism_q::circuit::Circuit, f64, usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdResult>
pub fn prism_q::run_spd_observable(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm], f64, usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdObservableResult>
pub fn prism_q::run_spd_observable_budgeted(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm], usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdObservableResult>
pub fn prism_q::run_spd_observable_light_cone(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm], f64, usize) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdObservableResult>
pub fn prism_q::run_spd_with(&prism_q::circuit::Circuit, &prism_q::sim::unified_pauli::SpdTruncation) -> prism_q::error::Result<prism_q::sim::unified_pauli::SpdResult>
pub fn prism_q::run_spp(&prism_q::circuit::Circuit, usize, u64) -> prism_q::error::Result<prism_q::sim::unified_pauli::SppResult>
pub fn prism_q::run_spp_observable(&prism_q::circuit::Circuit, &[prism_q::sim::unified_pauli::PauliTerm], usize, u64) -> prism_q::error::Result<prism_q::sim::unified_pauli::SppObservableResult>
pub fn prism_q::run_stabilizer_rank(&prism_q::circuit::Circuit, u64) -> prism_q::error::Result<prism_q::sim::stabilizer_rank::StabRankResult>
pub fn prism_q::run_stabilizer_rank_approx(&prism_q::circuit::Circuit, usize, u64) -> prism_q::error::Result<prism_q::sim::stabilizer_rank::StabRankResult>
pub fn prism_q::simulate(&prism_q::circuit::Circuit) -> prism_q::sim::Simulate<'_, prism_q::sim::Unseeded>
pub fn prism_q::stabilizer_inner_product(&prism_q::backend::stabilizer::StabilizerBackend, &prism_q::backend::stabilizer::StabilizerBackend, usize) -> prism_q::error::Result<num_complex::Complex64>
pub fn prism_q::stabilizer_overlap_sq(&prism_q::backend::stabilizer::StabilizerBackend, &prism_q::backend::stabilizer::StabilizerBackend, usize) -> f64
pub type prism_q::Result<T> = core::result::Result<T, prism_q::error::PrismError>
