Skip to content

Experimental Design-Matrix Rank Check

Diagnostic check — instantiates Independent Generating Set Design

Checks the design matrix of a planned experiment for full rank before any data is collected, so every effect of interest can be estimated separately rather than confounded.

Experimental Design-Matrix Rank Check inspects the columns of a planned experiment's model matrix and asks whether they are independent enough to estimate every effect separately. If the matrix is rank-deficient, two or more effects are aliased — tangled into a single column — and no quantity of data can ever pull them apart. Its defining trait is that it is structural and pre-data: it reads the design, not the results, and catches un-estimability while the experiment is still on paper and cheap to fix. Where Coordinate Round-Trip Test exercises a real pipeline on real objects, this check reasons about the design's algebra before a single measurement is taken.

Example

An engineer plans a two-factor experiment — reaction temperature (high/low) and catalyst (A/B) — but, to save runs, schedules only two conditions: high-temperature-with-A and low-temperature-with-B. The rank check builds the design matrix and finds the temperature and catalyst columns are identical: the two factors move in perfect lockstep. The matrix is rank-deficient, so the temperature effect and the catalyst effect are perfectly confounded — any difference in yield could be caused by either, and the data will never say which. The check flags this before the costly runs and names the fix: add the missing cross-conditions (high-with-B, low-with-A) so the columns become independent and both effects become estimable.

How it works

The model matrix X is assembled — one row per planned run, one column per effect to be estimated, including any interaction terms. Its rank is computed (equivalently, the rank of XᵀX) and compared against the number of effects the experiment intends to estimate. If the rank falls short, the dependent columns are identified and reported as alias sets: which effects trade off against which. A pass requires full column rank — as many independent columns as effects.

Tuning parameters

  • Model specification — which main effects and interactions become columns. A richer model demands more independent runs; over-specifying can force rank-deficiency in a fixed budget.
  • Rank tolerance — exact vs. numerical, i.e. whether nearly collinear columns are treated as dependent. This ties the structural check to the conditioning question at its boundary.
  • Aliasing-report depth — a bare pass/fail vs. the full alias structure showing every confounded pair.
  • Estimable-subset target — require full rank for all effects, or accept partial identifiability of a chosen subset while deliberately aliasing the rest (as fractional designs do on purpose).

When it helps, and when it misleads

Its strength is timing and specificity: it catches un-estimability at design time, when redesign costs nothing, and it names exactly which effects are confounded so the fix is obvious. It is the guard that keeps an experiment from being un-analyzable before it is ever run.

Its limit is that full rank guarantees estimability in principle but says nothing about precision. A barely-full-rank design — columns independent but nearly collinear — is estimable yet yields enormous variances; that is a conditioning problem, not a rank problem, and this check will pass it.[1] The classic misuse is skipping or relaxing the check to justify a convenient design already scheduled. The discipline is to run the rank check and a conditioning/variance check together at design time, and to pre-register which effects the design claims to estimate.

How it implements the components

Experimental Design-Matrix Rank Check realizes the identifiability diagnostic side of the archetype's machinery — the structural preconditions for unique estimates:

  • dimension_and_rank_reference — it computes the design's rank and compares it against the required number of effects; the rank figure is its core output.
  • generator_independence_criterion — full column rank is the independence criterion applied to the design's effect columns: independence here means no aliasing.

It does not measure the numerical precision or conditioning of an estimable design (Basis Conditioning and Perturbation Audit), test reconstruction behavior on real objects (Coordinate Round-Trip Test), or construct the basis it diagnoses (Basis Extraction from a Spanning Set).

Notes

Rank-deficiency and ill-conditioning mark two different boundaries. Rank-deficiency is hard and structural: an effect is unidentifiable no matter how much data arrives. Ill-conditioning is soft and statistical: the effect is identifiable but imprecise. This check owns the hard boundary — it decides whether estimation is possible at all; the conditioning audit owns the soft one — how well. Numerically, the rank itself is computed by the rank-revealing factorizations (QR, SVD) among the siblings.

References

[1] When a design matrix is rank-deficient, distinct effects share a column and are aliased (confounded): their estimates are inseparable. Deliberately chosen aliasing is the basis of fractional-factorial designs; accidental aliasing is the failure this check exists to catch.