---
title: Dominator-Based MILP Simplification Framework
url: https://www.emergentmind.com/topics/dominator-based-milp-simplification-framework
type: topic
---

# Dominator-Based MILP Simplification Framework

The dominator-based MILP simplification framework addresses flow decomposition problems on general (possibly cyclic) directed graphs via a graph-theoretic technique built on dominator trees. It enables fast and flexible Mixed Integer Linear Programming (MILP) formulations for decomposing flows into walks or paths. Central to the approach is the identification and exploitation of "safe sequences" of edges—those that must necessarily appear as subsequences in any walk cover—allowing for substantial MILP simplification through variable fixing and constraint reduction. This methodology generalizes previous work limited to directed acyclic graphs (DAGs) and is validated with significant computational speed-ups on biological datasets [2511.19153].

## 1. Graph-Theoretic Foundations and Dominator Trees

Let $G=(V,E)$ denote a directed graph (possibly with cycles) with distinguished source $s$ and sink $t$, referred to as an s–t graph. The notion of domination is defined as follows:
- $u$ s-dominates $v$ (denoted $u \preceq_s v$) if every $s$–$v$ walk passes through $u$.
- $u$ t-dominates $v$ (denoted $u \preceq_t v$) if every $v$–$t$ walk passes through $u$.

The immediate s-dominator of $v$ ($v\neq s$) is the unique strict s-dominator of $v$ minimal under the domination ordering. The s-dominator tree $T_s$ organizes $V$ such that $\operatorname{parent}(v)=\operatorname{idom}_s(v)$ and is rooted at $s$. Analogously, the t-dominator tree $T_t$ is defined with roles reversed for $t$.

These dominator trees capture the structural constraints on walks traversing $G$ from $s$ to $t$, serving as the basis for safe sequence identification and leveraging in flow decomposition MILPs.

## 2. Safe Sequences: Characterization and Structural Theorems

Given a collection $C \subseteq E$ of edges to be covered, an s–t walk cover is a set of s–t walks such that every edge $e\in C$ is present in at least one walk. 

A sequence $X = (e_1, \ldots, e_\ell)$ of edges is C-safe if in every s–t walk cover of $C$, at least one walk contains $X$ as a subsequence. The connection to dominator trees is formalized by defining, for each $v \in V$:

\[
\operatorname{extension}(v) := (\text{path in } T_s \text{ from } s \to v) \circ (\text{path in } T_t \text{ from } v \to t)
\]

**Theorem:** A sequence $X$ of edges is $C$-safe if and only if there exists $v \in V$ with $X$ a subsequence of $\operatorname{extension}(v)$. Every maximal safe sequence is exactly $\operatorname{extension}(v)$ for some $v$, where $v$ is a common leaf of the (possibly collapsed) $T_s$ and $T_t$.

To address long chains of non-branching dominators, maximal "univocal" paths—paths shared by both $T_s$ and $T_t$ without branching—are collapsed into single super-vertices. In the collapsed trees, the set of maximal safe sequences corresponds exactly to the set of extensions of common leaves.

The number of maximal safe sequences is $O(n)$ and the total output size is $o = \sum_v |\operatorname{extension}(v)|$.

## 3. Enumeration of Maximal Safe Sequences in Linear Time

All maximal safe sequences can be enumerated exactly once in $O(m + o)$ time given an s–t graph $G=(V,E)$ and subset $C\subseteq E$.

**Procedure:**
1. Compute $T_s$ (dominator tree rooted at $s$) using the Lengauer–Tarjan algorithm in $O(m+n)$.
2. Compute $T_t$ (dominator tree rooted at $t$ on the edge-reversed graph, then reverse back).
3. For both $T_s$ and $T_t$, mark all vertices present on $\operatorname{extension}(w)$ for some $w$ covering an edge in $C$.
4. Collapse maximal univocal paths in each tree to single nodes, maintaining the path sequences.
5. For each vertex $v$ that is simultaneously a leaf in both collapsed trees, reconstruct $\operatorname{extension}(v)$ by concatenating the stored sequences and output to $L$.

The process is dominated by the sum total length $o$ of all safe sequences, in addition to graph traversal and tree operations in $O(m+n)$. The overall complexity is $O(m+o)$ [2511.19153].

## 4. Integration with MILP Flow Decomposition Models

The dominator-based approach simplifies and accelerates MILP models for flow decomposition into $k$ walks.

### 4.1 Standard (Unsimplified) MILP

For minimum-flow-decomposition (k-FD), the unsimplified MILP consists of:
- Variables: $x_{uv,i}$ (number of times walk $i$ traverses $(u,v)$), $y_{uv,i}$ (reachability helper variables), $d_{v,i}$ (depth labels), $w_i$ (walk weights), and slack/error variables as appropriate.
- Constraints: flow conservation, tree selection ($y_{uv,i} \leq x_{uv,i}$), vertex in-degree via $y$ variables, acyclicity/depth, and bilinear flow matching.

### 4.2 Safety-Based Preprocessing

Given maximal safe sequences $S_1, \ldots, S_t$, forming a maximum-weight antichain:
- For $i \leq t$, assign $S_i$ to walk $i$ without loss of generality.
- For every edge $e=(u,v) \in S_i$:
    - If $e$ lies between distinct SCCs, set $x_{uv,i} = 1$ (no repetitions).
    - Otherwise, set $x_{uv,i} \geq S_i(e)$ (as determined by sequence multiplicity).
- For every incompatible edge $(u',v')$, enforce $x_{u'v',i}=0$ except when reachability conditions (specified in three cases) are met; these checks require only two BFS/DFS traversals.

The antichain is computed on the condensation DAG, reducing to a max-flow problem in $O(m)$. The result is that many $x$-variables are fixed and others set to zero, shrinking the MILP feasible region and simplifying constraint structure.

### 4.3 Reduced MILP and Complexity

After safety-based preprocessing:
- Many variables and constraints (including most bilinear products and reachability/depth constraints) are eliminated for walks $i \leq t$.
- The simplified MILP for k-FD includes only flow-conservation, forced traversals, and edge elimination based on safe sequences for corresponding walks, plus residual variables for the remaining unfixed walks.
- Preprocessing, including safe sequences and assignment, is $O(m+o)$, typically negligible compared to MILP solution times.

## 5. Empirical Speed-Ups and Practical Performance

Using four bacterial assembly datasets and three flow-decomposition objectives (Minimum Flow Decomposition, Least Absolute Errors, Minimum Path Error), dominator-based preprocessing yields dramatic computational improvements:
- Up to $393\times$ faster on Minimum Flow Decomposition,
- Up to $560\times$ faster on Least Absolute Errors,
- Up to $1465\times$ faster on Minimum Path Error.

Instances previously timing out at $300$ seconds are solved in under $30$ seconds. 

This demonstrates that dominator-tree safe-sequence fixing is an effective linear-time preprocessing technique. It drastically reduces MILP search spaces and avoids bilinear encodings, all while maintaining solution exactness on general (cyclic) graphs [2511.19153].

## 6. Applications and Broader Implications

The dominator-based MILP simplification framework provides robust algorithmic tools for multi-assembly problems and general flow decomposition tasks in graph analysis. Its flexibility with cycles, provable model-size reductions, and empirical acceleration mark it as a foundational building block for future multi-assembly applications. This suggests that dominator-driven approaches could generalize to other combinatorial optimization problems involving path- or walk-covers in complex networks. A plausible implication is that further dominator-theoretic simplifications could be discovered for other MILP-based graph inference problems.

Source: https://www.emergentmind.com/topics/dominator-based-milp-simplification-framework