---
title: "mlab-index-deletion — Mova code model"
description: "Mova code model of mlab/src/index.rs: components with their labels, obernants and the model text."
url: "https://groupants.elamur.ai/free/en/mova/mlab/src/index.rs.groupant/deletion.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/mlab/src/index.rs.groupant/deletion.groupant/>

# mlab-index-deletion

The groupant beside mlab/src/index.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:** [`mlab/src/index.rs`](https://github.com/ElamurAI/mova-free/blob/main/mlab/src/index.rs)
- **source SHA-256:** `dccd47c7d5a96caa…`
- **covers:** Linear colon clears to 0x0 with class retained. Numeric deletion builds boolean membership, gathers complement, and retains column orientation only for nonrow column source. 2D deletion accepts complete row or column selection and removes selected opposite-axis entries. (bytes 10117–13094)
- **part of:** [mlab-index](https://md.groupants.elamur.ai/free/en/mova/mlab/src/index.rs.groupant/)
- **repository folder:** [`mlab/src/index.rs.groupant/deletion.groupant`](https://github.com/ElamurAI/mova-free/tree/main/mlab/src/index.rs.groupant/deletion.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` |
| **cost** | symbolic source derived | [invariant](#invariant) |
| **descriptant** | present | [descriptant](#descriptant) |
| **invariant** | partial | [invariant](#invariant) |
| **tests** | executed 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) |
| `representation_transport` | representation_transport | partial source derived model | [representation_transport](#representation-transport) |
| `failure_precedence` | failure_precedence | partial source derived model | [failure_precedence](#failure-precedence) |
| `resource_domain` | resource_domain | partial source derived model | [resource_domain](#resource-domain) |
| `interaction_relation` | interaction_relation | partial source derived model | [interaction_relation](#interaction-relation) |

## Model text


### descriptant

#### Null assignment deletion

Linear colon clears to 0x0 with class retained. Numeric deletion builds boolean membership, gathers complement, and retains column orientation only for nonrow column source. 2D deletion accepts complete row or column selection and removes selected opposite-axis entries.

##### Modeling epoch 2026-10-31

Prospective source reading precedes test additions. Retained observations: assign dispatches only exact 0x0 RHS here; gather narrows im, so all-zero imaginary representation may be lost.

This is partial source-derived modeling, not proof, full semantic coverage, or a performance result. Public malformed representations, unbounded allocations and exhaustive numerical edge cases remain outside the checked fixtures.

### approximant

#### Null assignment deletion forward relation

Linear colon clears to 0x0 with class retained. Numeric deletion builds boolean membership, gathers complement, and retains column orientation only for nonrow column source. 2D deletion accepts complete row or column selection and removes selected opposite-axis entries.

Domain: Nonzero valid argument count; bounded dimensions and valid storage. Higher-dimensional deletion validation is incomplete.

No executable Rust surrogate is supplied: categorical decisions require exact observations; numerical kernels have no measured approximation metric here. Future supported caps are 1%, 2%, 5%, 10% only.

### invariant

#### Invariant and cost

Membership deduplicates; out-of-bounds selections return Err before target replacement by caller. Complete-axis recognition sorts/dedups numeric selections.

Cost: O(old cells+indices) and O(k log k) complete-axis checks; gather allocates survivors.

Failure ordering: Linear colon special-case precedes numeric conversion; 2D full-row branch precedes full-column branch, then failure.

### models

### behavior_complement

Duplicate deletion cannot remove a cell twice. Partial row and column selections exclude success with message one non-colon index. Zero argument deletion is not supported and can index args out of bounds.

### reverse_reconstruction

Survivor matrix plus selection constrains all retained cells; deleted cells free and removal duplicates unrecoverable. Clearing loses dimensions/values except class.

### representation_transport

Membership deduplicates; out-of-bounds selections return Err before target replacement by caller. Complete-axis recognition sorts/dedups numeric selections.

### failure_precedence

Linear colon special-case precedes numeric conversion; 2D full-row branch precedes full-column branch, then failure.

### resource_domain

Nonzero valid argument count; bounded dimensions and valid storage. Higher-dimensional deletion validation is incomplete.

### interaction_relation

assign dispatches only exact 0x0 RHS here; gather narrows im, so all-zero imaginary representation may be lost.


### tests

#### Bounded evidence

Selected actual-code Rust test: `index::wave30::gather_update` with `cargo test --offline --locked -p mlab --lib`. CPU synthetic fixtures only. Two debug and two release runs, sorted named outcomes, numeric statuses, compiled assertion controls and exact source restoration are retained externally under the wave30 expressions receipt directory. The source-to-test map distinguishes runtime semantics from AST representation checks. This fragment shares the parent test: only the exercised branches are observed; its whole prose is not runtime coverage. No corpus, GPU, live filesystem inspection, callbacks, RNG shuffle or wall-clock execution.

Syntax is generated twice from exact source and compared. Lexical projection has no expansion/type/name resolution. No strict Clippy claim; existing dependency/style findings are not re-run merely for repetition.
