500 random symmetric orderings of a regularised saddle-point matrix, and what each factorisation reproduces
At its defaults it draws 500 random symmetric orderings of a regularised saddle-point matrix, and what each factorisation reproduces. A quasi-definite matrix — H + δI and −γI on its diagonal, A and its transpose off it, with δ = 10⁻⁶ and γ = 10⁻⁶ — has an LDLᵀ factorisation with diagonal D for every symmetric permutation, so the ordering can be chosen for fill with no numerical veto at all. That is the count: 500 of 500 orderings factorise here, against 69.0 per cent for the same matrix with the zero block left where the problem put it. Each bar counts the orderings whose factorisation left a relative residual ‖PKPᵀ − LDLᵀ‖/‖K‖ in that decade, with the tallest holding 136 of the 500. They span 1.56·10⁻¹⁶ to 1.02·10⁻⁷ — 9 orders — and the growth factor across them runs from 1 to 6.43·10⁵ — which is 0.643/γ, an inverse law in the zero block's perturbation that holds at every γ this figure is drawn at. Existence is not stability, and the theorem says only the first.
ordering-legality is one function in lib/figures/quasidef.js —
quasi-definite — every ordering legal, and the fill a symbolic phase can promise exactly. Everything below came out of it during this build, at
arguments taken from the essays rather than invented for this page. A figure here is the
figure a reader meets in an essay, and if the generator changes, this page changes with it.
At its defaults
Drawn even though every essay passes arguments — which on this site is every essay, at 100% of placements since the standard pass. A default nothing exercises is a trap for the next essay to call this with none, and this is the page where a default that has drifted from the figures around it becomes visible.
A quasi-definite matrix — H + δI and −γI on its diagonal, A and its transpose off it, with δ = 10⁻⁶ and γ = 10⁻⁶ — has an LDLᵀ factorisation with diagonal D for every symmetric permutation, so the ordering can be chosen for fill with no numerical veto at all. That is the count: 500 of 500 orderings factorise here, against 69.0 per cent for the same matrix with the zero block left where the problem put it. Each bar counts the orderings whose factorisation left a relative residual ‖PKPᵀ − LDLᵀ‖/‖K‖ in that decade, with the tallest holding 136 of the 500. They span 1.56·10⁻¹⁶ to 1.02·10⁻⁷ — 9 orders — and the growth factor across them runs from 1 to 6.43·10⁵ — which is 0.643/γ, an inverse law in the zero block's perturbation that holds at every γ this figure is drawn at. Existence is not stability, and the theorem says only the first.
show: "certificate"
The arguments are the ones A shift that certifies a saddle passes. A value nobody placed would be a picture no essay asked for and no claim was ever checked against.
The number of positive pivots in the natural-order factorisation of the saddle-point matrix with H + δI and −10⁻⁸I in its blocks, against δ from 0 to 7, for a constrained minimum (reduced curvatures 0.1 to 5) and a saddle on the same constraint (one reduced curvature −1). The minimum's true count is 10 and it is read correctly at every δ. The saddle's true count is 9; it is read correctly below δ = 1 and as 10, a minimum's, from δ = 1.05 on. The quasi-definite guarantee needs δ past −λmin(H): 4.67 for the minimum and 5.08 for the saddle.
hessian: "indefinite", delta: 1e-8, gamma: 1e-8, trials: 300
The arguments are the ones A shift that certifies a saddle passes. A value nobody placed would be a picture no essay asked for and no claim was ever checked against.
The saddle-point matrix with H + δI and −γI on its diagonal and A and its transpose off it, with δ = 10⁻⁸ and γ = 10⁻⁸, on a Hessian with four negative eigenvalues. H + δI is not positive definite, so the matrix is not quasi-definite and no theorem promises a factorisation under every ordering; 300 of 300 orderings factorise here anyway, against 67.0 per cent with the zero block left at zero. Each bar counts the orderings whose factorisation left a relative residual ‖PKPᵀ − LDLᵀ‖/‖K‖ in that decade, with the tallest holding 84 of the 300. They span 3.19·10⁻¹⁶ to 0.00359 — 13 orders — and the growth factor across them runs from 3.04 to 1.131·10⁷.
show: "indefinite-refine", negatives: 0, delta: 5
The arguments are the ones A shift that certifies a saddle passes. A value nobody placed would be a picture no essay asked for and no claim was ever checked against.
The relative error after each step of iterative refinement on the minimum, the residual formed with K and the correction solved with the factorisation of the matrix with H + 5I, on a logarithmic axis. Its pivot signs report 10 positive against a true 10. The error falls by 0.9804 a step between steps 100 and 300; the largest |δ/(μ + δ)| over the reduced curvatures μ predicts 0.9804, drawn dashed. After 300 steps the error is 0.00214.
show: "indefinite-refine", negatives: 1, delta: 5
The arguments are the ones A shift that certifies a saddle passes. A value nobody placed would be a picture no essay asked for and no claim was ever checked against.
The relative error after each step of iterative refinement on the saddle, the residual formed with K and the correction solved with the factorisation of the matrix with H + 5I, on a logarithmic axis. Its pivot signs report 10 positive against a true 9. The error grows by 1.2500 a step between steps 50 and 90; the largest |δ/(μ + δ)| over the reduced curvatures μ predicts 1.2500, drawn dashed. After 90 steps the error is 1.36·10⁸.
show: "indefinite-refine", negatives: 1, delta: 0.45, steps: 60
The arguments are the ones A shift that certifies a saddle passes. A value nobody placed would be a picture no essay asked for and no claim was ever checked against.
The relative error after each step of iterative refinement on the saddle, the residual formed with K and the correction solved with the factorisation of the matrix with H + 0.45I, on a logarithmic axis. Its pivot signs report 9 positive against a true 9. The error falls by 0.8182 a step between steps 20 and 60; the largest |δ/(μ + δ)| over the reduced curvatures μ predicts 0.8182, drawn dashed. After 60 steps the error is 6.22·10⁻⁶.
What it checked while drawing
Every figure above checked its own claims on the way to being drawn, and a claim that failed
would have stopped the picture rather than shipped a wrong one. Those checks used to leave
no trace at all: a passing one returned true and the only evidence the figure had
checked anything was that nothing crashed. The list below is what they actually said, collected
by running this generator with an observer installed — not a description of
what it is believed to check.
211 distinct claims across 6 sets of arguments, grouped below by shape — because most of them are one sentence with a different number in it, and how many separate times that sentence was put to the test is the informative part.
the minimum's count is right at δ = 0 — checked 141 times
and refinement grows at δ/(δ + μ) at μ = -0.01 — checked 7 times
the count reports a minimum on the saddle of curvature -0.01 — checked 7 times
and the worst growth is the same constant over γ at 1e-10 — checked 5 times
every sampled ordering factorises at γ = 1e-10 — checked 5 times
growing eigenvalue 1 is δ/(μ + δ), to the γ that regularises the constraint block — checked 2 times
a block of the regularised matrix
a constrained problem with a null space to have curvature in
a constraint no larger than the problem
a finite double, since an infinity is not a rational
a Hessian this figure builds
a minimum or a saddle with one negative curvature
a negative curvature for the negative directions
a negative curvature for the saddle's direction
a pair of curvatures the sweep measures
a perturbation a block can carry
a pivot rule this routine implements
a refinement run the figure can draw
a regularisation small enough to be one
a saddle depth the sweep measures
a saddle: a negative reduced curvature
a set of modes to hide
a share the dial draws
a shift the construction's curvatures are drawn against
a trial count the figure can afford
a view of the regularised saddle-point matrix this figure draws
and at 10⁻⁴ they remove both
and stays there
and the unregularised matrix breaks down on some of them
and the worst growth factor is a constant over γ
and with γ = 0 a third of the orderings break down
and δ's is below the reciprocal of the reduced Hessian's
at 10⁻² fifty steps remove δ and do not remove γ
every ordering factorises the quasi-definite matrix
fewer constraints than unknowns, so something is left to minimise
fewer negative reduced curvatures than null-space directions
Jacobi needs a symmetric matrix
LU is for square matrices
matmul shapes agree
refinement settles at the rate the block's floor predicts
refinement settles at the rate the reduced curvatures predict
the direction found has curvature μ₁
the natural order factorises the regularised matrix
the saddle's count turns into a minimum's where δ passes its curvature
the two growing eigenvalues are real and distinct
two negative curvatures, the faster first
while on the minimum it contracts
while the worst growth does not move with δ
with the best and worst orderings far apart in residual
γ's price is the reciprocal of the dual Schur floor
Against the rule
It draws a decomposition and prints its residual. It calls
permutationTrial,
and every figure above carries the badge — which residualcheck verifies by looking
for it in the emitted SVG rather than by finding the call that builds one. A badge that is
constructed and then left out of the body is the failure that check exists for.
Across the library: the rule bites on 217
of 397 generators —
199 print a residual and
18 are exempt with a published reason;
180 factorise nothing.
Read from lib/residual-rule.js, which is the same body the gate enforces from,
and the gate's last check fails the build if this page and it disagree about any generator.
Where it is called
Changing this generator changes every figure on this list. That is what makes the list worth publishing rather than keeping in a check script.
A shift that certifies a saddle
On a constrained problem whose Hessian has four negative eigenvalues, a saddle-point matrix is quasi-definite only once H + δI is positive definite — past δ = 5.08 here. Its pivot signs then count the curvature of ZᵀHZ + δI rather than of ZᵀHZ, so a saddle with a negative curvature of −1 is certified a minimum from δ = 1.05 on, and every saddle shallower than δ goes the same way. Iterative refinement against the unregularised matrix keeps the second-order test the count gave up: it contracts on the minimum at δ/(μ + δ), 0.980 a step at δ = 5, and on the saddle it grows at exactly 1.25.
The matrix a constraint makesOne hyperplane hides nothing
Iterative refinement against a saddle-point matrix gives its verdict when the growing direction overtakes the minimum's slowest decay, and a right-hand side with that direction removed delays it by a fixed number of steps a decade. With two negative curvatures, the prediction was that hiding both is paid for by the faster, and that hiding only the faster leaves the slower one's race to run. The first half holds to half a per cent on three pairs, and to one and a half on two whose curvatures differ by a factor of two and of 1.2. The second does not: hiding either direction alone moves the verdict by a fixed handful of steps, the same at two decades as at sixteen, because the direction left in view is already growing. Only the intersection of the two hyperplanes hides anything — and it hides less than either curvature can alone, 1,127 steps at worst against 2,907, with random right-hand sides' slowest at 79 against 417.
The matrix a constraint makesThe perturbation that does the work
A saddle-point matrix made quasi-definite is perturbed in both blocks, and the laws measured for it moved both together. Moved apart, the laws all belong to one block. The zero block's perturbation γ decides whether every ordering factorises, sets the worst ordering's growth at 0.51/γ, and costs the answer 1,451 per unit — the reciprocal of the smallest eigenvalue of AH⁻¹Aᵀ to three figures. The perturbation of H moves none of the first two and costs 19 per unit. Refinement removes each block's perturbation at the rate its own Schur complement sets, so γ's limit sits fifty times nearer than δ's.
The matrix a constraint makesThe regularisation that legalises every order
Perturb a saddle-point matrix's two blocks in opposite directions and it acquires a factorisation with a diagonal D under every symmetric permutation — not under a good one, under all of them. Five hundred random orderings, five hundred successes, and a growth factor that spans six orders across them.
The matrix a constraint makesThe residual turns before the error doubles
Regularise a saddle-point matrix past the Hessian's most negative eigenvalue and its pivot signs certify every shallow saddle as a minimum; refinement against the unregularised matrix keeps the test, as a rate, and a saddle at a hundredth of the regularisation grows by only 1.0014 a step — 485 steps to double. That was read as hundreds of steps before the history says anything. The residual, which is what a solver actually has, says it at step 62: a fit of its logarithm over the last ten steps turns positive there and stays positive, while the minimum's is negative from step 10. Across five regularisations the verdict comes at an eighth of the doubling time.
The matrix a constraint makesThe right-hand side that hides the saddle
Refinement against an unregularised saddle-point matrix gives the second-order verdict the pivot signs cannot, from step 62 on the shallowest saddle — for one right-hand side. The verdict depends on how much of the growing direction the right-hand side contains, and it can contain none. Each decade removed delays the verdict by a fixed number of steps, 147 on the shallowest saddle, set by the growth against the minimum's slowest contraction rather than by the growth alone, which predicted 1,611. Rounding stops the hiding at about 2,700 steps — but by then refinement has solved the system to a residual of 2.6 times ten to the minus thirteen, and any stopping test has already accepted it. A random kick to the starting point costs nothing and finds it.