pub struct LoweringConfig<'a> {
pub gate_duration: f64,
pub decoder_latency_rounds: u32,
pub noise: Option<&'a NoiseModel>,
pub source_timing: SourceTiming,
pub max_quantum_variants: usize,
}Expand description
Bounded lowering and timing options.
Fields§
§gate_duration: f64Uniform duration assigned to every nonempty quantum moment. This must exceed the runtime clock tolerance.
decoder_latency_rounds: u32Streaming-decoder latency, in physical memory rounds.
noise: Option<&'a NoiseModel>Optional post-merge circuit noise. The IR instantiator applies it once.
source_timing: SourceTimingAbsolute source-release epochs. Prepared Y sources are shifted so they finish with ordinary Clifford source work.
max_quantum_variants: usizeMaximum reachable alternatives materialized for one guarded quantum stage.
Implementations§
Source§impl LoweringConfig<'_>
impl LoweringConfig<'_>
Sourcepub fn runtime_config(&self, seed: u64) -> RuntimeConfig
pub fn runtime_config(&self, seed: u64) -> RuntimeConfig
Runtime defaults consistent with this lowering configuration.
Circuit noise is inserted while lowering. Dynamic idle noise instead
uses a per-time-unit rate, so this converts the circuit model’s
per-tick p_idle by the configured gate duration.
Trait Implementations§
Source§impl<'a> Clone for LoweringConfig<'a>
impl<'a> Clone for LoweringConfig<'a>
Source§fn clone(&self) -> LoweringConfig<'a>
fn clone(&self) -> LoweringConfig<'a>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<'a> Copy for LoweringConfig<'a>
Source§impl<'a> Debug for LoweringConfig<'a>
impl<'a> Debug for LoweringConfig<'a>
Auto Trait Implementations§
impl<'a> Freeze for LoweringConfig<'a>
impl<'a> RefUnwindSafe for LoweringConfig<'a>
impl<'a> Send for LoweringConfig<'a>
impl<'a> Sync for LoweringConfig<'a>
impl<'a> Unpin for LoweringConfig<'a>
impl<'a> UnsafeUnpin for LoweringConfig<'a>
impl<'a> UnwindSafe for LoweringConfig<'a>
Blanket Implementations§
§impl<T, BorrowedSelf> BitwiseMutViaBorrow<BorrowedSelf> for T
impl<T, BorrowedSelf> BitwiseMutViaBorrow<BorrowedSelf> for T
fn assign_index(&mut self, index: usize, to: bool)
fn negate_index(&mut self, index: usize)
fn clear_bits(&mut self)
fn assign_random(
&mut self,
bit_count: usize,
random_number_generator: &mut impl RngExt,
)where
BorrowedSelf: BitLength,
§impl<Bits, Other, BorrowedSelf, BorrowedOther> BitwisePairMutViaBorrow<Other, BorrowedSelf, BorrowedOther> for Bits
impl<Bits, Other, BorrowedSelf, BorrowedOther> BitwisePairMutViaBorrow<Other, BorrowedSelf, BorrowedOther> for Bits
fn assign(&mut self, other: &Other)
fn bitxor_assign(&mut self, other: &Other)
fn bitand_assign(&mut self, other: &Other)
fn bitor_assign(&mut self, other: &Other)
§impl<T, Other, BorrowedSelf, BorrowedOther> BitwisePairViaBorrow<Other, BorrowedSelf, BorrowedOther> for T
impl<T, Other, BorrowedSelf, BorrowedOther> BitwisePairViaBorrow<Other, BorrowedSelf, BorrowedOther> for T
§impl<T, BorrowedSelf> BitwiseViaBorrow<BorrowedSelf> for T
impl<T, BorrowedSelf> BitwiseViaBorrow<BorrowedSelf> for T
fn index(&self, index: usize) -> bool
fn weight(&self) -> usize
fn parity(&self) -> bool
fn is_zero(&self) -> bool
fn is_unit(&self, index: usize) -> bool
fn support<'a>(&'a self) -> impl SortedIteratorwhere
BorrowedSelf: 'a,
fn max_support(&self) -> Option<usize>
fn min_support(&self) -> Option<usize>
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more