What is taught, and what the arithmetic does instead

True of the algebra, false of the arithmetic

A theorem, correctly stated and correctly derived, that the machine does not obey. Nothing is wrong with the mathematics and nothing is wrong with the hardware; the identity holds over the reals and the computation is not over the reals. This is the category this site exists for, and it is the largest one here.

36 claims

Every verdict

“Gram–Schmidt produces an orthonormal basis for the column space.”

It does, over the reals, and the derivation is three lines. On H₈ the classical process returns a Q with an off-diagonal inner product of 1.0 — two computed basis vectors that are parallel — while every column is still a unit vector to 10⁻¹². Orthogonality is lost like κ² classically and like κ in the modified order; the same algebra written in a different sequence, and eight decades between them.

Tested in Two Gram–Schmidts · the Gram–Schmidt series · refused by the orthogonality check

“Replacing λ by γμ is an exact change of variable, so it cannot change the answer — the two problems have the same eigenvalues up to a factor of γ and any solver will return the same digits.”

The same overdamped chain is solved before and after the substitution and both are compared against the closed form. The claim that the forward error is unchanged is fed the pair and fails: 7.5·10⁻¹⁴ becomes 1.3·10⁻³, and the substitution is exact in both directions at every stop.

Tested in The scaling that buys ten orders · the polynomial scaling series · refused by an exact change of variable that costs eleven orders

“Adding a small number to a running total moves the total.”

Below the spacing of the total it does not arrive at all, and it does not arrive again for every subsequent term of the same size — which is how a sum of a million equal terms stops growing before it is half computed. The refusal is fed a sum that has stagnated and required to report that the addend was lost.

Tested in The order they are added in · the summation series · refused by the claim that a small addend always arrives

“Reassociating a floating-point computation changes its answer, so a reordering has to be paid for in accuracy.”

It has to be paid for whenever the operation being reassociated amplifies. An orthogonal transformation does not amplify — that is what orthogonal means — and a product of orthogonal transformations is orthogonal however it is bracketed. Measured on a 512×12 matrix at κ = 7,151: the tree at depths 1, 2, 3 and 4 returns 3.38, 4.26, 1.65 and 1.48·10⁻¹⁵, which does not grow with the depth. Classical Gram–Schmidt, whose steps are not orthogonal, returns 4.6·10⁻¹⁰ on the same matrix.

Tested in A reduction that changes the order · the communication series · refused by a reduction tree with under-determined leaves

“Use partial pivoting and Gaussian elimination is stable.”

The same 2×2 is solved before and after its first row is multiplied by 1/ε. Partial pivoting makes one interchange on the first and none on the second, and its forward error goes from 0 to 1. The refusal is fed the claim that it makes the same choices on both, and required to fail.

Tested in The pivot that reads the units · the pivoting series · refused by partial pivoting claimed to be invariant under a row scaling

“The moment basis and an orthogonalised basis span the same subspace, so the interpolation conditions are identical and the choice between them is about numerical hygiene rather than about what can be computed.”

Eight moments taken at one point reach κ₂ = 7.7·10⁹, multiplying by about 66 per vector at the far end of the range, while the same eight solves spent at eight spread points and orthogonalised as they are built stay at 1.0. The subspaces agree in exact arithmetic; only one of the two admits a projection.

Tested in A basis that is the same subspace and not the same thing · the moment matching series · refused by the condition number of eight moments at a single interpolation point

“Projecting an ill-posed problem onto a small Krylov subspace makes it a small well-conditioned problem, which is why the iteration regularises.”

The projected condition number climbs from 1.38 at two steps to 7.8·10⁶ at forty-eight. The refusal is fed the claim that it stays under 10⁴ at forty-eight steps and required to fail.

Tested in The step that stops mattering · the iterative regularisation series · refused by a projected problem claimed to be well conditioned because it is small

“Every square matrix is orthogonally similar to a triangular one.”

Over the complex numbers, yes — that is Schur's theorem. Over the reals, an orthogonal similarity cannot separate a conjugate pair, and the reachable form carries one 2×2 block per pair. Checked at four prescribed spectra: exactly one block per pair every time, and a real spectrum does come out genuinely triangular. The surviving subdiagonal entry is 2.0 against a matrix norm of 5.8 — the size of the matrix, not of a tolerance.

Tested in The form a real matrix can reach · the real schur series · refused by triangular form claimed for a real matrix with a conjugate pair

“Two formats with the same number of significand bits have the same precision, so the same computation gives the same answer.”

They have the same unit roundoff and their largest finite numbers are 33 decades apart. The naive norm of a vector of sixteen 1,000s is an infinity in fp16 and 4,000 in tf32, at identical precision — and bfloat16, the least precise of the three, returns 3,968. This site reported fp16 and tf32 as one format for two phases, because its arithmetic modelled the significand alone.

