mixle.semantics module¶
Minimal domain-neutral semantics for uncertain values and inference artifacts.
The contracts in this module describe what a quantity and result mean. They deliberately exclude inquiry graphs, domain laws, solvers, jobs, and storage. Operational metadata is serialized for audit but excluded from semantic identity, so moving an unchanged problem between backends cannot change it.
- class CalibrationArtifact(id: 'str', target_identity: 'str', method: 'str', metrics: 'Mapping[str, float]', slice: 'Mapping[str, str]'=<factory>, schema_version: 'str' = '1.0.0')[source]
Bases:
object
- class CapabilityExtension(id: 'str', owner_project: 'str', input_schema_uri: 'str', output_schema_uri: 'str', maturity: 'str', schema_version: 'str' = '1.0.0')[source]
Bases:
object
- class ConstraintSpec(lower: 'float | None' = None, upper: 'float | None' = None, lower_inclusive: 'bool' = True, upper_inclusive: 'bool' = True, allowed_values: 'tuple[str | int | float | bool, ...]' = (), schema_version: 'str' = '1.0.0')[source]
Bases:
object- Parameters:
- accepts(value)[source]
Whether
value(a scalar, or a non-empty vector of scalars) satisfies this constraint.Admissibility is decided by explicit checks, never by IEEE comparison behavior: NaN used to be accepted by a bounded constraint because BOTH ordered comparisons against it are false, and an empty list was accepted because the validation loop ran zero times – a vacuous container certified as satisfying every bound. A bounded constraint also has no ordering to apply to a Boolean or a non-numeric value (
boolonly compares because it subclassesint), so those are rejected rather than silently ranked.
- class DecisionArtifact(id: 'str', alternatives: 'tuple[str, ...]', selected: 'str', utility: 'Mapping[str, float]', posterior_identity: 'str', risk_measure: 'str', assumptions: 'tuple[str, ...]' = (), schema_version: 'str' = '1.0.0')[source]
Bases:
object
- class LikelihoodSpec(id: 'str', family: 'str', observation_ids: 'tuple[str, ...]', parameters: 'Mapping[str, Any]'=<factory>, discrepancy_ref: 'str | None' = None, schema_version: 'str' = '1.0.0')[source]
Bases:
object
- class ObservationSpec(id: 'str', value_spec_id: 'str', content_digest: 'str', data_ref: 'str', likelihood: 'LikelihoodSpec', measurement_uncertainty: 'float | None' = None, unit: 'str | None' = None, schema_version: 'str' = '1.0.0')[source]
Bases:
object
- class PosteriorArtifact(id: 'str', values: 'tuple[ValueSpec, ...]', observations: 'tuple[ObservationSpec, ...]', likelihood: 'LikelihoodSpec', method: 'str', random_seed: 'int', summary: 'Mapping[str, Any]', uncertainty: 'tuple[UncertaintyComponent, ...]', sample_digest: 'str | None' = None, diagnostics: 'Mapping[str, Any]'=<factory>, sample_ref: 'str | None' = None, backend_id: 'str | None' = None, job_id: 'str | None' = None, schema_version: 'str' = '1.0.0')[source]
Bases:
object- Parameters:
id (str)
values (tuple[ValueSpec, ...])
observations (tuple[ObservationSpec, ...])
likelihood (LikelihoodSpec)
method (str)
random_seed (int)
uncertainty (tuple[UncertaintyComponent, ...])
sample_digest (str | None)
sample_ref (str | None)
backend_id (str | None)
job_id (str | None)
schema_version (str)
- property identity: str
The content digest fixed at construction – a durable record cannot drift into a new identity.
- class PredictiveArtifact(id: 'str', posterior_identity: 'str', target_value_ids: 'tuple[str, ...]', content_digest: 'str', uncertainty: 'tuple[UncertaintyComponent, ...]', method: 'str', backend_id: 'str | None' = None, schema_version: 'str' = '1.0.0')[source]
Bases:
object
- class PriorSpec(id: 'str', family: 'str', parameters: 'Mapping[str, Any]', unit: 'str' = '1', source_ref: 'str | None' = None, schema_version: 'str' = '1.0.0')[source]
Bases:
object- Parameters:
- property identity: str
The content digest fixed at construction – a durable record cannot drift into a new identity.
- class TraceEvent(trace_id: 'str', sequence: 'int', event_type: 'str', semantic_identity: 'str', payload: 'Mapping[str, Any]', occurred_at: 'str', schema_version: 'str' = '1.0.0')[source]
Bases:
object
- class TransformSpec(kind: 'TransformKind' = <TransformKind.IDENTITY: 'identity'>, scale: 'float' = 1.0, offset: 'float' = 0.0, lower: 'float' = 0.0, upper: 'float' = 1.0, schema_version: 'str' = '1.0.0')[source]
Bases:
object- Parameters:
- class UncertaintyComponent(id: 'str', kind: 'UncertaintyKind', measure: 'str', value: 'float | None' = None, artifact_digest: 'str | None' = None, unit: 'str' = '1', schema_version: 'str' = '1.0.0')[source]
Bases:
object
- class ValueSpec(id: 'str', role: 'ValueRole', unit: 'str', dtype: 'str' = 'float64', shape: 'tuple[int, ...]'=(), transform: 'TransformSpec' = <factory>, constraint: 'ConstraintSpec | None' = None, prior: 'PriorSpec | None' = None, value: 'Any' = None, expression: 'str | None' = None, dependencies: 'tuple[str, ...]'=(), description: 'str' = '', schema_version: 'str' = '1.0.0')[source]
Bases:
object- Parameters:
- property identity: str
The content digest fixed at construction – a durable record cannot drift into a new identity.