Two errors, and whose fault they are

Columns that steer a random start

A condition estimator whose first vector is random cannot be built against, and concentrating the hidden column did not hide it: its own entries steer the first sign vector onto it. Give the steering to other columns — each equal on both rows of every pair the hidden column alternates over — and the random start is fooled after all. The prediction was a factor of one over the square root of the number of steering columns, on a share of seeds that falls as they lose to the hidden column, and the block of two fooled as often. The factor is whatever the builder chooses; the share, at a fixed factor of one half, rises with every column added, from 9 per cent with four to 77 with thirty-four. And the block of two is not fooled as often: it is fooled on the square of the single start's share, and the block of four on its fourth power — independent guesses, which is the one thing that still works.

Worth reading first: An estimate that can be fooled · Orthogonal is a number.

A first vector nobody can build against took the matrix built to fool a condition estimator and found that it was built against one vector. The estimator every library ships, Hager’s walk as refined by Higham, estimates ∥A−1∥1\|A^{-1}\|_1 by starting from the all-ones vector, and a hidden column of A−1A^{-1} whose entries alternate in sign cancels against all-ones and is never visited. Started instead from a random ±1\pm 1 vector, the walk escaped that construction on every seed at every size, at no cost on random matrices. And concentrating the hidden column on a few rows, to raise the chance that a random vector’s signs split evenly across them, did not hide it either: the hidden column’s own entries dominate A−1xA^{-1}x on its rows, so the first sign vector the walk forms follows the hidden column’s signs and the next step goes straight to it.

Its last section named the next construction. “The hidden column wins the first product because it is the largest column. A family of steering columns, each smaller than the hidden one but together large enough to decide the sign of A−1xA^{-1}x on the hidden column’s rows — for instance columns whose entries are equal on each pair of rows the hidden column alternates over, so that every sign vector they produce cancels the hidden column whatever x was. The prediction with a sign is that m such columns fool a random start by about 1/m1/\sqrt{m}, on a share of seeds that falls as the steering columns’ combined sign loses to the hidden column’s on some pair of rows, and that the block of two is fooled by the same construction on about the same share.”

The construction works. Each clause of the prediction is wrong in an instructive direction.

An inverse with a decoy, a hidden column and steering

The estimator never sees A−1A^{-1}; it sees products with it, computed by solves with A’s factors — the price the condition number is an amplifier put on knowing the amplification at all, since forming the inverse costs more than the solve it is meant to qualify. So the construction builds B=A−1B = A^{-1} directly and inverts it to get A. Its columns are: a decoy of ones, the column an all-ones walk would report; the hidden column, ±h\pm h alternating over twelve rows taken in pairs, +h+h on the first row of each pair and −h-h on the second, which is the largest column and the one whose 1-norm is the answer; m steering columns; and filler of 0.9 with a diagonal bump to keep B invertible.

A steering column has the same entry on both rows of a pair — a random sign for each pair, size gg — and nothing on the other rows. Its whole effect is on the sign vector the walk forms. On a pair of rows, y=Bxy = Bx is ±hx1+S\pm h x_1 + S, where SS is what everything else contributes, and the steering columns put the same SS on both rows. Once ∣S∣|S| exceeds h∣x1∣h|x_1|, both rows of the pair get the same sign, and the hidden column, which is +h+h on one and −h-h on the other, contributes exactly zero to BTsB^{\mathsf T}s from that pair. A sign vector that agrees on every pair cannot see the hidden column at all.

