Skip to main content

Module log_strength

Module log_strength 

Source
Expand description

Exact supported domain for logarithmic penalty strengths.

Every smoothing precision has the form lambda = exp(rho). The value, gradient, and Hessian with respect to rho agree only while that exponentiation is evaluated exactly: clamping rho or flooring/ceilinging lambda creates a constant tail with a fictitious nonzero derivative. The inclusive [-700, 700] interval deliberately stays inside binary64’s finite, normal exponential range: its lower face avoids subnormal-strength arithmetic and its upper face leaves overflow guard margin. It is a solver policy domain, not a claim about the widest representable binary64 input. This module owns the single domain used by all penalty implementations.

Structs§

IndexedLogStrengthDomainError
Coordinate-aware failure returned when validating a vector of logarithmic strengths.
LogStrengthDomainError
A logarithmic strength is outside the exact supported solver contract.
PhysicalStrengthDomainError

Constants§

LOG_STRENGTH_MAX
Largest supported logarithmic strength (inclusive).
LOG_STRENGTH_MIN
Smallest supported logarithmic strength (inclusive).

Functions§

checked_exp_log_strength
Exponentiate a logarithmic strength on the exact closed solver domain.
checked_exp_log_strengths
Convert a complete vector atomically on the exact supported domain.
checked_log_strength
Recover a canonical logarithmic coordinate without flooring or ceilinging a physical strength.
validate_log_strength
Validate a logarithmic strength without changing it.
validate_log_strengths
Validate a complete vector, reporting the deterministic smallest invalid coordinate before any caller-visible computation begins.