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

# algorithm-dominators-tests

The groupant beside algorithms/src/dominators/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/dominators/tests.rs`](https://github.com/ElamurAI/mova-free/blob/main/algorithms/src/dominators/tests.rs)
- **source SHA-256:** `89947914da00326a…`
- **repository folder:** [`algorithms/src/dominators/tests.rs.groupant`](https://github.com/ElamurAI/mova-free/tree/main/algorithms/src/dominators/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) |
| `compatible_inputs` | reverse_reconstruction | partial source derived | [compatible_inputs](#compatible-inputs) |
| `oracle_independence` | differential_oracle | partial source derived | [oracle_independence](#oracle-independence) |
| `mutant_separation` | negative_control | partial source derived | [mutant_separation](#mutant-separation) |
| `repeat_transport` | configuration_invariance | partial source derived | [repeat_transport](#repeat-transport) |

## Model text


Migration: consolidated into model.md, 2026-11-04, operator decision; fresh hash-bound references to the former files were rebound to the sections below.

### descriptant

#### dominators tests

Original std-only Rust. Prospective model is retained beside implementation. Source citations identify algorithm provenance; no copied implementation. Exact bounded graph semantics are useful independently of any unmeasured optimization. Finite oracle checks and mutant discrimination improve confidence; groupant count alone proves no improvement.

### model

## dominators tests model

### Forward

Generate fixed exhaustive small domains for dominators; independent oracle predicts output, assert production correspondence plus validation/boundary behavior. All assertions passing returns Pass. Any mismatched fixture causes named failure; bounded success is not universal proof.

### Invariant

Each fixture is generated deterministically; oracle and production receive the same graph. Enumeration order and semantic assertions are independent of timing.

### Cost

Bounded exhaustive fixtures: flow 729 DAG capacity arrays times 4 limits, 64 cyclic graphs times 4 limits; MCS and core 1024 topologies (core 7 thresholds and 32 subsets); dominators 4096 graphs times 4 starts with deletion reachability; reduction 4096 graphs with edge-removal reachability. These are per-file domains, not all tests in every file. No benchmark or speed claim.

### nonbehavior

Type: behavior_complement. For a fixed fixture collection, Pass is excluded if any production observation differs from the independent oracle or validation assertion; a named Failure is excluded when its compared values agree. This relation excludes false-green and false-red harness observations; tests do not approximate unexecuted inputs.

### compatible_inputs

Type: reverse_reconstruction. Pass admits every implementation agreeing on all finite fixtures, including implementations that disagree elsewhere. Failure at fixture f admits implementations with its reported mismatch; it does not recover a unique bug. Distinct programs with identical observed fixture results lie in the same preimage.

### oracle_independence

Type: differential_oracle. Flow enumerates feasible edge assignments rather than residual paths; MCS checks all priority inequalities rather than updating weights; core unions all feasible subsets rather than peeling; dominators deletes candidate vertices rather than intersecting sets; reduction deletes each edge rather than Warshall reduction. The applicable independent characterization detects semantic disagreement.

### mutant_separation

Type: negative_control. A compiled production mutation for dominators must fail its recorded named assertion; exact original bytes are restored and the positive run must pass. This distinguishes at least the observed mutant from the accepted reference, not every possible defect.

### repeat_transport

Type: configuration_invariance. Two debug and two optimized standalone compilations produce identical normalized test-status lines with one test thread. Timing lines are omitted; equality concerns semantic status, not durations or complete machine behavior.

### Limits

Partial syntax omits macro expansion and type resolution. No executable approximate profile: categorical graph semantics and feasibility have no justified percentage relaxation here. Integer operations are bounded by caps; flow uses checked i128/u64 arithmetic, with Overflow defensive under current caps. No callbacks. Allocator failure is outside typed status.

### evidence

#### Evidence — 2026-10-30

Eleven tests across five algorithms, including independent exhaustive small-domain characterization. This file belongs to dominators. Two debug and two optimized runs matched normalized statuses. Strict clippy-driver --test -D warnings passed. A compiled production mutant failed a named assertion; exact bytes restored and positive rerun passed. Raw receipts: $MOVA_DATA/runs/octopus-wave25-graphs-2026-10-30/dominators-*.txt. No timing or whole-system improvement claim. Source SHA-256: 89947914da00326a698dd88465703fe454b4a9874aa2957ea07981fe95b57da6.

### prospective

Finite independent graph characterizations and boundary tests planned before validation. No cost optimization or universal proof claimed.
