world-school-student-state-selection
The groupant beside world/src/school.rs in the Mova repository: what the code computes, what it never does, how to go back from its outputs, its invariants, cost and checks.
Facts
Implementation material. A Mova code model describes this code at one source revision: partial models, finite checks and their stated scope. It is not a reviewed general exposition, and its labels are shown as written, never raised.
Components
| component | label | where |
|---|---|---|
| approximant | partial source model | forward |
| ast | partial | ../../syntax.json |
| composition | partial source model | composition |
| cost | partial source model | cost |
| descriptant | partial source model | epoch-memory |
| invariant | partial source model | invariant |
| tests | partial source model | checks |
Obernants
The typed relations around the forward model: the behaviour complement (what the code never does), the reverse reconstruction (every input compatible with an output) and specialised views.
| id | type | label | where |
|---|---|---|---|
world-school-student-state-selection-behavior-complement | behavior_complement | partial source model | behavior-complement |
world-school-student-state-selection-reverse-reconstruction | reverse_reconstruction | partial source model | reverse-reconstruction |
world-school-student-state-selection-coupling | constraint_relation | partial source model | coupling |
world-school-student-state-selection-observation-fiber | information_loss | partial source model | observation-fiber |
Model text
forward
Choose T=acc when nonempty, else w. Sum T[f,o] over unique features in i128 and maximize (score,-op discriminant) over allowed; empty allowed defaults Add. Positive reasons for winner sort by decreasing weight then lexical key, truncated to three. Answer applies the chosen op.
invariant
Tie order is Add<Sub<Mul<Div, regardless of allowed order. Why excludes nonpositive weights. On the supported 64-bit target at most usize::MAX i64 contributions fit in i128. p.op does not affect selection.
cost
After feature generation O(F log K) scoring over constant four operations, O(F log F) reason sorting and O(F) storage. Scalar widening keeps this bound; constants unmeasured.
composition
The same table feeds score and reasons. Tests compare MAX+MAX to MAX-1, reversed allowed order, empty allowed, and an unrelated accumulator activating the averaged table. No parser or teacher.
epoch-memory
2026-10-30 initial school source-bound epoch. Prospective model: keep O(1) arithmetic/partition cost, widen aggregation scalars, and expose actual codecs without filesystem effects. Old native witnesses found unchecked operation, score, marginal vote, partition and duplicate-vote arithmetic; legacy serialization synthesized zero accumulators. Review found that dropping explicit zero accumulators also changed the prediction table. Both activation directions now have named tests. No speedup, approximate-error profile or general semantic proof is claimed. Unchecked update/world arithmetic retains representability premises.
checks
cargo test -p world --lib school::wave12_models -- --test-threads=1. Root evidence.md binds exact source/evidence hashes, repeated debug/release outcomes and a compiled production mutation. Named fixture domains appear in composition. Syntax is a source-bound partial projection; macros remain opaque. No semantic AST or live school execution.
behavior-complement
Subject/revision: manifest hash and byte scope. Universe: supplied finite inputs, fixed dependencies, successful allocation and the explicit arithmetic premises of this scope. Inner absent-behavior relation: A larger discriminant cannot win an equal-score tie against an allowed smaller one. Current weights cannot contribute while acc is nonempty. Negative/zero features cannot appear in why. These are source-derived constraints with finite named witnesses where indicated; external behavior remains unknown.
reverse-reconstruction
Subject/revision: manifest hash. Operator: compatible preimage/converse, holding dependencies and admissibility fixed. For observed choice o retain all tables satisfying score(o)>=score(j), strictly greater where j has smaller discriminant. Observed reasons constrain positive entries and ordering but omitted entries leave many compatible tables. Partial relational description, not a complete inverse search or a unique causal history.
coupling
Subject/revision: manifest hash. Constraint relation on stage identities and ordered intermediate states: The same table feeds score and reasons. Tests compare MAX+MAX to MAX-1, reversed allowed order, empty allowed, and an unrelated accumulator activating the averaged table. No parser or teacher. Supplied native joins and source inspection are distinct evidence.
observation-fiber
Subject/revision: manifest hash. Domain: scoped inputs with the declared observation. The information-loss relation equates inputs whose observation agrees: Adding equal score offsets to all operations preserves the winner. Many tables share the top-three reasons; current weights alone cannot reveal accumulator activation. Finite tests do not establish unrestricted completeness.
This page in Markdown → https://md.groupants.elamur.ai/free/en/mova/world/src/school.rs.groupant/student-state.groupant/selection.groupant/