---
title: "world-nerves-scope — Mova code model"
description: "Mova code model of world/src/nerves.rs: components with their labels, obernants and the model text."
url: "https://groupants.elamur.ai/free/en/mova/world/src/nerves.rs.groupant/scope.groupant/"
---
Elamur: [Mova](https://md.mova.elamur.ai/free/en/) · [Dictionary](https://md.dictionary.elamur.ai/free/en/) · [Research](https://md.research.elamur.ai/free/en/) · **Groupants**

This page as HTML: <https://groupants.elamur.ai/free/en/mova/world/src/nerves.rs.groupant/scope.groupant/>

# world-nerves-scope

The groupant beside world/src/nerves.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

- **kind:** groupant_fragment
- **status:** partial source bound model
- **source:** [`world/src/nerves.rs`](https://github.com/ElamurAI/mova-free/blob/main/world/src/nerves.rs)
- **source SHA-256:** `a569bd0e87b45707…`
- **covers:** Concept normalization and manual sentence extraction (bytes 2311–4121)
- **part of:** [world-nerves](https://md.groupants.elamur.ai/free/en/mova/world/src/nerves.rs.groupant/)
- **repository folder:** [`world/src/nerves.rs.groupant/scope.groupant`](https://github.com/ElamurAI/mova-free/tree/main/world/src/nerves.rs.groupant/scope.groupant)
- **repository commit:** `855da7bd4a7b`

> **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 | [approximant](#approximant) |
| **ast** | partial | `../syntax.json` |
| **composition** | partial | [composition](#composition) |
| **descriptant** | present | [descriptant](#descriptant) |
| **invariant** | partial | [invariant](#invariant) |
| **tests** | bounded checks | [tests](#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 |
|---|---|---|---|
| `behavior_complement` | behavior_complement | partial source derived model | [behavior_complement](#behavior-complement) |
| `reverse_reconstruction` | reverse_reconstruction | partial source derived model | [reverse_reconstruction](#reverse-reconstruction) |
| `normalization_order` | normalization_order | partial source derived model | [normalization_order](#normalization-order) |
| `token_boundary_transport` | token_boundary_transport | partial source derived model | [token_boundary_transport](#token-boundary-transport) |
| `manual_state_machine` | manual_state_machine | partial source derived model | [manual_state_machine](#manual-state-machine) |
| `terminal_punctuation` | terminal_punctuation | partial source derived model | [terminal_punctuation](#terminal-punctuation) |

## Model text


### descriptant

#### Concept normalization and manual sentence extraction

Define A(s)=concatenate lowercase expansions of alphanumeric chars of s. If A is empty, in STOP/NUMBERS/ASKING, or all ASCII digits, N(s)=None. Otherwise, if byte_len(A)>4 and A ends ies, replace ies by y; else if byte_len(A)>3 and A ends s but not ss/us/is, drop final s; else retain A. content_words(t)=set(filter_map(N, split t at non-alphanumeric chars)). sentences_of trims lines, toggles fenced-code state on leading backticks, resets open at fences/blank/headings, skips code, and appends a line to the prior sentence iff open; open becomes false for final .!?»")]: punctuation.

2026-10-31 review epoch: replaced generic fragment wrappers with scoped transitions, concrete exclusions and compatible antecedents. The exact byte range/hash and shared parent AST are retained. This fragment supplies norm/content_words to the parent graph seed/build/ranking code and norm to ideas::words. It also supplies manual sentence units to graph construction. The parent three-step diffusion recurrence is outside this child, so its activation arithmetic is not copied here.

### approximant

#### Concept normalization and manual sentence extraction

Define A(s)=concatenate lowercase expansions of alphanumeric chars of s. If A is empty, in STOP/NUMBERS/ASKING, or all ASCII digits, N(s)=None. Otherwise, if byte_len(A)>4 and A ends ies, replace ies by y; else if byte_len(A)>3 and A ends s but not ss/us/is, drop final s; else retain A. content_words(t)=set(filter_map(N, split t at non-alphanumeric chars)). sentences_of trims lines, toggles fenced-code state on leading backticks, resets open at fences/blank/headings, skips code, and appends a line to the prior sentence iff open; open becomes false for final .!?»")]: punctuation.

Categorical source relation; no executable percent surrogate or approximation error bound is claimed.

### invariant

Stop filtering precedes suffix reduction. norm removes punctuation within its argument, while content_words splits punctuation before normalization: norm(cat-dog)=catdog but content_words(cat-dog) contains cat,dog. Sentence extraction discards headings and fenced code; it joins wrapped prose with one space and does not tokenize multiple sentences on a single line.

Cost: norm is O(input chars plus lowercase output bytes) with fixed cue-table scans; content_words adds ordered-set insertion O(W log U). sentences_of is linear in line/input/output bytes under amortized String growth. No input cap or fallible-allocation interface exists.

### composition

This fragment supplies norm/content_words to the parent graph seed/build/ranking code and norm to ideas::words. It also supplies manual sentence units to graph construction. The parent three-step diffusion recurrence is outside this child, so its activation arithmetic is not copied here.

### models

### behavior_complement

Exclude Some for empty, 123, where or three. N(BERRIES!) is berry and N(glass) is glass. N(ones)=Some(one) while N(one)=None: the source does not reapply stop filtering after suffix reduction. sentences_of cannot emit the body of a properly toggled code fence, a heading line, or a standalone empty line.

### reverse_reconstruction

N^-1(berry) contains berry, berries, BERRIES!, and punctuation-inserted b.e.r.r.y because norm filters before suffix handling. N^-1(None) contains empty strings, pure punctuation, ASCII digit strings and all removed cue words. The sentence output [One wrapped line.] admits one input line or two wrapped lines joined by one space, with arbitrary ignored headings/fenced examples; original wrapping is unrecoverable.

### normalization_order

A(s) -> removal predicates -> suffix rule is ordered and lossy. These rules are surface morphology, not linguistic lemmatization; alphanumeric Unicode digits outside ASCII are not removed by the ASCII-number predicate alone.

### token_boundary_transport

content_words deduplicates normalized tokens using BTreeSet. Repeating apples or adding case variants does not create multiple seed concepts. norm on an entire punctuation-separated phrase is not interchangeable with content_words.

### manual_state_machine

State=(code,open,out). Fence toggles code and clears open; blank/heading clears open; code content is skipped. A prose line either extends last(out) or creates a new element, then trailing punctuation controls open.

### terminal_punctuation

A colon or closing bracket ends wrapping, just like sentence punctuation. A line ending a comma stays open. An unmatched opening fence suppresses the remaining file; this parser does not report a fence error.


### tests

nerves::wave28_dialogue::normalization_and_manual_boundaries checks BERRIES!, glass, empty/digits/where/three, wrapping, heading removal and code fencing. synthetic_spread_units_and_dedup consumes content_words through spread, but diffusion itself is outside this child scope. No claim that finite examples prove all Unicode/suffix behavior.

Commands and repeated outcomes: [parent evidence](https://md.groupants.elamur.ai/free/en/mova/world/src/nerves.rs.groupant/#tests), [source evidence](https://md.groupants.elamur.ai/free/en/mova/world/src/nerves.rs.groupant/). No new execution was required for this model-only refinement.
