Struct CanonicalRootSet
pub struct CanonicalRootSet { /* private fields */ }Description
Canonical root callbacks reconstructed in one registration’s proof order.
This is the only runtime bridge from a backend-local root index to Event Activations. Construction independently proves that the registration is a complete partition of the program’s Event Activations and that every group lowers to the exact structural guard represented by its callback slot.
Implementations§
§impl CanonicalRootSet
impl CanonicalRootSet
pub fn lower(
program: &CpuProgram,
flow: Id<Relation>,
registration: RootRegistrationId,
proof: RootRegistrationProof,
) -> Result<CanonicalRootSet, Diagnostic>
pub fn lower( program: &CpuProgram, flow: Id<Relation>, registration: RootRegistrationId, proof: RootRegistrationProof, ) -> Result<CanonicalRootSet, Diagnostic>
Rebuild all root callbacks from canonical semantics and registration proof, in proof order.
§Errors
Returns EQ0705 if the proof omits, repeats, splits, or combines Event
Activations, or any group cannot lower against the selected ODE flow.
pub const fn registration(&self) -> RootRegistrationId
pub const fn registration(&self) -> RootRegistrationId
Content-addressed identity carried by every backend proposal.
pub const fn proof(&self) -> &RootRegistrationProof
pub const fn proof(&self) -> &RootRegistrationProof
Canonical root callback order and atomic Activation grouping.
pub fn root_problem(&self) -> Result<RegisteredRootProblem<'_>, Diagnostic>
pub fn root_problem(&self) -> Result<RegisteredRootProblem<'_>, Diagnostic>
Borrow this callback set through the backend-neutral registered seam.
§Errors
Returns EQ0705 only if internal callback/proof shape was corrupted.
pub fn linearize_proposal(
&self,
proposal: &RootProposal,
guard_tolerance: f64,
) -> Result<CanonicalEventLinearization, Diagnostic>
pub fn linearize_proposal( &self, proposal: &RootProposal, guard_tolerance: f64, ) -> Result<CanonicalEventLinearization, Diagnostic>
Validate one registered numerical proposal and lower its canonical reset, event-time derivative, and saltation operator.
§Errors
Returns EQ0705 for registration/index/equation drift or the selected
event’s existing direction, localization, reset, or transversality
diagnostics.
Trait Implementations§
§impl Clone for CanonicalRootSet
impl Clone for CanonicalRootSet
§impl Debug for CanonicalRootSet
impl Debug for CanonicalRootSet
§impl PartialEq for CanonicalRootSet
impl PartialEq for CanonicalRootSet
§fn eq(&self, other: &CanonicalRootSet) -> bool
fn eq(&self, other: &CanonicalRootSet) -> bool
self and other values to be equal, and is used by ==.§impl RootFunctions for CanonicalRootSet
impl RootFunctions for CanonicalRootSet
impl StructuralPartialEq for CanonicalRootSet
Auto Trait Implementations§
impl Freeze for CanonicalRootSet
impl RefUnwindSafe for CanonicalRootSet
impl Send for CanonicalRootSet
impl Sync for CanonicalRootSet
impl Unpin for CanonicalRootSet
impl UnsafeUnpin for CanonicalRootSet
impl UnwindSafe for CanonicalRootSet
Blanket Implementations§
Source§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
§fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
§impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
§type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
§fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
Source§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, Dst> ConvAsUtil<Dst> for T
impl<T, Dst> ConvAsUtil<Dst> for T
§fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§impl<T> ConvUtil for T
impl<T> ConvUtil for T
§fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
§fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
§fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
Source§impl<T> From<T> for T
impl<T> From<T> for T
Source§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>where
F: FnOnce(&Self) -> bool,
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>where
F: FnOnce(&Self) -> bool,
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Same for T
impl<T> Same for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.