Skip to content

std.epistemic

Generated by sema doc from crates/sema-runtime/assets/stdlib/sema/epistemic.sema. Import with from std.epistemic import …. For a narrative introduction see std.epistemic.

std.epistemic - explicit uncertainty, evidence, horizons, and decisions.

Epistemic estimates never coerce to their payload. Callers must match an EpistemicDecision and keep the estimate plus its conditional guarantee attached. Composition uses an explicit conservative or independent rule and preserves all evidence, assumptions, validity, and provenance.

Variants

  • known
  • degraded
  • unknown

Variants

  • supported
  • violated
  • unknown

Variants

  • accepted
  • unknown_value
  • outside_validity
  • excessive_uncertainty
  • insufficient_horizon
  • insufficient_coverage
  • unsupported_guarantee

Variants

  • conservative
  • independent

Fields

field type descriptor
id str
source str
observed_at f64
reliability f64
summary str
provenance list[str]

Fields

field type descriptor
id str
statement str
active bool
checked_at f64
evidence_ids list[str]

Fields

field type descriptor
label str
in_scope bool
distance_to_boundary f64
checked_at f64

Fields

field type descriptor
aleatoric f64
epistemic f64
parameter f64
structural f64
distributional f64
numerical f64
evidence f64
agent f64
rule CompositionRule

Fields

field type descriptor
steps int
duration f64
error_threshold f64
coverage f64
method str
uncertainty Uncertainty
assumptions list[Assumption]
valid bool

Fields

field type descriptor
property str
limit f64
observed_bound f64
coverage f64
horizon Horizon
assumptions list[Assumption]
evidence list[Evidence]
status GuaranteeStatus

Fields

field type descriptor
value T
status EpistemicStatus
uncertainty Uncertainty
evidence list[Evidence]
assumptions list[Assumption]
validity ValidityRegion
provenance list[str]
measured_at f64

Variants

  • known(Estimate[T])
  • unknown(str, Uncertainty, list[Evidence], list[Assumption], list[str])

Variants

  • accepted(Estimate[T], ConditionalGuarantee)
  • abstained(DecisionReason, str, list[Evidence])
def zero_uncertainty()
def component(left: f64, right: f64, rule: CompositionRule)

Parameters

name type
left f64
right f64
rule CompositionRule
def compose_uncertainty(left: Uncertainty, right: Uncertainty, rule: CompositionRule)

Parameters

name type
left Uncertainty
right Uncertainty
rule CompositionRule
def has_evidence(values: list[Evidence], id: str)

Parameters

name type
values list[Evidence]
id str
def merge_evidence(left: list[Evidence], right: list[Evidence])

Parameters

name type
left list[Evidence]
right list[Evidence]
def has_assumption(values: list[Assumption], id: str)

Parameters

name type
values list[Assumption]
id str
def merge_assumptions(left: list[Assumption], right: list[Assumption])

Parameters

name type
left list[Assumption]
right list[Assumption]
def has_text(values: list[str], value: str)

Parameters

name type
values list[str]
value str
def merge_provenance(left: list[str], right: list[str], operation: str)

Parameters

name type
left list[str]
right list[str]
operation str
def all_assumptions_active(values: list[Assumption])

Parameters

name type
values list[Assumption]
def estimate[T](value: T, status: EpistemicStatus, uncertainty: Uncertainty, evidence: list[Evidence], assumptions: list[Assumption], validity: ValidityRegion, provenance: list[str], measured_at: f64)

Parameters

name type
value T
status EpistemicStatus
uncertainty Uncertainty
evidence list[Evidence]
assumptions list[Assumption]
validity ValidityRegion
provenance list[str]
measured_at f64
def known_value[T](value: T, status: EpistemicStatus, uncertainty: Uncertainty, evidence: list[Evidence], assumptions: list[Assumption], validity: ValidityRegion, provenance: list[str], measured_at: f64)

Parameters

name type
value T
status EpistemicStatus
uncertainty Uncertainty
evidence list[Evidence]
assumptions list[Assumption]
validity ValidityRegion
provenance list[str]
measured_at f64
def unknown_value[T](reason: str, uncertainty: Uncertainty, evidence: list[Evidence], assumptions: list[Assumption], provenance: list[str])

Parameters

name type
reason str
uncertainty Uncertainty
evidence list[Evidence]
assumptions list[Assumption]
provenance list[str]
def derive[T, U](parent: Estimate[T], value: U, status: EpistemicStatus, local_uncertainty: Uncertainty, local_evidence: list[Evidence], local_assumptions: list[Assumption], operation: str, measured_at: f64)

Parameters

name type
parent Estimate[T]
value U
status EpistemicStatus
local_uncertainty Uncertainty
local_evidence list[Evidence]
local_assumptions list[Assumption]
operation str
measured_at f64
def compose[T, U, V](left: Estimate[T], right: Estimate[U], value: V, status: EpistemicStatus, local_uncertainty: Uncertainty, local_evidence: list[Evidence], local_assumptions: list[Assumption], operation: str, measured_at: f64)

Parameters

name type
left Estimate[T]
right Estimate[U]
value V
status EpistemicStatus
local_uncertainty Uncertainty
local_evidence list[Evidence]
local_assumptions list[Assumption]
operation str
measured_at f64
def evaluate_guarantee(property: str, limit: f64, observed_bound: f64, coverage: f64, horizon: Horizon, assumptions: list[Assumption], evidence: list[Evidence])

Parameters

name type
property str
limit f64
observed_bound f64
coverage f64
horizon Horizon
assumptions list[Assumption]
evidence list[Evidence]
def decide[T](value: EpistemicValue[T], guarantee: ConditionalGuarantee, min_horizon_steps: int, max_uncertainty: f64, min_coverage: f64) -> EpistemicDecision[T]

Parameters

name type
value EpistemicValue[T]
guarantee ConditionalGuarantee
min_horizon_steps int
max_uncertainty f64
min_coverage f64

Returns EpistemicDecision[T]