The inverse built to steer a random start away from its largest column: a decoy, the hidden column, four steering columns and fillerA 24 by 24 inverse drawn entry by entry. Column one is a decoy of ones; column two, the largest, is plus and minus 8 alternating over the last twelve rows in pairs, 1-norm 97; columns three to six are steering columns, equal on both rows of every pair with a random sign per pair and size 6.0, 1-norm 73.2 each; the rest is filler of 0.9 with a diagonal bump. Positive and negative entries of the hidden and steering columns are drawn in different colours; the decoy and filler in one quiet colour.decoyhiddensteeringfillerpaired rowsother rowsfilled: positiveopen: negativehidden columnsteering columnson each pair: hidden cancels, steering agreesagree on a pair, miss the hidden column
Fig. 1 The constructed inverse at order 24 with four steering columns, entry by entry: the decoy and filler as quiet squares, the hidden column and the steering columns’ entries on the paired rows as dots, filled where positive and open where negative.

The size of the steering is set by one number. With g=γh/mg = \gamma h/\sqrt{m}, m random-signed columns add up on a pair to about γh\gamma h times a random start’s entry, whatever m is; and each steering column’s 1-norm is γ/m\gamma/\sqrt{m} of the hidden column’s. So γ says how hard the steering pushes and γ/m\gamma/\sqrt{m} says how large each steering column is — which, when the walk is fooled, is what it reports.

Fooled, and by exactly a steering column

Every seed's condition estimate over the truth, with 16 steering columns each half the hidden column, for one random vector and blocks of two and fourOne hundred seeds per estimator. The estimate is either exact or the steering column's norm, 0.51 of the truth. one random vector: fooled on 50 seeds; block of two: fooled on 35 seeds; block of four: fooled on 7 seeds. LAPACK's walk from all ones returns 0.51 of the truth.16 steering columnsone random vector: fooled0.5block of two: fooled0.35block of four: fooled0.070.40.50.60.70.80.91estimate over the truthone random vectorblock of twoblock of foura steering columnthe truthdashed: a steering column's norm over the truthtwo answers, and the seed picks
Fig. 2 Every seed’s estimate over the truth with sixteen steering columns, each half the hidden column, for one random vector and blocks of two and four. The dashed line is a steering column’s norm. The dial sets the number of steering columns.

On a 48 × 48 inverse with every steering column half the hidden column’s 1-norm, the estimate on every seed is one of exactly two numbers: the truth, or 0.51 of it, which is a steering column’s norm over the hidden column’s. Nothing lands in between. When the first sign vector agrees on enough pairs to turn the walk away, the walk goes to a steering column, forms a sign vector from it that agrees on every pair — a steering column’s own signs are pair-equal by construction — and stops there, satisfied, at that column’s norm.

So the factor the estimator is fooled by is not 1/m1/\sqrt{m}. It is γ/m\gamma/\sqrt{m}, and γ is the builder’s to choose. The prediction took γ as one, the smallest steering that wins a pair half the time; but the builder can scale γ and m together and hold the factor wherever they like. The dial holds it at one half and moves m from four to thirty-four. The two clusters stay where they are; only the number of seeds in the lower one changes. LAPACK’s walk, which starts from all ones and has no random vector at all, returns 0.51 of the truth on every one of these matrices.

At a fixed factor, more columns fool more seeds

The figure at the top of the page is the share of the hundred seeds that land in the lower cluster, with the factor fixed at 0.51. With four steering columns one random vector is fooled on 9 seeds; with nine, on 38; with sixteen, 50; with twenty-five, 64; with thirty-four, 77. The prediction said the share would fall as the steering columns’ combined sign lost to the hidden column’s — which is true at a fixed column size, and is not the trade the builder faces. Holding the factor fixed and adding columns raises γ as m\sqrt{m}, so the steering on each pair grows and the share of random starts it wins grows with it.

