world-school-actors-world-answer-priority
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-actors-world-answer-priority-behavior-complement | behavior_complement | partial source model | behavior-complement |
world-school-actors-world-answer-priority-reverse-reconstruction | reverse_reconstruction | partial source model | reverse-reconstruction |
world-school-actors-world-answer-priority-shadowed_none | failure_order | partial source model | shadowed_none |
world-school-actors-world-answer-priority-ordered_quantity | constraint_relation | partial source model | ordered_quantity |
world-school-actors-world-answer-priority-world_readonly | effect_boundary | partial source model | world_readonly |
world-school-actors-world-answer-priority-schema_ambiguity | information_loss | partial source model | schema_ambiguity |
Model text
Wave34, 2026-10-31. Source-bound helper model; no universal proof or approximation-error certificate. Historical parent epoch remains intact.
forward
Ordered return chain: front+back; front direction; inclusive span; clock wrap; minutes; unknown start/change; full/remainder packing; rate; remaining share; spent; share; last group; named subset; comparisons; named holder plus shift; all; isolated question number; first original holder/event subject. A selected branch may return None and shadows later candidates.
invariant
Answer schemas observe supplied fields/world only. Missing prerequisite inside a selected branch is not permission to try later branches. Arithmetic requires representability, valid divisors and abs not overflowing; this is not a general arithmetic validator.
cost
Most branches O(1) plus map lookup; spent scans J events, selected-holder sum scans S lookups, total scans A actors. Worst O(J+S log A+A); no persistent mutation.
composition
play must succeed before solve calls answer_of, even for field-only schemas. This node models priority within answer_of separately. Parent focus can filter holdings/events while retaining schema flags, which affects this precedence.
behavior-complement
Exclude span fallback when front/ask_behind selects a missing line; exclude ask_all fallback when nonempty ask_some contains a missing actor. Exclude last-group results when an earlier valid share schema is present. These are absence constraints over supplied Reading/world/result triples.
reverse-reconstruction
For observed result z, union the compatible fibers of each first-selected schema, requiring all earlier selection guards false (or not applicable). Later fields are unconstrained. None includes missing lookup and invalid exact-share fibers at the selected stage; it does not identify which schema failed.
shadowed_none
Front+ask_behind returns line.map(n-front); line=None ends evaluation even with a valid span. Nonempty ask_some sums Options and returns None for one missing key before ask_whose/all.
ordered_quantity
front+back computes f+b-1 ahead of ask_front; inclusive span computes e-s+1 ahead of clock/minutes; packing full precedes remainder when both flags hold.
world_readonly
Output evaluation borrows Reading and BTreeMap immutably; answer alone cannot learn verbs, update weights or persist state.
schema_ambiguity
The integer 6 can arise from line, rate, group or holder branches. Observing only the number loses branch identity and all shadowed fields; even None conflates distinct missing prerequisites.
checks
Exact world library selections: school::wave34_models::answer_priority_preserves_shadowed_absence. Current repeated debug/release outcomes and compiled controls are in the root sidecar wave34-evidence.md. Only these supplied-input tests are current evidence; older parent module-wide receipts are historical. Macro bodies remain opaque.
epoch-memory
Prospective model saved before edits. This epoch deepens one existing node rather than renaming it. Production implementation unchanged; tests add helper-boundary observations where stated. No live lessons, frozen suites, model loading, teacher or network. Read-only symbolic relations are broader than the finite native domain.
This page in Markdown → https://md.groupants.elamur.ai/free/en/mova/world/src/school.rs.groupant/actors-world.groupant/answer-priority.groupant/