Tested in The other half of a format · the floating point series · refused by fp16 and tf32 treated as one format because their mantissas match

“A symmetry of the problem is a symmetry of the computed answer — if the eigenvalues come in reciprocal pairs then the numbers a solver returns come in reciprocal pairs.”

A palindromic quadratic whose spectrum spans twenty decades is solved by a general eigensolver, and the computed set is tested for closure under λ ↦ 1/λ. The claim fails: the departure is 1.0·10⁻⁷, and it is exactly the error in the small eigenvalues.

Tested in A spectrum that comes in reciprocal pairs · the structured spectrum series · refused by an exact reciprocal pairing from an unstructured solver

“There is one condition number of a matrix, and κ(A) = ‖A‖‖A⁻¹‖ is it.”

Two condition numbers of the same matrix are computed and one is invariant under a row scaling to fourteen digits while the other moves by seven orders. The refusal is fed the claim that the componentwise number notices the scaling, and required to fail.

Tested in A condition number scaling cannot move · the scaling series · refused by the componentwise condition number claimed to move with the units

“Cramer's rule solves a linear system. It is closed form, it is exact, and for small systems it is the obvious thing to write.”

Forty thousand 2×2 systems with nearly parallel rows, at 24 bits. Elimination's normwise backward error never exceeds 1.3 units of roundoff; Cramer's reaches 458. The refusal is fed the claim that Cramer's rule returns the exact answer to a nearby problem, and required to fail.

Tested in A rule that is correct and unusable · the determinant series · refused by Cramer's rule offered as a numerically sound way to solve a system

“A shift accelerates the QR iteration, so a good shift is enough.”

A real single shift cannot converge onto a complex conjugate pair at all — there is no real number to shift towards. The double shift is not a faster single shift; it is the construction that makes the problem addressable in real arithmetic, and it is performed without ever forming the complex matrix it is derived from. The implicit step and the explicitly formed product agree to 2.2·10⁻¹⁵ entry by entry in absolute value.

Tested in Two shifts that are never formed · the francis series · refused by convergence claimed for the single-shift algorithm on a conjugate pair

“The filter-factor identity is a theorem about the iterate, so the measured and predicted factors agree at whatever step the method is best at.”

The identity is exact over the reals at every step and the recurrence is not run over the reals. Asked for the filter at step 30 — past the step the Lanczos basis loses orthogonality at — the figure's own agreement assertion is required to fail, and it does.

Tested in An expiry date the noise does not move · the iterative regularisation series · refused by the filter identity drawn past the step orthogonality is lost at

“If x − y computes to zero then x and y are the same number.”

With gradual underflow it is true, and it is one of the reasons subnormals exist. With flush-to-zero it fails on ten of ten distinct neighbouring pairs immediately above fp16's smallest normal: the difference is representable only as a subnormal, the subnormal is flushed, and the test for equality returns true for two different numbers.

Tested in The numbers below the smallest one · the subnormals series · refused by flush-to-zero treated as leaving subtraction faithful

“The Galerkin coarse operator RAP is the discretisation of the same problem on the coarser grid.”

This site asserted it, and still does — in one dimension it holds to a relative difference of exactly zero at every level of a six-level hierarchy. In two, a five-point operator produces a nine-point coarse one, with four diagonal couplings carrying a sixth of the row, so every level below the first solves a different discretisation. The method converges at 0.20 a cycle regardless, which is the interesting half.

Tested in The coarse problem is a different problem · the multigrid series · refused by the one-dimensional Galerkin identity carried into two dimensions

“A reduced model that matches the transfer function of a stable system at r points is a model of that system.”

Four of nineteen shift placements return a model with a pole at up to +24.1 from a system whose rightmost eigenvalue is −3.49, and every one of those models interpolates to 1.3·10⁻¹⁴. The refusal is the other half: fed the claim that every placement destabilises, the assertion must reject, because most do not.

Tested in A model that cannot be run · the reduced stability series · refused by the claim that interpolation always loses stability

“An even power is non-negative, so a computed even power can be compared with zero.”

(x − 1)⁶ expanded and evaluated by Horner at 401 points within 10⁻³ of 1 is negative at 179 of them. Away from the root it is not: the refusal is fed the assertion that a sixth power evaluates negative over a window of width 1 and must reject it, which locates the failure in the neighbourhood rather than in the polynomial.

Tested in A square that evaluates negative · the fma contraction series · refused by the claim that the fusion matters away from a cancellation

“The basis a polynomial is fitted in changes its coefficients but not the fitted curve, so any basis will do when only the curve is wanted.”

