## Discarding Factors for OOAs / Shortening the Dual NRT-Code

Every (linear) ordered orthogonal array OOA(M, s, Sb, T , k) yields a (linear) OOA(M, s – 1, Sb, T , k). Correspondingly, every linear [(s, T ), n, d]-NRT-code with nT yields a linear [s−1, nT , d]-code over the same field.

### The Construction for OOAs

The new OOA Aʹ is obtained by discarding an arbitrary factor from the original array A, i.e., as

Aʹ := {(xi,1,…, xi,T )i=2,…, s  :  xA}.

If A is linear, a generator matrix of Aʹ is obtained by dropping an arbitrary block from the generator matrix of A.

### The Construction for Linear NRT-Codes

In the context of linear NRT-codes, this propagation rule corresponds to shortening a code: If C is the original code, the new code Cʹ is given by

{(xi,1,…, xi,T )i=2,…, s  :  xC with x1,1 = …x1,T = 0},

i.e., it is obtained by selecting only code words with zeros in a fixed block and removing this block. Since all remaining code words have their weights unchanged, the minimum weight (and therefore the minimum distance) of Cʹ is unaffected. In the fortuitous case that one or more j ∈ {1,…, T } exist with x1,j = 0 for all xC, Cʹ is actually an [s−1, nʹ, d]-code with nʹ > nT and the final [s−1, nT , d]-code can be obtained by taking a subcode.