world-poly-sentences
The groupant beside world/src/poly.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 | Forward |
| ast | partial | ../syntax.json |
| composition | partial | Composition |
| cost | symbolic unmeasured | Cost |
| descriptant | present | model.md |
| invariant | partial | Invariant |
| tests | bounded evidence | tests |
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 |
|---|---|---|---|
nonbehavior | behavior_complement | partial source derived model | nonbehavior |
antecedents | reverse_reconstruction | partial source derived model | antecedents |
partition | partition_conservation | partial source derived model | partition |
continuation | boundary_suppression | partial source derived model | continuation |
terminal_alphabet | admission_constraint | partial source derived model | terminal_alphabet |
Model text
descriptant
world-poly-sentences
Forward
Logical source region "fn terminal(" through before "/// Cut out". For n tokens, Q is an ordered sequence [a_i,b_i), a_0=0, b_last=n, b_i=a_next and a_i<b_i; n=0 gives Q empty. Oracle exhausts the six-symbol alphabet through length four independently via flattened coverage. After a terminal run extended over closers/terminals, suppress the break iff the next first Unicode character is lowercase or one of comma/semicolon/colon/hyphen/en-dash/em-dash. EOF forces the run end; empty next token does not continue. Oracle includes accented cases and punctuation. Terminal is nonempty and every character belongs to . ! ? …; closer is an exact token from the fixed eight-string set. Mixed '.x' and '(' do not qualify. This is a token-level rule, not general linguistic punctuation. Parent composition retains shared text/clock/intermediate values. Full-file wrapper and test gaps remain in the root.
Invariant
Respect source order, retain ambiguity of lossy text projections, and keep observed finite correspondence distinct from universal semantics. Pure functions have no modeled filesystem effects. Error paths before annotator acquisition do not write the output.
Composition
Compose only through equal intermediate token sequences, paragraphs, quantities, event lists and explicit clock inputs. Parent roots cover every logical source region, including imports/constants and native tests; local fragments isolate useful operations and may overlap. The hierarchy is not a complete call graph. Same numeric answer does not imply same text or event history.
Cost
Let N be total input bytes, L the line count, B selected bytes, T token characters and Bout output bytes. Whole-call time is O(N+L+B+T+Bout), excluding opaque annotation and I/O latency. Whole-call retained memory is O(N+L+B+Bout) plus token and annotator storage; N accounts for prep retaining the full raw input even when selection is short. Costs are symbolic operation/allocation counts, not measured speedups.
Limits
Partial syn-2 syntax is source-bound; no macro expansion, semantic AST, name resolution or verified dependency behavior. No automatic reverse solver or production surrogate exists. Poly annotator acquisition/tokenization, detokenization, output encoding and filesystem failures beyond early rejection remain conditional. Trigger talk::civil/now/tz_offset, state::root, global nerves graph, manual data and stdout are dependency boundaries. No activate/Task/drop/fire/episodes/expectation/explain calls are made by the new bounded tests. Extremely large counts, nonfinite floating values, signed timestamp overflow and concurrent log append/read remain outside tested domains. Declared event effects are not executed.
Epoch memory
2026-10-30 prospective: punctuation continuation should preserve a total token partition; malformed Gutenberg ordering should return Err before the parser. The old slice admitted a reversed-bound panic; the repair adds the ordering guard and isolates pure extraction without changing public signatures. Calendar century exceptions and expectation upper medians are predicted separately from natural-language semantics. Native tests and mutation controls calibrate these claims; see tests.md. Formal proofs and general corpus quality remain absent.
catalog
world-poly-sentences
Domain: Finite UTF-8 Gutenberg books with exact line markers/headings; finite Tok arrays; explicit named input/output paths. Observations are ranges, extracted paragraphs, errors and conditional TSV effects.
All relations below are source-derived partial models, conditional on successful allocation and the stated input domain. U is the product of admitted inputs and observations (returns, errors, and explicit effects). R is the declared forward relation. Complement entries are candidate inner bounds of U minus R, not complements certified from an approximate emulator. Converse relations preserve every compatible antecedent; no unique original text or history is claimed.
nonbehavior
For finite Tok arrays exclude lost, repeated, overlapping or out-of-bounds token ranges; a lowercase continuation excludes a split after its preceding terminal run.
Scope: Finite UTF-8 Gutenberg books with exact line markers/headings; finite Tok arrays; explicit named input/output paths. Observations are ranges, extracted paragraphs, errors and conditional TSV effects. Fixed code and dependency contracts; evidence in tests.md. This is a conditional source relation, not a general proof. The explicit native fixtures are falsifiable observations; untested I/O schedules remain gaps.
antecedents
For range vector Q retain every finite Tok array whose boundary relation yields Q, including arbitrary token forms and space_after flags compatible with the same boundaries. Q cannot identify the words.
Scope: Finite UTF-8 Gutenberg books with exact line markers/headings; finite Tok arrays; explicit named input/output paths. Observations are ranges, extracted paragraphs, errors and conditional TSV effects. Fixed code and dependency contracts; evidence in tests.md. This is a conditional source relation, not a general proof. The explicit native fixtures are falsifiable observations; untested I/O schedules remain gaps.
partition
For n tokens, Q is an ordered sequence [a_i,b_i), a_0=0, b_last=n, b_i=a_next and a_i<b_i; n=0 gives Q empty. Oracle exhausts the six-symbol alphabet through length four independently via flattened coverage.
Scope: Finite UTF-8 Gutenberg books with exact line markers/headings; finite Tok arrays; explicit named input/output paths. Observations are ranges, extracted paragraphs, errors and conditional TSV effects. Fixed code and dependency contracts; evidence in tests.md. This is a conditional source relation, not a general proof. The explicit native fixtures are falsifiable observations; untested I/O schedules remain gaps.
continuation
After a terminal run extended over closers/terminals, suppress the break iff the next first Unicode character is lowercase or one of comma/semicolon/colon/hyphen/en-dash/em-dash. EOF forces the run end; empty next token does not continue. Oracle includes accented cases and punctuation.
Scope: Finite UTF-8 Gutenberg books with exact line markers/headings; finite Tok arrays; explicit named input/output paths. Observations are ranges, extracted paragraphs, errors and conditional TSV effects. Fixed code and dependency contracts; evidence in tests.md. This is a conditional source relation, not a general proof. The explicit native fixtures are falsifiable observations; untested I/O schedules remain gaps.
terminal_alphabet
Terminal is nonempty and every character belongs to . ! ? …; closer is an exact token from the fixed eight-string set. Mixed '.x' and '(' do not qualify. This is a token-level rule, not general linguistic punctuation.
Scope: Finite UTF-8 Gutenberg books with exact line markers/headings; finite Tok arrays; explicit named input/output paths. Observations are ranges, extracted paragraphs, errors and conditional TSV effects. Fixed code and dependency contracts; evidence in tests.md. This is a conditional source relation, not a general proof. The explicit native fixtures are falsifiable observations; untested I/O schedules remain gaps.
tests
Bounded native evidence
Commands: cargo test -p world --lib bounded_models -- --test-threads=1; repeat with --release. New native modules contain five tests per source, including a compiled wrong-model discriminator. Independent finite tables cover partition, headings, malformed extraction, units, Gregorian dates, explicit UTC civil time and event ordering; enumeration covers 1,555 token sequences through length four and 85 unit quantities. The poly public rejection fixture creates a fresh scratch directory and preserves a sentinel output. No live hot-state access or parser acquisition is exercised.
External mutation controls remove the marker-order guard and replace the Gregorian century predicate, then compile and run the corresponding native tests; both must fail, after which originals are restored. Debug/release logs are normalized to sorted bounded test outcomes and compared twice per profile. Syntax projection is generated twice and compared byte-for-byte. Detailed receipts and fingerprints: evidence.json at the file root. These are finite observations, not exhaustive Rust or I/O proofs.
This page in Markdown → https://md.groupants.elamur.ai/free/en/mova/world/src/poly.rs.groupant/sentences.groupant/