How often eight steering columns fool a random start, against their combined size on each pair of rows as a multiple of the hidden column's entryA 24 by 24 inverse with 8 steering columns whose entries are the hidden entry times the combined size over the square root of eight, so that each column's 1-norm is that fraction of the hidden column's. combined size 0.5: each column 0.19 of the hidden one; fooled on 1, 0 and 0 per cent of seeds; combined size 1: each column 0.36 of the hidden one; fooled on 3, 0 and 0 per cent of seeds; combined size 1.5: each column 0.54 of the hidden one; fooled on 45, 17 and 3 per cent of seeds; combined size 2: each column 0.71 of the hidden one; fooled on 63, 45 and 18 per cent of seeds; combined size 2.5: each column 0.89 of the hidden one; fooled on 75, 80 and 51 per cent of seeds.8 steering columnssize 0.5: each column over the hidden0.19size 1: each column over the hidden0.36size 1.5: each column over the hidden0.54size 2: each column over the hidden0.71size 2.5: each column over the hidden0.890.511.522.500.20.40.60.81combined steering size over the hidden entryshare of seeds fooledone random vectorblock of twoblock of fourvertical line: steering as large as the hidden entrybelow one the steering loses
Fig. 3 The share of seeds fooled with eight steering columns on a 24 × 24 inverse, against their combined size on a pair as a multiple of the hidden entry, for the three estimators. The vertical line is steering as large as the hidden entry.

Held at eight columns, the dependence on γ alone is a threshold. Below a combined size of one the steering loses most pairs and almost no seed is fooled — 1 and 3 per cent at sizes of a half and one. At one and a half it wins: 45 per cent, and 63 at two, 75 at two and a half. The earlier essay’s concentrated column traded how badly the estimator was fooled against how often, because the only lever was the hidden column itself. Steering columns are a second lever, and with two levers the builder can have both: any factor, on as large a share of seeds as there is room for columns.

The room is the limit, and it is a property of the matrix rather than of the estimator — the distinction the exact answer to a nearby problem draws between an algorithm’s failure and a problem’s. At order 48, with twelve rows taken by the pairs and a few by the decoy and filler, thirty-four columns is the most the construction holds, and it fools three random starts in four. A larger matrix holds more. Nothing here suggests the share stops rising before the columns run out.

The first step does most of it

The first step of a random-start walk on the steered inverse: how often it already turns away from the hidden column, how many of its pairs the first sign vector cancels, and how often the walk ends fooledOne hundred random starts per number of steering columns, each column half the hidden one. 4 columns: the first step turns away on 5 per cent, the first sign vector agrees on 2.3 of six pairs on average, and the walk ends fooled on 9; 9 columns: the first step turns away on 16 per cent, the first sign vector agrees on 3.2 of six pairs on average, and the walk ends fooled on 38; 16 columns: the first step turns away on 37 per cent, the first sign vector agrees on 3.9 of six pairs on average, and the walk ends fooled on 50; 25 columns: the first step turns away on 51 per cent, the first sign vector agrees on 4.3 of six pairs on average, and the walk ends fooled on 64; 34 columns: the first step turns away on 50 per cent, the first sign vector agrees on 4.3 of six pairs on average, and the walk ends fooled on 77.the first sign vector4 columns: pairs cancelled of six2.39 columns: pairs cancelled of six3.216 columns: pairs cancelled of six3.925 columns: pairs cancelled of six4.334 columns: pairs cancelled of six4.30510152025303500.20.40.60.81steering columnssharefirst step turns awaypairs cancelled, sharewalk fooled in the endfooled more often than the first step turns awaythe walk finishes what the first step starts
Fig. 4 On the 48 × 48 family: the share of random starts whose first step already turns away from the hidden column, the average share of the six pairs the first sign vector agrees on, and the share of walks that end fooled, against the number of steering columns.

The mechanism is visible in the first product. With four steering columns, a random start’s first sign vector agrees on 2.3 of the six pairs on average, and the walk turns away from the hidden column at once on 5 starts in a hundred. With thirty-four it agrees on 4.3 pairs and turns away on half. The walk ends fooled more often than its first step turns away — 77 against 50 at thirty-four columns — because a walk that visits a steering column first forms that column’s pair-equal signs next, and a walk that visits the decoy forms all-plus signs, and either way the hidden column, still largest, is never looked at again.

