Elamur Groupants⌕
☰

math-lean-boundary

The groupant beside math/src/lean.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

componentlabelwhere
approximantpartialapproximant
astpartialsyntax.json
compositionpartialcomposition
descriptantpresentdescriptant
invariantpartialinvariant
testspartial bounded evidencetests

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.

idtypelabelwhere
behavior_complementbehavior_complementpartial source derived modelbehavior_complement
reverse_reconstructionreverse_reconstructionpartial source derived modelreverse_reconstruction
failure_precedencefailure_precedencepartial source derived modelfailure_precedence
representation_transportrepresentation_transportpartial source derived modelrepresentation_transport
resource_boundaryresource_boundarypartial source derived modelresource_boundary
domain_boundarydomain_boundarypartial source derived modeldomain_boundary

Model text

descriptant

Source-bound description

assemble trims trailing := and indents proof lines. check scans case-sensitive banned substrings before filesystem, then writes sanitized-id/tag source and runs timeout lake env lean. Timeout124 and path-prefixed error/sorry blocks reject. parse_proofs emits completed ===id/end blocks; a new id discards unfinished prior block.

Epoch 2026-10-31: prospective model before bounded synthetic tests; production behavior unchanged. No Lean/teacher process; substring gate not complete semantic/security validation.

approximant

Forward relation

assemble trims trailing := and indents proof lines. check scans case-sensitive banned substrings before filesystem, then writes sanitized-id/tag source and runs timeout lake env lean. Timeout124 and path-prefixed error/sorry blocks reject. parse_proofs emits completed ===id/end blocks; a new id discards unfinished prior block.

Domain: Synthetic block parsing/assembly and preflight only. Unicode alphanumeric id allowed; tag unsanitized.

Executable Rust approximant unsupported: categorical/effect observations have no useful percentage metric yet. Future caps1/2/5/10% only; no automatic substitution.

invariant

Invariant and cost

Banned substring excludes file/process effects. External success with no recognized errors yields ok, not independently proven Lean validity here.

Ordering: Bans→write→process→timeout marker→diagnostic blocks→failure fallback.

Cost: O(proof bytes*bans+output bytes)+external Lean time; timeout depends on tool. Captured output uncapped, stored diagnostic blocks700chars.

composition

Composition and epoch memory

solve::run_lean uses first proof matching id; parser allows duplicates. Lean ok maps to verified and correct.

No Lean/teacher process; substring gate not complete semantic/security validation.

Partial syntax and finite tests do not establish all caller assumptions.

models

behavior_complement

Banned substring excludes file/process effects. External success with no recognized errors yields ok, not independently proven Lean validity here.

reverse_reconstruction

Parsed bodies admit discarded preamble/fences/incomplete blocks. Assembly loses whitespace. Ban rejection admits every body containing banned substring; absence does not establish proof validity.

failure_precedence

Bans→write→process→timeout marker→diagnostic blocks→failure fallback.

representation_transport

solve::run_lean uses first proof matching id; parser allows duplicates. Lean ok maps to verified and correct.

resource_boundary

O(proof bytes*bans+output bytes)+external Lean time; timeout depends on tool. Captured output uncapped, stored diagnostic blocks700chars.

domain_boundary

Synthetic block parsing/assembly and preflight only. Unicode alphanumeric id allowed; tag unsanitized.

tests

Evidence, 2026-10-31

Selected actual-source checks: cargo test -p math --lib lean::. Exact commands, numeric statuses, normalized outcomes, compiled assertion controls and restoration receipts are in the external wave28 mathcontrol run.

No Lean/teacher process; substring gate not complete semantic/security validation.

No live teacher/API, trained model, corpus/held-out, GPU, DB or expensive benchmark run. Parent syntax generated twice identically. Scope remains partial.

This page in Markdown → https://md.groupants.elamur.ai/free/en/mova/math/src/lean.rs.groupant/