pub struct FoundationDescriptor {Show 13 fields
pub name: String,
pub description: Option<String>,
pub uses: Vec<String>,
pub defines: Vec<(String, String)>,
pub extends: Option<String>,
pub numeric_domain: Option<String>,
pub truth_domain: Option<String>,
pub carrier: Vec<String>,
pub strict_carrier: bool,
pub truth_tables: Vec<(String, Vec<TruthTableRow>)>,
pub experimental: bool,
pub root: Option<String>,
pub abits: Vec<(String, String)>,
}Expand description
A foundation descriptor. Bundles a coherent set of root-construct interpretations. Selecting a foundation never silently rewires behaviour; the host operators always run, but the active-foundation tag is exposed via the foundation report so users can audit which foundation they are trusting.
Fields§
§name: String§description: Option<String>§uses: Vec<String>§defines: Vec<(String, String)>§extends: Option<String>§numeric_domain: Option<String>§truth_domain: Option<String>§carrier: Vec<String>Carrier (issue #97, Section 2): the explicit set of values the
foundation considers legal for queries and probability assignments.
Each entry is stored as a string so enter_foundation can resolve
symbolic constants (true, false, unknown) through
env.symbol_prob at activation time. Numeric literals stay literal.
strict_carrier: boolWhen true, the active with-foundation scope enforces the carrier
at runtime: out-of-carrier query results and probability
assignments raise an E063 diagnostic instead of being silently
clamped. Defaults to false for backward compatibility — declaring
(carrier ...) alone is informational.
truth_tables: Vec<(String, Vec<TruthTableRow>)>Links-defined finite truth tables (issue #97, Section 3 of
netkeep80’s punch-list). Each entry rebinds the named operator to
the listed row set for the duration of (with-foundation ...).
Inputs and outputs are stored as strings so enter_foundation can
resolve symbolic truth constants (true, false, unknown)
through env.symbol_prob at activation time. Numeric literals stay
literal. A row whose inputs don’t match falls through to the
previously installed op so partial tables remain backward-
compatible.
experimental: boolExperimental MTC/anum foundation profile metadata (issue #97,
Phase 9). When experimental is true the trust audit prints an
[experimental] tag next to the foundation name so consumers can
see it carries no stability guarantees. root is the foundation’s
root symbol (e.g. ∞ for mtc-anum) and abits lists its
foundational alphabet pairs (symbol → meaning).
root: Option<String>§abits: Vec<(String, String)>Trait Implementations§
Source§impl Clone for FoundationDescriptor
impl Clone for FoundationDescriptor
Source§fn clone(&self) -> FoundationDescriptor
fn clone(&self) -> FoundationDescriptor
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more