How many pairs the first sign vector agrees on can be predicted in one line. On a pair the steering’s contribution is a sum of m terms, each the steering entry gg times a random ±1/n\pm 1/n, which is close to a normal variable whose standard deviation is gm/n=γh/ng\sqrt{m}/n = \gamma h/n; the hidden column’s contribution is h/nh/n in magnitude. The pair agrees when the first beats the second, which happens with probability erfc⁡(1/(γ2))\operatorname{erfc}(1/(\gamma\sqrt{2})), and the expected count of six pairs is six times that.

How many of the hidden column's six pairs of rows a random start's first sign vector agrees on, against the steering's combined size, beside a one-line normal modelThe fixed-factor family at order 48: each steering column half the hidden column, so the combined size on a pair is a half times the square root of the number of columns. combined size 1.00, 4 columns: 2.25 pairs measured, 1.90 from the model; combined size 1.50, 9 columns: 3.21 pairs measured, 3.03 from the model; combined size 2.00, 16 columns: 3.87 pairs measured, 3.70 from the model; combined size 2.50, 25 columns: 4.25 pairs measured, 4.13 from the model; combined size 2.92, 34 columns: 4.29 pairs measured, 4.39 from the model. The model counts a pair as agreeing when a normal variable with standard deviation equal to the combined size exceeds one in magnitude.pairs agreed, of six4 columns: measured over model1.29 columns: measured over model1.116 columns: measured over model125 columns: measured over model134 columns: measured over model0.980.511.522.530123456combined steering size over the hidden entrypairs the first sign vector agrees onnormal modelmeasureddashed: six pairs, every one agreeingone line predicts the first step
Fig. 5 The pairs the first sign vector agrees on, averaged over a hundred random starts, against the combined steering size, with the one-line normal model as a dashed curve.

The model is within four tenths of a pair everywhere and within a tenth from sixteen columns up: 1.90 predicted against 2.25 measured at four columns, 3.03 against 3.21 at nine, 3.70 against 3.87 at sixteen, 4.14 against 4.25 at twenty-five, 4.38 against 4.29 at thirty-four. Where it is low, it is low because the decoy and filler columns, which are the same on both rows of every pair, add a little steering of their own that the model leaves out; with few steering columns that extra is a larger share. So the threshold in the previous figure is the model’s curve read at the point where agreement on most pairs becomes likely: a combined size of about one and a half, where each pair agrees with even odds.

That last point is the difference from the earlier essay’s construction. There the hidden column won the first product because its entries dominated yy on its rows. Here the hidden column is still the largest column, but largest is not what the walk asks; it asks which column BTsB^{\mathsf T}s points at, and the steering columns decide ss. An estimate that can be fooled found the estimator stopping “because it is satisfied” — no vertex looks better than where it stands — and a steering column is a vertex built to satisfy it.

A block of t vectors is t guesses

The prediction’s last clause expected the block of two to be fooled as often as one vector. It is fooled far less often, and by a rule simple enough to state. On the fixed-factor family with nine steering columns, one random vector is fooled on 38 seeds, the block of two on 16 and the block of four on 3; 0.3820.38^2 is 0.14 and 0.3840.38^4 is 0.02. With thirty-four columns, 77, 64 and 39 against 0.59 and 0.35. Wherever the single vector is fooled on more than a third of seeds, the block of two is fooled on the square of that share and the block of four on its fourth power, each within a tenth — dashed on the figure at the top of the page.

That is what independent guesses would do. Each of the block’s random vectors is steered away with the same probability, independently of the others, and the block is fooled only when every vector is. Two columns see what one walk cannot introduced the block of two as a remedy for a construction against one fixed vector, and the earlier essay found that two random vectors behave as two guesses on random matrices. Against a construction built for random vectors, the guesses are still independent, and so the only defence left is more of them: at three random starts fooled in four, a block of four is fooled on two seeds in five, and a block of sixteen would be fooled on about one in a hundred.

