n = 32  ·  h = 1/33  ·  33 edges  ·  39 machine checks, all PASS, 0.04 s

One Space, Two Bases

The bridge's precision matrix and its covariance are Gram matrices over the same 33 edges: $A$ is the Gram of sparse edge measurements, $A^{-1}$ the Gram of dense edge responses, and the two row families are dual bases — $X^\top B_{\mathrm{inc}} = I$, to $2\times10^{-15}$. Preconditioning is what happens when you make either family slightly wrong on purpose.

Precision · sparse edge measurements
$A = B_{\mathrm{inc}}^\top B_{\mathrm{inc}}$
one row per edge — two spikes, local
Covariance · dense edge responses
$A^{-1} = X^\top X$
one row per edge — a global dipole field
Notation guard, posted before anything else. The suite uses the letter $B$ for two unrelated matrices, and this page needs both. $B_{\mathrm{inc}}$ is the grounded incidence matrix — $(n{+}1)\times n = 33\times32$, one row per edge of the chain wall–1, 1–2, …, 32–wall, entries $+1/h$ at the tail and $-1/h$ at the head (Vishnoi's sign convention, as in mathematica/electrical_networks.wls). $B_{\mathrm{reg}}$ is the two-sided regression matrix $I - \mathrm{diag}(A)^{-1}A$ of report 11 and report 15, which write it as a bare $B$. A third, minor family — the free, ungrounded incidence matrices §3 briefly compares against — appears only as $B_{\mathrm{full}}$ and $B_{\mathrm{free}}$. On this page no $B$ ever appears without its subscript.
§1 · The two factorizations

Same 33 edges, two Grams

The arena is the suite's Dirichlet chain: $A = \mathrm{tridiag}(-1,2,-1)/h^2$ from laplacian_1d, $n=32$ interior nodes, $h=\tfrac1{33}$, both walls pinned, $\kappa(A)=440.7$. Its sparse factorization is an old friend by now (report 09 §4): $A = B_{\mathrm{inc}}^\top B_{\mathrm{inc}}$, verified entrywise to $2.1\times10^{-16}$. Read row by row, that says something physical: row $e$ of $B_{\mathrm{inc}}$ is a measurement functional — the scaled difference $(u_{e-1}-u_e)\times\tfrac1h$ across one edge, two nonzeros for an interior edge, one for the two wall edges. The precision matrix is the Gram matrix of these local measurements: $A_{ij}$ is nonzero only where measurement supports overlap, which is why $A$ is tridiagonal ($\mathrm{nnz}=94$) and why the AR/conditional world of report 12 lives on this side.

The covariance has the mirror-image factorization. Define $$X \;=\; B_{\mathrm{inc}}\,A^{-1} \;=\; \big(B_{\mathrm{inc}}^\top\big)^{+},$$ the Moore–Penrose dual of the measurement matrix (the two definitions agree to $1.2\times10^{-16}$). Then $$A^{-1} \;=\; X^\top X,$$ verified to $1.6\times10^{-15}$: the covariance is also a Gram matrix over the same 33 edges — but of dense rows. Row $e$ of $X$ is the response field you get by solving $Av = b_e$ with the $e$-th measurement row as the load: inject $+1/h$ at the tail node, extract $1/h$ at the head — a unit dipole across edge $e$. All 33 rows match their solves to $3.8\times10^{-17}$.

And the two families are not just parallel constructions — they are dual bases: $$X^\top B_{\mathrm{inc}} \;=\; A^{-1}B_{\mathrm{inc}}^\top B_{\mathrm{inc}} \;=\; I_{32},$$ to $2.4\times10^{-15}$. Concretely: read any $u$ against the measurements, rebuild it with the responses, and you get $u$ back exactly — $u = \sum_e (b_e^\top u)\,v_e$, because that sum is $X^\top B_{\mathrm{inc}}\,u = A^{-1}A\,u$. The measurement coefficients of $u$ are its edge differences (currents, an electrician would say); the responses are the reconstruction kit that turns currents back into voltages. One index set, two reciprocal coordinate systems — hence the title.

At $n=8$ ($h=\tfrac19$) the whole response basis fits on a business card, in exact rational arithmetic: $X_{e,i} = (i - 9\cdot\mathbf 1[i\ge e])/81$, and every identity above closes with zero tolerance in Fractions — $A\Sigma = I$ entry by entry, the closed form on all $9\times8$ entries, $X^\top B_{\mathrm{inc}} = I_8$ exactly. Each row climbs the ramp $i/81$, then drops by $\tfrac19 = h$ as it crosses its own edge:

X (exact)node 1node 2node 3node 4node 5node 6node 7node 8
edge 1−8/81−7/81−2/27−5/81−4/81−1/27−2/81−1/81
edge 21/81−7/81−2/27−5/81−4/81−1/27−2/81−1/81
edge 31/812/81−2/27−5/81−4/81−1/27−2/81−1/81
edge 41/812/811/27−5/81−4/81−1/27−2/81−1/81
edge 51/812/811/274/81−4/81−1/27−2/81−1/81
edge 61/812/811/274/815/81−1/27−2/81−1/81
edge 71/812/811/274/815/812/27−2/81−1/81
edge 81/812/811/274/815/812/277/81−1/81
edge 91/812/811/274/815/812/277/818/81
The exact response basis at $n=8$ — the $9\times8$ matrix $X = B_{\mathrm{inc}}A^{-1}$ in fractions (from the checks script's Fraction block, zero float error). Every row is the closed form $(i-9\cdot\mathbf 1[i\ge e])/81$: blue entries sit left of the row's edge ($+i/81$), red entries right of it ($(i-9)/81$). Row 5 (highlighted) is the worked row of §3.
machine check — $A = B_{\mathrm{inc}}^\top B_{\mathrm{inc}}$: 2.1×10⁻¹⁶ · $X = B_{\mathrm{inc}}A^{-1} = \mathrm{pinv}(B_{\mathrm{inc}}^\top)$: 1.2×10⁻¹⁶ · $A^{-1} = X^\top X$: 1.6×10⁻¹⁵ · all 33 dipole solves: 3.8×10⁻¹⁷ · $X^\top B_{\mathrm{inc}} = I$: 2.4×10⁻¹⁵ · $n=8$ Fractions: exact, zero tolerance
§2 · Interactive

The dual-basis explorer

Every number below is the suite's own data — the full $33\times32$ matrices $B_{\mathrm{inc}}$ and $X$ are baked into the page from results/dual_basis.json, and the widget re-verifies the closed form and both Gram identities at load (badge). Click an edge on the chain to see its two rows; switch the click target to $f$ to pair different edges in the dot-product readout.

dual-basis explorer — one edge, two rows self-test …
edge e = 17  ·  edge f = 25
$v_e\cdot b_f$   exact value $\delta_{ef}-\tfrac1{33}$  
Left: the measurement row $b_e$ — two spikes, $+33$ at the tail, $-33$ at the head (wall edges keep a single spike). Right: the response row $v_e$ — the global dipole field, dots from the baked $X$, gold line the closed form $h(x_i - \mathbf 1[x_i\ge x_e])$ of §3. The dot-product readout is $\Pi_{ef} = (XB_{\mathrm{inc}}^\top)_{ef} = \delta_{ef}-\tfrac1{33}$ — the grounded projection, one uniform-loop mode short of a Kronecker delta; the exact $\delta_{ij}$ lives in node space as $X^\top B_{\mathrm{inc}} = I_{32}$, which the self-test recomputes from the baked rows at load. When $e=f$ the readout is the constant diagonal $32/33$: every edge of the grounded chain carries the same leverage.
§3 · The physics of the rows

Dipole fields, dummy loads, and a matrix engineers built by hand

The response row is a centered step. Solve the dipole load across edge $e$ and you get, in closed form — verified on all $33\times32$ entries to $7.6\times10^{-17}$ — $$X_{e,i} \;=\; h\,\big(x_i - \mathbf 1[x_i \ge x_e]\big),\qquad x_e = e\,h,$$ with the tail-head orientation above (flip the orientation and the row negates). Left of the edge the field climbs the ramp $h\,x_i$; crossing the edge it drops by $h$ to the descending ramp $h(x_i-1)$; at the walls it vanishes. It is exactly the difference of two adjacent Green tents: row $e$ equals (tent at $x_{e-1}$ minus tent at $x_e$)/$h$ — adjacent columns of $A^{-1}$, wall columns zero — to $1.6\times10^{-16}$. A dipole is a source next to a sink, so its field is a difference of two impulse responses; the long flat-ish flanks are what "dense row" means physically. In the $n=8$ card above, row 5 reads $\tfrac1{81}, \tfrac2{81}, \tfrac1{27}, \tfrac4{81}$, then falls to $-\tfrac4{81}, -\tfrac1{27}, -\tfrac2{81}, -\tfrac1{81}$: ramp up, drop by $h=\tfrac19$, ramp out.

The Gram of responses is Maxwell's 1864 unit-load method. Give each edge its own conductance $c_e$ (resistance $r_e = 1/c_e$) and the covariance assembles member by member: $$\big(A^{-1}\big)_{ij} \;=\; \sum_{e}\, r_e\, I_e^{(i)}\, I_e^{(j)},$$ where $I_e^{(i)}$ is the current through edge $e$ under a unit injection at node $i$ (grounded walls). Verified with random conductances $\sim U(0.5,2)$, seed 42, on all $32\times32$ entries to $3.0\times10^{-15}$. Structural engineers know this as the Maxwell–Mohr dummy-load formula, later Castigliano's theorem: to find the deflection at $i$ under a load at $j$, thread a dummy unit load through the structure at $i$ and sum $r_e I_e^{(i)} I_e^{(j)}$ member by member — engineers were assembling covariance matrices member by member before covariance had a name. Maxwell–Betti reciprocity ("load here, read there, swap, same number") is nothing but the symmetry of this Gram, and it holds to $4.4\times10^{-15}$. At $n=8$ with unit conductances every edge has $r_e = h^2 = \tfrac1{81}$, and the entry $(A^{-1})_{3,6}$ closes exactly in fractions: unit injection at node 3 drives currents $-\tfrac23$ through the three edges to its left and $+\tfrac13$ through the six to its right; injection at 6 drives $-\tfrac13$ / $+\tfrac23$; the nine products $r_e I_e^{(3)} I_e^{(6)}$ are $\tfrac2{729},\tfrac2{729},\tfrac2{729},$ $-\tfrac1{729},-\tfrac1{729},-\tfrac1{729},$ $\tfrac2{729},\tfrac2{729},\tfrac2{729}$, summing to $\tfrac9{729} = \tfrac1{81} = (A^{-1})_{3,6}$. Exactly.

The cross-Gram is Vishnoi's projection — with one honest asterisk. The remaining product of the two row families is $\Pi = X B_{\mathrm{inc}}^\top = B_{\mathrm{inc}}A^{-1}B_{\mathrm{inc}}^\top$, a $33\times33$ matrix on edge space: symmetric ($1.9\times10^{-15}$), idempotent ($2.0\times10^{-15}$), eigenvalues exactly $\{0\ (\times1),\,1\ (\times32)\}$ — an orthogonal projection of rank $n=32$, corank one. For a free graph, Vishnoi's Props 4.2–4.4 (coded in electrical_networks.wls) give $\Pi = B_{\mathrm{free}}L^{+}B_{\mathrm{free}}^\top$ — $B_{\mathrm{free}}$ the free, ungrounded incidence matrix — with $\Pi_{ee} = $ effective resistance and rank $n-1$; and for a free tree like our path, that $\Pi$ is the identity — no cycles to project out ($B_{\mathrm{full}}L_{\mathrm{full}}^{+}B_{\mathrm{full}}^\top = I_{33}$, checked to $5.1\times10^{-15}$). Our chain is grounded, and grounding changes the answer by exactly rank one: $$\Pi \;=\; I_{33} - \tfrac1{33}\,\mathbf{1}\mathbf{1}^\top\qquad\text{exactly } (1.7\times10^{-15}),$$ whose null vector is the constant current — the one loop the grounded chain owns, a uniform circulation out one wall, through ground, in the other. Equivalently: short both walls together and the 33 edges form a cycle $C_{33}$ through the ground node, and $\Pi_{ee} = c_e\,R_{\mathrm{eff}}(e)$ in that network, all 33 edges, to $2.0\times10^{-15}$. The diagonal is constant at $\tfrac{32}{33} = 0.9697$: in regression language, each edge-measurement is a datapoint and $\Pi$ is its hat matrix, so $32/33$ is the leverage score of every edge — the quantity effective-resistance sparsifiers sample by — and the diagonal sums to $32 = \mathrm{rank}\,\Pi$, Foster's theorem in grounded form.

The free-path version, gauge and all. Run the same construction on the free path $P_8$: $X_{\mathrm{free}} = B_{\mathrm{free}} L^{+} = \mathrm{pinv}(B_{\mathrm{free}}^\top)$ ($1.2\times10^{-15}$), $X_{\mathrm{free}}^\top X_{\mathrm{free}} = L^{+}$ ($2.9\times10^{-15}$), and each row is a gauge-fixed dipole field — it solves the dipole load and sums to zero, orthogonal to the constant mode ($2.3\times10^{-15}$). $\Pi_{\mathrm{free}} = I_7$ with effective resistance exactly $1$ per tree edge and Foster sum $7 = $ vertices $-\,1$. But biorthogonality now holds only modulo the gauge: $X_{\mathrm{free}}^\top B_{\mathrm{free}} = I - \tfrac18\mathbf{1}\mathbf{1}^\top$ — the centering projector, not the identity ($1.4\times10^{-15}$). Grounding is what buys the clean $X^\top B_{\mathrm{inc}} = I$ of §1; freedom costs you one direction.

machine check — continuum step form, 33×32 entries: 7.6×10⁻¹⁷ · tent-difference identity: 1.6×10⁻¹⁶ · Maxwell unit-load, random conductances: 3.0×10⁻¹⁵ · Betti = Gram symmetry: 4.4×10⁻¹⁵ · $\Pi = I-\frac{1}{33}\mathbf{1}\mathbf{1}^\top$: 1.7×10⁻¹⁵ · leverage $32/33$, Foster sum 32: 1.4×10⁻¹⁵ · $P_8$ gauge story: ≤ 2.9×10⁻¹⁵ · $n=8$ current bookkeeping: exact fractions
§4 · Two perfect predictors, one solve

Predict conditionally or predict marginally — perfectly, either way

Both factorizations are prediction machines, and report 15 (with the notebook's phiL2R/phiR2L pair in whitening_inverse_transposed.nb) worked out the perfect versions on this exact chain. They sit on opposite sides of the dual pair:

Conditional · AR · the whitener

Predict each node from its left neighbor, walls known. The exact left-to-right predictor is a nonstationary AR(1) with report 15's closed-form coefficients $$\phi_i = \frac{n+1-i}{\,n+2-i\,} = \frac{\Sigma_{i,i-1}}{\Sigma_{i-1,i-1}},\qquad d_i^2 = h^2\phi_i,\qquad i = 2,\dots,n,$$ verified to $6.1\times10^{-15}$ (node 1 has no left neighbor — its predecessor is the wall's deterministic zero, so it carries no coefficient; the $d^2$ formula does extend to $i=1$: $d_1^2 = h^2\cdot\tfrac{32}{33} = \Sigma_{11}$). The coefficients start at $\phi_2 = \tfrac{31}{32}$ and fall to $\phi_{32} = \tfrac12$ at the right wall — the wall is felt, which is exactly what "nonstationary" means here. Perfect whitening rebuilds the precision: $(I-\Phi)^\top D^{-2}(I-\Phi) = A$ to $2.1\times10^{-16}$, and PCG with it converges in 1 iteration (report 12: perfect AR = exact solve).

Marginal · MA · the colorer

Predict each node from both neighbors at once: the two-sided conditional-mean matrix is $$B_{\mathrm{reg}} = I - \mathrm{diag}(A)^{-1}A = \mathrm{tridiag}\big(\tfrac12,0,\tfrac12\big),$$ the half-step walk matrix ($1.1\times10^{-16}$), with $\rho(B_{\mathrm{reg}}) = \cos\frac{\pi}{33} = 0.995472$. Report 11 §2's path expansion sums walks: $$A^{-1} = \Big(\textstyle\sum_{j\ge0} B_{\mathrm{reg}}^{\,j}\Big)\,D^{-1},$$ and the measured convergence rate of the partial sums is $e^{-0.004538}$ — the fitted exponent equals $\ln\rho(B_{\mathrm{reg}})$ to the digit (long walks carry the far field). Summed to the end, it rebuilds the covariance: the perfect colorer is the exact $A^{-1}$.

machine check — $\phi_i$ closed form & $d_i^2 = h^2\phi_i$: 6.1×10⁻¹⁵ · perfect whitener $= A$, PCG 1 iteration: 2.1×10⁻¹⁶ · $B_{\mathrm{reg}}$ tridiag(½,0,½): 1.1×10⁻¹⁶ · Neumann rate $=\rho$: exact to output precision

Here is the flip this page exists to state. The precision factorization predicts conditionally: sparse rows, each node explained by its neighbors, and applying the model means solving (triangular substitution — cheap flops, sequential). The covariance factorization predicts marginally: dense rows, each edge's response written out in full, and applying the model means multiplying (matvecs — parallel, no solves anywhere). Perfect, the two are the same solve. The interesting preconditioners are the imperfect versions — and each family has its own natural way of being wrong: the AR side drops conditional structure, the MA side clips marginal range. §5 and §6 do one each, honestly.

§5 · Imperfect left-to-right

The whitener family: freeze the coefficient, pay at the wall

The exact $\phi_i$ drift from $\tfrac{31}{32}$ toward $\tfrac12$ because the right wall keeps getting closer. The laziest possible approximation is to freeze the coefficient: one stationary $c$ for every node, $$M_c = (I-\Phi_c)^\top D_c^{-1} (I-\Phi_c),\qquad \Phi_c = c\cdot(\text{subdiagonal shift}),$$ applied as two unit-triangular bidiagonal solves plus a diagonal scale. The innovation variances $D_c$ must be chosen honestly, and the sweep runs both defensible choices: const-D, the single scalar $d_c^2 = h^2(1+c^2)/2$, chosen so the interior diagonal of $M_c$ matches $\mathrm{diag}(A) = 2/h^2$ (not a stationary AR(1) innovation variance — that would be $\sigma^2(1-c^2)$ — and any scalar here is provably cosmetic: $\kappa$, PCG counts, and $\rho_{\mathrm{opt}}$ are invariant under $D\to7D$, checked at $c=0.8$ to $1.2\times10^{-13}$); and matched-D, the true residual variance of the imperfect predictor on the true bridge, $D_{ii} = \Sigma_{ii} - 2c\,\Sigma_{i,i-1} + c^2\,\Sigma_{i-1,i-1}$, which is what a statistician would fit.

cconst-D  (d² = h²(1+c²)/2)matched-D
λminλmaxκρ optρ plainPCG itsκPCG its
00.0045281.995440.690.99550.995532528.0036
0.50.022251.2556.180.96500.97782157.0930
0.80.15822.56216.200.88371.5621210.8815
0.90.45815.02510.970.83294.02599.6911
0.950.7849.71712.390.85078.717711.9810
0.990.989724.3424.590.921923.34524.637
113333.000.941232233.002

Three things the table is saying. First, the sweet spot is high but strictly inside. On the fine grid the optimum sits at $c^\ast=0.915$ ($\kappa=10.83$, const-D) and $c^\ast=0.895$ ($\kappa=9.68$, matched-D) — a $\sim$40× improvement over Jacobi ($c=0$, $\kappa=440.7$, the raw $\kappa(A)$), from a preconditioner that stores one scalar. Second, $c=1$ — the pure random-walk prior — fails at the wall, and fails by exactly rank one. With $d^2=h^2$ the frozen whitener misses the true $A$ by a single dyad: $M_1 = A - e_n e_n^\top/h^2$, to $2.1\times10^{-13}$ — a left-to-right recursion that never learns there is a right wall. The spectrum of $M_1^{-1}A$ is $\{1\ (\times31),\ 33\}$: one bad direction. Plain Richardson, which must contract every mode, diverges ($\rho = 32$); PCG, which needs one Krylov step per outlier, shrugs it off in 2 iterations. Same preconditioner, opposite verdicts — the sharpest small example the suite owns of why Krylov wraps preconditioners. Third, the two $D$ choices barely disagree except at the silly end ($c=0$, where matched-D is Jacobi-with-variances, $\kappa=528$): the coefficient, not the variance model, is what matters.

A second imperfection flavor, same family: keep the exact nonstationary $\phi_i$ but round each coefficient to $b$ bits (matched variances). Conditioning collapses monotonically as precision grows — quantization error behaves like a small, well-spread model error, nothing like the structured wall defect:

bitsλminλmaxκρ optρ plainPCG its
10.96971212.37780.8505114
20.78355.196.62400.73774.198
30.74862.3933.19600.52341.3939
40.77931.1771.51000.20320.22078
60.95631.0531.10150.04830.053356
80.98961.0131.02410.01190.013365

This is the 1-D shadow of a move the suite makes in earnest elsewhere: incomplete Cholesky and Vecchia approximations (report 11, report 15) are exactly "keep a cheap sparse conditional model, let PCG mop up the dropped structure" — there the dropped structure is 2-D fill-in, here it is one wall.

the stationary whitener — sweep c self-test …
c = 0.900
κ const-D   κ matched-D   PCG iterations   spectrum shown at  
The κ(c) curves are the 201-point sweep from the JSON, drawn point for point — the slider snaps to that grid and reads the array, no interpolation. PCG iteration counts and full spectra were measured only at the seven sweep points $c\in\{0, 0.5, 0.8, 0.9, 0.95, 0.99, 1\}$, so those readouts snap to the nearest measured $c$ and say which one they are showing. Gold markers: the two optima ($c^\ast=0.915$ const, $0.895$ matched); red marker: the $c=1$ wall failure, whose spectrum is 31 ones and a single 33 — and whose PCG count is 2. Log scale on both axes of the strip.
§6 · Imperfect symmetric

The colorer family: approximate $A^{-1}$ itself, matvecs only

Now be wrong on the other side of the duality: build $M^{-1} \approx A^{-1}$ directly, so applying the preconditioner is a multiplication — no substitutions, no sequential chain. Two constructions, which the checks confirm are siblings in disguise:

Truncated walks · Neumann series cut at k

Cut 11 §2's path expansion at walk length $k$: $$M_k^{-1} = D^{-1}\textstyle\sum_{j=0}^{k} B_{\mathrm{reg}}^{\,j}$$ (scalar $D = $ diag($A$) makes 11's two orderings equal). A polynomial preconditioner: $k$ matvecs with tridiag(½,0,½). SPD honesty: the textbook rule "truncate at even $k$ to stay definite" turns out unnecessary on this chain — $M_k^{-1}$ is SPD at every tested $k$ including odd (min eig over the grid $2.1\times10^{-6} > 0$), because eigenvalues of $M_k^{-1}A$ are $1-\mu^{k+1}$ with $|\mu| \le \rho = 0.995472 < 1$. But parity is far from irrelevant: odd $k$ caps $\lambda_{\max}$ at $1$ (even powers $\mu^{k+1}\ge0$), even $k$ lets it ride to $2$ — which is why $k=1$ beats $k=2$ in the table below.

Clipped responses · finite-range marginal model

Take the exact dual basis of §1 and clip each dipole-response row of $X$ to a window of $w$ nodes beyond its edge's endpoints: $$M_w^{-1} = X_w^\top X_w,$$ a sparse approximate inverse that is SPD by construction — a Gram matrix cannot fail you — and nonsingular even at $w=0$ (min eig $5.4\times10^{-5} > 0$, endpoints only). $w=31$ keeps every entry and recovers the exact colorer: $\kappa = 1.0$, PCG in 1 iteration. Applying $M_w^{-1}$ is two sparse matvecs, $X_w$ then $X_w^\top$.

machine check — SPD at every k, min eig 2.1×10⁻⁶ · SPD by construction at every w, min eig at w=0 5.4×10⁻⁵ · bandwidth($M_k^{-1}$) = min(k, 31) · bandwidth($M_w^{-1}$) = min(2w+1, 31) · w = 31: κ = 1.0, PCG 1

The sibling relation is the bandwidth bookkeeping: the walk length is the range of the covariance model. $M_k^{-1}$ has bandwidth exactly $\min(k, 31)$ — a $k$-step walk reaches $k$ nodes — and $M_w^{-1}$ has bandwidth exactly $\min(2w{+}1, 31)$ — two windows of $w$ overlapping through an edge. Both families are finite-range marginal models of a process whose true marginal structure (the bridge, its explainer) has range the whole rod. The sweeps, in full:

walks kbandmin eig M⁻¹λminλmaxκPCG itsflops/applyflops/iterflops totalspan
004.6e-040.0045281.995440.69326463620,5441
112.1e-060.0090360.9977110.421625282413,5644
223.4e-040.013521.986146.90274401,01227,8927
334.1e-060.01799155.59166281,20019,95610
443.1e-040.022441.97888.14238161,38832,86813
882.8e-040.040021.9648.97191,5682,14042,35625
16162.6e-040.074251.92625.94153,0723,64457,86049
32312.5e-040.13911.86113.38126,0806,65286,03297
64312.4e-040.25551.7456.83912,09612,668126,236193
window wbandnnz Xwmin eig M⁻¹λminλmaxκPCG itsflops/applyflops/iterflops totalspan
01645.4e-050.00077063.8675017.693725682831,0204
131262.3e-060.0049453.72752.19355041,07638,2926
251867.1e-060.014663.561242.84337441,31644,3008
493001.7e-050.056023.24958.00321,2001,77258,03210
8175045.0e-050.19262.65213.77282,0162,58874,60812
16318161.3e-040.49421.6623.36143,2643,83657,09614
24311,0001.8e-040.71921.3191.83104,0004,57249,84814
31311,0562.3e-04111.0014,2244,7969,14814

Two honest readings before the punchline. The odd/even zigzag in the $k$-table is the parity fact from the card above, live in the numbers: $\lambda_{\max}$ alternates between $\approx1$ (odd $k$) and $\approx2$ (even $k$), so $k=1$ ($\kappa=110.4$) genuinely beats $k=2$ ($\kappa=146.9$). And comparing across families at matched $\kappa$: truncated walks at $k=32$ ($\kappa=13.4$) take 12 PCG iterations while clipped responses at $w=8$ ($\kappa=13.8$) take 28 — condition number is not destiny; the walk family's spectrum comes clustered while the clipped family's is spread (the widget shows both strips), and PCG pays for spread, not just for width.

κ = 1 κ = 10 κ = 100 κ = 1000 w = 1 w = 2 w = 4 w = 8 w = 16 w = 31 κ = 752.19 κ = 242.84 κ = 58.00 κ = 13.77 κ = 3.36 κ = 1.83 κ = 1.00 fit over w ∈ [1,16]: κ ∼ w−1.98 — slope ≈ −2 halve the clipping radius, quadruple the debt w = 0 (endpoints only): κ = 5017.7, above this chart clipping window w (log) → covariance range 2w+1
The punchline: finite range cannot model the bridge. Over $w\in[1,16]$ the fit gives $\kappa(M_w^{-1}A) \sim w^{-1.98}$ — slope $\approx-2$ on the log–log axes: halve the clipping radius, quadruple the conditioning debt. ($w=0$, endpoints only, sits at $\kappa = 5017.7$, above this chart.) This is report 14's separator lesson read from the covariance side: there, conditioning on a separator showed the inverse's off-diagonal blocks are low-rank but emphatically not zero; here, forcing them to zero beyond range $w$ charges you $w^{-2}$ in $\kappa$. The bridge's long memory is rank-cheap and range-expensive.
the colorer family — walks k / window w self-test …
k = 8 SPD ✓
bandwidth of $M^{-1}$   κ   PCG iterations   flops / apply   flops / PCG iter   total to 10⁻¹⁰   span / apply  
Left: the $32\times32$ footprint of $M^{-1}$ — the band widens as the model's range grows (walk length $k$, or covariance range $2w{+}1$), until it fills at 31. Right: the spectrum of $M^{-1}A$ on a log axis, with the κ bracket; note the walk family's clusters versus the clipped family's spread at matched κ. The SPD chip reports the measured smallest eigenvalue of $M^{-1}$ itself. Every value is read from the baked sweep grids ($k \in \{0,1,2,3,4,8,16,32,64\}$, $w \in \{0,1,2,4,8,16,24,31\}$); the slider moves through grid stops only.
§7 · The ledger

Whiteners vs colorers, priced in report 11's flops

Both families buy iterations with structure, but they pay in different currencies. In the suite's standing convention (1 MAC = 2 flops, matvec = 2 nnz, vector op = $2N$; PCG spends $12N$ + one $A$-matvec + one $M$-apply per iteration, $4N$ + one apply on setup):

familyapproximatesone apply =flops/applyspan/applyflops/PCG itermeasured atκPCG itsflops to 10⁻¹⁰
AR whitener (frozen c)Atwo bidiagonal solves + diagonal scale31663888c = 0.9, const-D10.9798,436*
MA walks, k = 8A⁻¹8 matvecs with tridiag(½, 0, ½)1,568252,140k = 848.971942,356
MA walks, k = 32A⁻¹32 matvecs with tridiag(½, 0, ½)6,080976,652k = 3213.381286,032
MA clipped, w = 8A⁻¹two sparse matvecs Xw, XwT2,016122,588w = 813.772874,608
MA clipped, w = 16A⁻¹two sparse matvecs Xw, XwT3,264143,836w = 163.361457,096
*AR total assembled from the same convention (setup 4N + one apply = 444, plus 9 × 888); the MA totals are exported directly by the checks script. Xw is §6's clipped response matrix: X with each dipole-response row zeroed beyond a window of w nodes past its edge's endpoints.

The flop column flatters the whitener: 316 flops per apply is the cheapest preconditioner on the page. The span column tells the other half — those two bidiagonal solves are a chain of 63 sequential dependencies, the full update-views lesson (its §Gauss–Seidel: "flop-cheap, depth-expensive"). The walk family's $3k{+}1$ rounds are each embarrassingly parallel; the clipped family is two sparse matvecs at essentially constant depth ($2(1+\lceil\log_2(2w{+}2)\rceil)$, never more than 14 here) — the closest thing on this page to a free lunch on a GPU, which is precisely the niche sparse-approximate-inverse methods occupy in the wild. When the machine is serial, take the AR side: best κ per flop by an order of magnitude. When the machine is wide, the MA side's matvecs win even while spending more flops.

And the honest closing note: on this chain, none of it is necessary — a tridiagonal solve is $O(n)$ and exact, and every preconditioner above is a toy next to it. The families earn their keep off the chain, in 2-D and 3-D, where exact factors fill in and the same two options reappear at scale: drop conditional structure (incomplete Cholesky, Vecchia — 11, 15) or clip marginal range (polynomial / sparse-approximate-inverse — this page's $k$ and $w$), with 14's separators explaining why the second is hard and hierarchy is the way out.

§8 · Suite crossings

Where the suite has already met these two bases

As stiffness and precisionreport 09 §4: $A = D^\top D$ is the same Gram-of-measurements statement in difference-operator clothing; this page's $B_{\mathrm{inc}}$ is that $D$ with Vishnoi's signs and the walls made explicit.

As tents — the green-tents explainer: columns of $A^{-1}$ are impulse responses; this page's response rows are their first differences, dipole fields, and the two pages share the identity row$_e$ = (tent$_{e-1}$ − tent$_e$)/$h$.

As regressionreport 11 §2: the walk expansion truncated here at $k$ is the same series that report ran to convergence; the leverage $32/33$ is the hat-matrix diagonal of the edge-datapoint regression.

As predictionreport 12 and report 15: perfect AR = exact solve; §5 is what happens to 15's closed-form $\phi_i$ under the cheapest possible lobotomy.

As separatorsreport 14: the inverse's off-diagonal blocks are low-rank, not zero; §6's $w^{-1.98}$ law is the price of pretending otherwise.

As spectraupdate views (the SPD-vs-sweep dichotomy and the span lesson priced in §7) and the probabilistic-CG explainer (what conditioning means to CG, and why the $c=1$ spectrum $\{1\times31,\,33\}$ costs two iterations, not thirty).

Everything above is machine-verified (python/experiments/dual_basis_checks.py, 39 checks, all PASS, deterministic, 0.04 s; every quoted number, curve, spectrum, and matrix exported to results/dual_basis.json, 117 KB; PCG right-hand side: standard normal, seed 2026, tol 10⁻¹⁰; reuses poisson.laplacian_1d and pcg.pcg): the four Gram/dual identities of §1 (≤ 2.4×10⁻¹⁵) with all 33 dipole solves (3.8×10⁻¹⁷); the continuum step form on all 33×32 entries (7.6×10⁻¹⁷) and the tent-difference identity (1.6×10⁻¹⁶); the $n=8$ Fraction block — $A\Sigma = I$, the closed form $(i-9\cdot\mathbf 1[i\ge e])/81$, $X^\top B_{\mathrm{inc}} = I_8$, and the $(A^{-1})_{3,6} = 1/81$ current bookkeeping — all with zero tolerance; Maxwell's unit-load assembly under random conductances (3.0×10⁻¹⁵) and Betti reciprocity (4.4×10⁻¹⁵); the grounded $\Pi$ story — symmetric, idempotent, spectrum {0×1, 1×32}, $I-\frac{1}{33}\mathbf{1}\mathbf{1}^\top$ exactly, leverage 32/33 with Foster sum 32, the $C_{33}$-through-ground reading, and the free-tree contrast $B_{\mathrm{full}}L_{\mathrm{full}}^+B_{\mathrm{full}}^\top = I_{33}$ (≤ 6.5×10⁻¹⁵); the $P_8$ gauge quartet (≤ 2.9×10⁻¹⁵); report 15's $\phi_i$ and $d_i^2$ closed forms (6.1×10⁻¹⁵) with the 1-iteration perfect whitener; the const-D invariance (1.2×10⁻¹³); the rank-one $c=1$ identity $M_1 = A - e_ne_n^\top/h^2$ with spectrum {1×31, 33}, PCG 2, Richardson ρ = 32 (2.1×10⁻¹³); the 201-point c-sweep with optima (0.915, κ 10.83) / (0.895, κ 9.68); the quantized-φ flavor (κ 12.38 → 1.024 over 1→8 bits, monotone); $B_{\mathrm{reg}}$ = tridiag(½,0,½) with ρ = cos(π/33) (1.1×10⁻¹⁶) and the Neumann rate fit equal to ln ρ; SPD of every truncated-walk $M_k^{-1}$ (min eig 2.1×10⁻⁶) and every clipped-response $M_w^{-1}$ (5.4×10⁻⁵ at w = 0); both bandwidth laws; the w = 31 recovery (κ = 1, PCG 1); the κ ∼ w⁻¹·⁹⁸ fit over w ∈ [1,16]; and the full flops/span ledger in report 11 §5.2's convention. The three widgets re-verify their baked data at load (green badges). Companion pages: 09 · stiffness as precision · 11 · regressions and multiscale · 12 · autoregressive preconditioning · 14 · the hierarchical inverse · 15 · preconditioning as prediction · the bridge explainer · the green tents · one update, four languages · the probabilistic-CG explainer.