world-school-tree-reading
The groupant beside world/src/school_tree.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-tree-reading-behavior-complement | behavior_complement | partial source model | behavior-complement |
world-school-tree-reading-reverse-reconstruction | reverse_reconstruction | partial source model | reverse-reconstruction |
world-school-tree-reading-state-priority | state_transition | partial source model | state-priority |
Model text
forward
Normalize/parse sentences, then first-match question, sentence and clause branches with shared prior state.
invariant
Question branch bypasses events. Safe i64 arithmetic is a domain premise, not checked guarantee.
cost
Repeated sentence/clause scans plus opaque lexical/parser cost.
composition
Source-bound parent supplies exact shared state and dependency assumptions. Independently projected fragments do not prove their wiring.
epoch-memory
Initial 2026-10-30 scope. Preserve unknown lexical, data and effect semantics. Source inspection and executed bounded helpers remain distinct.
checks
Nine native tests in wave9_models (five prules, four school_tree), repeated twice per debug/release profile, plus compiled production mutants; see evidence.md in the file parent. Binomial word oracle n<=12, gate finite grid, supplied-head graph universe 6^4, feature boundaries and reverse fibers. No real learning/data-loading or parser-to-Reading run. Prospective math recorded before implementation; large-n old-code failure precedes repair.
domain
Fix source revision, external dependency outputs, configuration and sufficient resources. Observe one terminating call or explicitly bounded trace. Arithmetic domains exclude overflow except named refusal tests. Specialized relations are source-derived partial models unless a finite oracle is explicitly named. No unrestricted reverse solver is implemented.
behavior-complement
With fixed parser, lexical and incoming Reading state, question-ending sentences cannot enter later event clauses. Earlier matching continue excludes later branches for that clause. Counted subject cannot be an ordinary uncounted noun actor. This source-inspected priority complement does not prove semantic interpretation.
reverse-reconstruction
Retain every incoming Reading and supplied sentence/tree/lexical outcome whose first-match branches yield observed fields. Conditional question assignments may preserve prior q_num/ask_thing, hiding which question supplied them. Unused numerals and surface details are erased. No unique text/history inverse is asserted.
state-priority
First-matching early-continue branches make clause order observable: comparisons, parts/rest/double, unknown amount, measure, groups/prices/rates/packaging/distribution/places, then holding/event. Relation closure appends only missing actor with known partner and uses first actor holding; unseeded components stay unresolved. No commuting independent-clause model.
This page in Markdown โ https://md.groupants.elamur.ai/free/en/mova/world/src/school_tree.rs.groupant/reading.groupant/