Concept

Null space basis — where it appears

A matrix Z whose columns span every vector a constraint matrix A sends to zero, so each solution of Ax = b is one particular solution plus Z times some vector. Every such Z describes the same space; they differ in conditioning, sparsity and the cost of building them.

Named by 5 essays across 2 fields — each of them below, with the objects they name alongside it.

κ(A) = 10⁶ throughout · κ(H) = 100 · the answer is the same answer for every basisorthonormal — κ(Z)1κ(ZᵀHZ)25.6relative error1.07·10⁻¹⁵first m basic — κ(Z)1.99·10⁸κ(ZᵀHZ)3.8·10¹⁶relative error0.0518pivoted basic — κ(Z)2.06κ(ZᵀHZ)31.9relative error6.71·10⁻¹⁶what the choice costsdensity, orthonormal1density, fundamental0.5κ(ZᵀHZ) ÷ κ(Z)², naive0.96error, pivoted choice6.7·10⁻¹⁶every one of them is a basisand one of them loses fourteen digits

The basis nobody chose on purpose

A method that eliminates a constraint has to pick a basis for its null space, and every basis is correct. Their condition numbers are eight orders apart, the reduced problem inherits the square, and the choice is usually made by a one-line rule nobody thought of as a numerical decision.

orthogonality · Null space basis
groundarcs of the treearcs off the treethe loop worst servedleast-resistanceκ(Z)11κ(ZᵀHZ)143κ, unit diagonal9.3nonzeros in Z426longest loop, arcs26worst path ÷ own arc0.97every tree gives a basis of whole numbersthe resistances decide which one to want

The tree the resistances choose

On a network every basic set is a spanning tree and every null-space basis is a set of loops with entries 0 and ±1, so no tree can make Z badly conditioned. The tree with the best-conditioned Z still gives loop equations 4.8 times worse than the tree of least resistance: the basis has to be chosen against the Hessian, and pivoting finds it only when it pivots on the resistances too.

orthogonality · Null space basis
10³10⁶10⁹10¹²10⁻¹⁶10⁻¹³10⁻¹⁰10⁻⁷10⁻⁴10⁻¹κ(A), identical for both problemsrelative error in the answerthe weak directions in the constraint's null spacethe weak directions in the constraint's own rowsone κ(A), two problemsκ(A), both10¹²κ left, constrained1κ left, free10¹²error, constrained4.7·10⁻¹⁶error, free3·10⁻⁴between them6.4·10¹¹a constraint is informationand κ(A) does not know it arrived

The condition number that does not know

Two constrained fits with the same size, the same number of constraints and the same κ(A) to twelve figures. One returns 4.7·10⁻¹⁶ and the other 3.0·10⁻⁴. What separates them is the conditioning of A restricted to the constraint's null space — 1.00 against 10¹² — which every solver computes on the way and none reports.

leastsquares · Constrained least squares
10¹10³10⁵10⁷10⁹10¹¹10⁻¹⁵10⁻¹²10⁻⁹10⁻⁶10⁻³1κ(A), the conditioning of the fitrelative error in the answerthe saddle-point route, in floating pointdashes: forming AᵀA, then solving exactlythe method of weighting, τ = 10⁸the null-space routethe reference was a methodκ(A)10¹¹κ of what is left4.9·10⁶null space1.9·10⁻⁹saddle point4.6·10⁻⁴forming AᵀA alone3.4·10⁻⁴weighting3·10⁻⁹the damage is in the formingand not in the solving

The reference was a method

The optimality conditions of a constrained fit contain AᵀA, so solving them is the road that squares the problem wearing a block structure. At κ(A) = 10¹¹ the route that never forms a cross-product returns 1.89·10⁻⁹ and the route that does returns 4.64·10⁻⁴ — and forming AᵀA and then solving it in exact rationals returns 3.45·10⁻⁴, so nearly all of the loss happens before any elimination begins.

leastsquares · Constrained least squares
00.250.50.7511.251.5110⁰.⁵10¹10¹.⁵10²10².⁵share of the least tree's extra factor work over breadth-firstconditioning over the least tree'sthe prediction's target812162432noneloop budget, arcsresistance bandsfive draws a point, mediansno tree in the corner

The budget cannot finish the tree

The least-resistance spanning tree makes a network's loop equations well conditioned and its loops long, and the long loops cost a direct solver up to twice the breadth-first tree's factor work. A tree that refused any arc whose loop would run past a budget — 24 arcs, twice the breadth-first tree's longest — was predicted to keep the conditioning within twice the least tree's and save a third of the extra work. It keeps the conditioning and saves nothing. Every budget that binds leaves parts of the network it cannot join, the arcs it refused are needed to finish the tree, and they close loops as long as the least tree's. Half the least tree's loops are already as short as the property behind its conditioning allows; the slack is in the other half, and a greedy budget cannot reach it.

orthogonality · Null space basis

Named alongside it

The objects these essays reach for when they reach for this one.

Condition numberQR factorisationSaddle-point systemsColumn pivotingEquality-constrained least squaresExact ground truthNull spaceNull space methodReduced hessianSpanning-treeSparsityBasis

All concepts