Independence turns the choice of block size into arithmetic. To be fooled on fewer than a fraction δ of seeds against a construction that fools one vector with probability p, a block needs t≥log⁡δ/log⁡pt \ge \log\delta / \log p vectors. At p of three quarters and δ of one in a hundred that is sixteen; at p of a half, seven. The cost grows only with the logarithm of the safety wanted, which is cheap, and with 1/(1−p)1/(1-p) as p approaches one, which is not: since log⁡p≈−(1−p)\log p \approx -(1 - p) near one, a construction that fools one vector nine times in ten needs a block of about forty-four for the same one in a hundred, and one that fools it ninety-nine times in a hundred needs about four hundred and sixty. A rate measured on a hundred seeds is itself only good to a few points, as one draw in twenty found for a parameter-choice rule’s catastrophes, which settled only by a thousand draws; the block sizes above inherit that uncertainty through p.

What the builder can and cannot do

The builder controls the factor and, through the number of columns, the probability that one random vector is fooled. What the builder cannot control is independence: whatever probability p the construction achieves against one vector, t independent vectors are all fooled with probability ptp^t. So a construction can force a block estimator to be wrong with any probability below one, but only by making p close to one, and the number of steering columns that takes grows with the block size. The estimator’s defence costs t products a step; the builder’s attack costs a matrix big enough to hold the columns.

A residual check would not have caught any of this. The estimate is a lower bound on every seed — it is the norm of a column the walk actually visited — and a small residual is not a small error is the standing reminder of what a quantity that always looks plausible can hide. For a library, the measurement sharpens a choice the earlier essays left open. The all-ones walk is fooled on every one of these matrices; a single random start is fooled with whatever probability the matrix’s builder chose; a block of t random starts is fooled with that probability to the power t. The tail a sample never reaches warned that a worst case measured on random matrices says little about the matrices nobody sampled. A block with random starts is the one estimator here whose failure probability on a constructed matrix can be stated in advance from a property of the estimator, given p — and p is the one number the construction is free to push towards one.

What one construction does not show

One family of constructions, built around a hidden column on twelve rows in six pairs, at orders 24 and 48, a hundred seeds for each setting. A hidden column spread over more pairs needs the steering to win more pairs at once, which on independent pairs should lower p for the same γ; this family does not separate that effect from the number of columns. The estimator is the block 1-norm estimator of the earlier essays, with its rule of replacing a sign vector that repeats an earlier one by a fresh random vector; how often that rule fires on these matrices, and how much of the block’s escape it accounts for, is not separated here. And the construction makes no attempt to look like a matrix anyone would solve with: whether such structure arises without being built for is the question that decides whether any of this matters outside an essay about building it.

Still open: steering against a block, and pairs that are not pairs

A construction against the block’s independence. Every random vector here is steered independently because the steering columns’ signs are fixed and the start’s are not. A construction whose steering depends on the start cannot be built into a fixed matrix — but one whose steering columns are many enough to win almost every pair for almost every start can push p towards one. The prediction with a sign is that at order 96 with eighty steering columns at a factor of one half, one random vector is fooled on more than ninety seeds in a hundred and the block of four on more than sixty, so that the block’s escape through independence is a matter of size, not of principle.

A hidden column that is not paired. The steering works because the hidden column’s alternation is in pairs of adjacent rows, and the steering is equal within each pair. A hidden column whose signs follow a random pattern over its rows needs steering columns whose entries agree within each group of rows of the same sign — two groups rather than six pairs — and the prediction is that this makes steering easier, not harder: two groups are won by a combined size of about one, where six pairs needed one and a half.

Shares its objects with

Essays that name at least two of the same things, and that neither author linked.

Named objects

A flat tag is an object no other essay names yet.

Block methodsCondition-estimationCondition numberCounterexampleLower boundProbabilistic boundsRandom probeWorst-case analysis