On exact data at degree 40 the monomial and orthogonal-basis curves agree to 2.7·10⁻¹⁴ despite κ = 7.4·10¹⁴. With 0.1% noise at the same degree they differ by 1.7·10⁻⁵, within a factor of ten of κ·u·‖r‖ at every degree measured. The refusal is fed the claim that the two curves agree to rounding on noisy data and required to fail.

Tested in A basis built from the points · the fitting series · refused by a fitted curve claimed independent of the basis on noisy data

“A test that is performed correctly on a correctly computed number gives a correct verdict.”

Every matrix in a nine-by-eight grid is positive definite by construction. At twelve significand bits and below, conjugate gradients produces a direction of negative curvature on some of them — a proof of something false, from a comparison performed exactly as written on a number computed as accurately as the format allows. The refusal is fed the claim that the same happens at double precision over the same range of conditioning, where it does not.

Tested in Deciding that a zero has arrived · the deliberate zero series · refused by a false certificate of indefiniteness claimed at double precision

“Scaling a set of numbers by a power of two changes no value, so it changes no result.”

The scaling is exact and what it changes is which numbers share a block. Sorting the same values — which alters no value at all and no scale factor's exactness — takes the count of entries quantised to zero from 310 to 22. The order is not a presentational choice once one exponent is shared across a group.

Tested in One exponent for thirty-two numbers · the block formats series · refused by the claim that a block format is order-independent

“The higher moments of a contour integral cost one multiplication each, so raising K is free and the number of moments can be increased until the ceiling stops binding.”

Unscaled, ‖Aₚ‖ grows like ρᵖ, so the block Hankel of K moments is graded over ρ^2K. Measured: the unscaled matrix is 19.6 times worse conditioned than the scaled one at K = 3 and radius 6, 53.6 at K = 4, and 19,440 at K = 5 and radius 15. The arithmetic is free and the rank decision is not.

Tested in The conditioning that rises with the ceiling · the nonlinear eigenvalue series · refused by the condition number of the block Hankel at five moments on a contour of radius fifteen

“Interval arithmetic gives rigorous bounds, so carrying intervals through an algorithm gives a rigorous answer.”

It gives rigorous bounds and they become useless. Rotating an interval box by 45° twenty times — an isometry, so the true set does not change size at all — leaves an enclosure 1,024 times too wide, growing by exactly √2 a step: measured at 1.4142137 against √2 = 1.4142136. No rounding error is responsible for any of it and a higher precision does not touch it.

Tested in A bound that is proved · the interval series · refused by the claim that interval arithmetic can be carried through an algorithm

“Regularising the subproblems of an alternating fit removes the swamp, so a ridge is a repair with no cost on problems that do not have one.”

On a tensor built from three rank-one terms, a fit with a ridge of λ reaches a relative error of 9.73·10⁻¹¹, 9.71·10⁻⁷, 9.45·10⁻⁵, 9.74·10⁻⁴ and 9.66·10⁻³ at λ = 10⁻¹⁰, 10⁻⁶, 10⁻⁴, 10⁻³ and 10⁻² — the error is the ridge. The refusal is the other half: fed the claim that the ridge also moves the terms, the assertion must reject, because the congruence against the planted factors stays above 0.9997.

Tested in The repair that costs exactly itself · the alternating least squares series · refused by a ridge that is free

“QR with column pivoting is rank-revealing: the diagonal of R shows you where the rank is.”

On a 50×50 Kahan matrix at c = 0.5 the smallest diagonal entry of R is 2.3·10⁸ times σₘᵢₙ, with no interchange made anywhere. The refusal is fed the claim that the two agree within a factor of 100, and required to fail.

Tested in The cheap rank and what it cannot see · the rank series · refused by a pivoted diagonal read as the singular values

“The eigenvalues describe the matrix. Two matrices with the same spectrum behave the same way.”

A normal matrix and a bidiagonal one, both with every eigenvalue at 0.8, are perturbed by the same twenty matrices of norm 10⁻⁸. One set of eigenvalues moves by 10⁻⁸ and the other by 0.07. The refusal is fed the claim that their powers are comparable, and required to fail.

Tested in The eigenvalues that are not there · the Non-normality series · refused by a spectrum read as a description of a matrix

“f(A) = V f(Λ) V⁻¹. Diagonalise, apply f to the eigenvalues, undiagonalise — that is what a function of a matrix is.”

An upper bidiagonal matrix with eigenvalues 7·10⁻⁸ apart, whose eigenvalues are its diagonal and whose eigenvectors have a closed form. The route is handed both, exactly, and returns a matrix with a relative error of 5.5·10³⁷; the refusal is fed the claim that it is accurate, and required to fail.

Tested in A function of a matrix is not a function of its entries · the matrix function series · refused by the eigendecomposition offered as a method for a matrix function

“Scaling is an accuracy device: it improves the digits in an answer, so a code that does not care about the last few digits can skip it.”

