pub enum KktRefusalDiagnosis {
RankDeficientHPen,
PhantomMultiplierWithWellConditionedH,
ActiveSetIncomplete,
AliasingDetectedAtFit,
}Expand description
Three-way classification of why the cert refused, computed from the
H_pen spectrum and the projected residual at the refusing iterate.
RankDeficientHPen is the regression canary the nullspace lead’s
smooth-construction rework is intended to eliminate; keep this variant
intact when extending — it doubles as the user-facing signal for
“an unconstrained polynomial null space slipped past absorption.”
Relocated from gam-solve’s custom_family/joint_newton.rs (issue #1521
crate carve): this is the neutral diagnostic carrier that gam-solve’s
REML/PIRLS core consumes when classifying a custom-family cert refusal,
so it must live BELOW both the core and the (extracted) custom-family
subsystem.
Variants§
RankDeficientHPen
PhantomMultiplierWithWellConditionedH
ActiveSetIncomplete
AliasingDetectedAtFit
Cross-block identifiability aliasing surfaced mid-inner-solve (e.g., a binding active set materialised a 2-way alias that the pre-fit audit could not see at the cold design). The fix is structural — drop or reparameterise the aliased block; rho-anneal will not recover.
Implementations§
Source§impl KktRefusalDiagnosis
impl KktRefusalDiagnosis
pub fn as_str(&self) -> &'static str
Sourcepub fn parse_from_error(message: &str) -> Option<Self>
pub fn parse_from_error(message: &str) -> Option<Self>
Parse the textual diagnosis: field embedded in the structured
bubbled error string. Returns None when no recognised label is
present (legacy / non-cert-refusal error strings).
pub fn guidance(self) -> &'static str
Trait Implementations§
Source§impl Clone for KktRefusalDiagnosis
impl Clone for KktRefusalDiagnosis
Source§fn clone(&self) -> KktRefusalDiagnosis
fn clone(&self) -> KktRefusalDiagnosis
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for KktRefusalDiagnosis
Source§impl Debug for KktRefusalDiagnosis
impl Debug for KktRefusalDiagnosis
impl Eq for KktRefusalDiagnosis
Source§impl PartialEq for KktRefusalDiagnosis
impl PartialEq for KktRefusalDiagnosis
Source§fn eq(&self, other: &KktRefusalDiagnosis) -> bool
fn eq(&self, other: &KktRefusalDiagnosis) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for KktRefusalDiagnosis
Auto Trait Implementations§
impl Freeze for KktRefusalDiagnosis
impl RefUnwindSafe for KktRefusalDiagnosis
impl Send for KktRefusalDiagnosis
impl Sync for KktRefusalDiagnosis
impl Unpin for KktRefusalDiagnosis
impl UnsafeUnpin for KktRefusalDiagnosis
impl UnwindSafe for KktRefusalDiagnosis
Blanket Implementations§
impl<T> Boilerplate for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
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>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
impl<T> Scalar for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§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).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.