When the zero cover has too few lines, the method adjusts the matrix by the smallest uncovered value. This creates new zeros while preserving the assignment ordering. The next cover reaches n lines, so the final assignment can be selected from independent zero cells.

highlighted = computed this step

Subtract uncovered

Subtract 1 from every uncovered cell. Why: this turns at least one uncovered value into a new zero. Because it is the minimum uncovered value, no uncovered entry crosses below zero, so the reduced matrix remains valid.

δ=1\delta=1
adjusted matrixJ1J2J3W1001W2010W3000

Add at intersections

Add the same amount at doubly-covered intersections. Why: that keeps the reduced problem equivalent while changing the zero pattern. The adjustment preserves the relative cost of complete assignments while moving reduced cost toward places where a full zero assignment can form.

add δ at line intersections\text{add } \delta \text{ at line intersections}
adjusted matrixJ1J2J3W1001W2010W3000

Cover again

After adjustment, the next cover uses 3 lines, equal to n=3. Why: now the zero pattern can support a complete assignment. The equality between cover count and matrix size is the stopping signal for the reduction phase.

3=33=3
adjusted matrixJ1J2J3W1001W2010W3000

Diagram note

Zero cells and minimum-uncovered adjustment cells are marked by role. The adjustment is exact for this square integer cost matrix: it preserves the argmin while creating the additional zero structure needed for the assignment step. The smallest uncovered value is used because it is the least change that creates a new zero without making any uncovered reduced cost negative. Pixel positions are rounded for layout; every number shown is exact.

adjustment creates enough zeros\text{adjustment creates enough zeros}
adjusted matrixJ1J2J3W1001W2010W3000