The coefficients of a quadratic are formed at a change of units of 10¹⁰ in fp16 and every entry is rounded to the format. The claim that the problem can still be written down fails: γ²M is past 65504 and the entries are infinities, while the scaled coefficients are representable at every stop of the same sweep.

Tested in The units that overflow before the answer does · the overflow series · refused by a change of units past the format's largest number

“CGLS and LSQR are the same method, so the choice between them is a matter of taste.”

Both minimise the residual over the same Krylov space, so their iterates are equal in exact arithmetic. Reaching a relative error of 10⁻⁶ on a κ = 10¹⁰ problem costs 110 steps one way and 209 the other, at four seeds each.

Tested in One sequence and two recurrences · the krylov series · refused by the symmetric operator used as the non-normal test case

“The block-circulant preconditioner makes the conjugate gradient step count on a two-dimensional Toeplitz system independent of the correlation that makes the system ill-conditioned.”

On a 10 × 10 grid the separable kernel's preconditioned count is 18 at ρ = 0.5 and 18 at 0.98, while its unpreconditioned count goes from 43 to 178. The isotropic kernel with the same correlation along each axis goes from 17 to 36 preconditioned, rising at every step of ρ. The refusal is fed the claim that the isotropic kernel's preconditioned count moves by at most three across the same range, and required to fail.

Tested in The staircase a separable kernel builds · the toeplitz series · refused by the circulant preconditioner's step count read as independent of the correlation whatever the kernel

“Balanced truncation's a-priori bound, twice the sum of the discarded Hankel singular values, is attained on ordinary problems, so it can be read as a formula for the error.”

On the heat model the bound over the measured H∞ error is 1.0000 at every order. On twelve states of six oscillators at damping 0.1, it is 3.23, 4.53, 3.52, 4.47, 4.55, 1.75, 2.43, 3.16, 2.01 and 2.13 at orders 1 to 10, and 1.000 only at order 11, where one state is removed. The refusal is fed the claim that at damping 0.1 the bound is within five per cent of the error at every order, and required to fail.

Tested in A mode that rings is counted twice · the balanced truncation series · refused by the balanced-truncation bound read as attained on any stable system

“Streamline diffusion with ξ = coth(Pe) − 1/Pe makes the discrete solution exact at the nodes.”

At fifteen degrees to the grid the same scheme's worst nodal error is 3.2·10⁻², against 2.4·10⁻¹⁷ at zero. The refusal is fed the claim that it is below 10⁻¹⁰ there and required to fail.

Tested in Exact along one axis · the convection series · refused by nodal exactness claimed for a flow that is not along a grid line

“A method that has driven its residual to 10⁻¹² has produced an answer good to about 10⁻¹², so the reported residual is the accuracy achieved.”

The same preconditioned conjugate gradient solve with its working arithmetic at 24 significand bits stops with a relative residual of 1.10·10⁻¹³ and a relative error of 1.62·10⁻⁷. The assertion that the error is within a factor of ten of the residual is fed that run and required to fail.

Tested in The reading that never moves · the stopping test series · refused by a convergence test read as an accuracy guarantee

“A basis orthogonalised by modified Gram–Schmidt at every step stays orthogonal, so a Krylov method built on it can be run for as many steps as memory allows.”

A second-order Krylov basis is built to twenty vectors with the same modified Gram–Schmidt sweep the linearised one uses, and ‖QᵀQ − I‖ is measured. The claim fails: it is 1.35, orthogonality gone entirely, while the linearised basis on the same problem is at 2.4·10⁻¹³.

Tested in A Krylov space for a problem that is not linear · the krylov series · refused by an orthogonal second-order basis at twenty vectors

“Squaring is exact in the algebra, so taking more squarings than the smallest number that works cannot make the answer worse.”

The squaring count is swept from zero to fifteen on an 8×8 whose exponential is known in closed form, and the best value is taken. The assertion that the last value is no worse than the best is fed that sweep and must reject it: the best is 6.88·10⁻¹⁶ at s = 2 and the last is 3.16·10⁻¹² at s = 15, a factor of 4,593 paid for thirteen matrix products.

Tested in The error the method already knows · the matrix function series · refused by extra squarings claimed to be harmless

“Weighted Jacobi at ω = 2/3 damps the oscillatory half of the error by a factor of three.”

Exactly true of the Laplacian, where the smoothing factor is max(|1 − ω|, |1 − 2ω|) and is ⅓ at ω = 2/3, asserted here to 10⁻¹². On the central-difference convection operator at 63 points and ε = 0.005 the same sweep returns 1.0937 — above one, so the modes it is supposed to remove grow. The refusal is fed the claim that the two agree to 10⁻³ and requires it to fail.

Tested in A smoother that stops being one · the multigrid series · refused by the symmetric smoothing factor carried onto a non-symmetric operator