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

# algorithm-needleman-wunsch-tests

The groupant beside algorithms/src/needleman_wunsch/tests.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
- **status:** partial source derived instance
- **source:** [`algorithms/src/needleman_wunsch/tests.rs`](https://github.com/ElamurAI/mova-free/blob/main/algorithms/src/needleman_wunsch/tests.rs)
- **source SHA-256:** `611ade5ac6b3fa1f…`
- **repository folder:** [`algorithms/src/needleman_wunsch/tests.rs.groupant`](https://github.com/ElamurAI/mova-free/tree/main/algorithms/src/needleman_wunsch/tests.rs.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** | bounded checked | [Forward](#forward) |
| **ast** | partial | `syntax.json` |
| **cost** | symbolic unmeasured | [Cost](#cost) |
| **descriptant** | present | [descriptant](#descriptant) |
| **invariant** | source derived | [Invariant](#invariant) |
| **tests** | bounded executed | [evidence](#evidence) |

## 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 | [nonbehavior](#nonbehavior) |
| `preimages` | reverse_reconstruction | partial source derived | [preimages](#preimages) |
| `oracle-independence` | refinement_relation | partial source derived | [oracle-independence](#oracle-independence) |
| `mutation-sensitivity` | counterfactual_relation | partial source derived | [mutation-sensitivity](#mutation-sensitivity) |
| `repeatability` | metamorphic_relation | partial source derived | [repeatability](#repeatability) |

## Model text


### descriptant

#### algorithm-needleman-wunsch-tests

Prospective model saved before implementation in $MOVA_DATA/runs/octopus-wave18-strings-2026-10-30/prospective.md.

Run bounded independent oracle fixtures, edge witnesses, and executable reconstruction invariants; assertions certify only the exercised inputs.

All oracle cases are generated deterministically; comparison or reconstruction must assert, not merely execute.

Observed 2026-10-30: 15 binary words through length 3 per side, 64 scoring triples: 14,400 independent complete-path oracle comparisons. Every returned alignment is reconstructed and rescored. Budget equality, empty input, signed overflow and tie ordering covered. Mutation changes deletion > to >=; deterministic_ties fails.

Partial Rust syntax projection excludes macro expansion and semantic resolution. Finite tests do not prove general correctness or linear cost. No executable approximation profile: outputs are discrete exact objects and no useful certified surrogate metric is proposed.

### model

## algorithm-needleman-wunsch-tests

### Forward

Run bounded independent oracle fixtures, edge witnesses, and executable reconstruction invariants; assertions certify only the exercised inputs.

### Invariant

All oracle cases are generated deterministically; comparison or reconstruction must assert, not merely execute.

### Cost

Finite exponential small-input oracle enumeration is intentional; production cost is modeled separately. Test allocation is ordinary and unbudgeted.

### nonbehavior

Passing fixtures do not establish universal correctness, asymptotic complexity, allocator exhaustion behavior or Unicode semantics. A compiler failure does not count as a killed mutation.

Domain: finite byte inputs and stated successful-allocation/representability premises. Observation: public call or named internal state. Status: source-derived exact target relation with bounded evidence, not a general proof.

### preimages

A named assertion failure identifies a violated fixture relation but may have many implementation causes. Passing observations retain all implementations agreeing on the enumerated finite domain.

Domain: finite byte inputs and stated successful-allocation/representability premises. Observation: public call or named internal state. Status: source-derived exact target relation with bounded evidence, not a general proof.

### oracle-independence

15 binary words through length 3 per side, 64 scoring triples: 14,400 independent complete-path oracle comparisons. Every returned alignment is reconstructed and rescored. Budget equality, empty input, signed overflow and tie ordering covered. Mutation changes deletion > to >=; deterministic_ties fails.

Domain: finite byte inputs and stated successful-allocation/representability premises. Observation: public call or named internal state. Status: source-derived exact target relation with bounded evidence, not a general proof.

### mutation-sensitivity

The compiled intentional production mutation must reach its named assertion and fail; exact production bytes are restored and the positive suite reruns.

Domain: finite byte inputs and stated successful-allocation/representability premises. Observation: public call or named internal state. Status: source-derived exact target relation with bounded evidence, not a general proof.

### repeatability

Two serial debug runs and two serial optimized runs must have identical normalized test identities and outcomes. Timing fields are excluded; no speed claim follows.

Domain: finite byte inputs and stated successful-allocation/representability premises. Observation: public call or named internal state. Status: source-derived exact target relation with bounded evidence, not a general proof.

### evidence

#### Evidence, 2026-10-30

Source SHA-256: 611ade5ac6b3fa1f7add40b216078cc8638b3d10a9e1035e0afe8140b8d8f64f.

Three tests for this algorithm passed twice in debug and twice with rustc -O, serial execution and identical normalized identities. Compiled mutation failed the named assertion; source restored byte exactly and positive suite passed again. Two source-bound partial syntax projections were byte identical.

15 binary words through length 3 per side, 64 scoring triples: 14,400 independent complete-path oracle comparisons. Every returned alignment is reconstructed and rescored. Budget equality, empty input, signed overflow and tie ordering covered. Mutation changes deletion > to >=; deterministic_ties fails.

Logs under $MOVA_DATA/runs/octopus-wave18-strings-2026-10-30:

- needleman_wunsch-debug-1.log: 8d4acb18f47f99c70061ace93c309cde5b567b56829beeb55873314f84af8a94
- needleman_wunsch-debug-2.log: 8d4acb18f47f99c70061ace93c309cde5b567b56829beeb55873314f84af8a94
- needleman_wunsch-release-1.log: f97285beb3e11f9353ddbd41d02fecdd1e434e13150b658af956dc357be81cdd
- needleman_wunsch-release-2.log: 232e9b8d5e579914f5ea7eb082d36abdb2c8f32e7d50fd946ef33f8c7d2f3f76
- needleman_wunsch-mutant.log: 43d7781101026853ae32690e310a90f4724109bb06c5b9a84294e787362141c5
- needleman_wunsch-restored.log: 8d4acb18f47f99c70061ace93c309cde5b567b56829beeb55873314f84af8a94
- cargo-needleman_wunsch-debug-1.log: 01a44dab7b3e00376d0ce9e0142deaa327a1fac39c52e4538101b891baf2a7ed
- cargo-needleman_wunsch-debug-2.log: 01a44dab7b3e00376d0ce9e0142deaa327a1fac39c52e4538101b891baf2a7ed
- cargo-needleman_wunsch-release-1.log: 11d11331bc49b186089748e5b7b9e0550dc59ff424dffb200589b87f41882bf4
- cargo-needleman_wunsch-release-2.log: e773725f308c3f8e737ab40cb95a48d0389618ef883b7bd6a7dd9a0b7ec182fa

Cargo focused suites also passed twice in debug and twice in release with matching normalized outcomes. Strict library Clippy passed. Temporary exports restored. Clippy log SHA-256: a5668d2636de8c7e7c3d3a1b6aea1da32174b64bee750b6b6cdfca8afc01a77b.

Partial Rust syntax projection excludes macro expansion and semantic resolution. Finite tests do not prove general correctness or linear cost. No executable approximation profile: outputs are discrete exact objects and no useful certified surrogate metric is proposed.
