How statement and proof provenance work
The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.
- Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
- AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
- AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.
These labels describe origin, not correctness: citations and verification chips remain separate evidence.
Finite budget implicit shifted QR for bidiagonal singular values
Definition
Input the original , the successful output record of Householder bidiagonalization and its finite precision status for if and otherwise, a deflation tolerance , and a finite nonnegative integer sweep budget . The reduction record supplies the upper bidiagonal work matrix , dense accumulators , and ordered stored local transformation data. Initialize , the sweep accumulators to identities of order , empty ordered left/right transformation lists, an empty deflation record, a pass counter , and a sweep counter . Write the diagonal as and superdiagonal as , and set .
At the start of each pass, set , set to zero and append to the deflation record whenever . The corresponding additive matrix change has entry at and zero elsewhere. Record any later non-target sparsity cleanup the same way with its row, column, and old value. The zero entries split the active blocks. If every active block has size one, stop with converged. Otherwise process the active blocks in increasing order of , skipping singleton blocks. Before each block sweep, if , stop with budget-exhausted; otherwise form only the tridiagonal entries of on that block: and . Choose to be the eigenvalue of the trailing Hermitian block closest to , resolving a tie by the smaller eigenvalue. If the leading pivot is zero or has magnitude at most , use the zero-shift branch and choose the initial right Givens factor so that , avoiding division by the small or zero diagonal.
Finite-precision shift and comparison schedule. The preceding exact-arithmetic formulas retain their exact meaning. For finite precision use the scalar order, six-real-operation complex product, scaled real-component norm, and first-failing-primitive range policy of Scaled real and complex Householder and Givens update arithmetic also for the following stages. All assignments below are stored; do not fuse operations. Comparisons, maxima, copies, conjugations, sign changes, and real absolute values are exact operations on stored finite values. Evaluate each complex magnitude by that helper's scaled two-component norm, with zero magnitude returned exactly as zero. At each pass visit deflation indices increasingly; at index evaluate , , in that order, then and , and deflate exactly when .
For each nonsingleton block, form its Gram diagonal entries in increasing index order, followed by its upper off-diagonal entries in increasing index order. To form , square separately with rounding, add the first two rounded squares, add the last two, and add these two rounded sums, rounding each addition. Form by the helper's complex product for and copy its conjugate to the lower off-diagonal. No other Gram entries are formed. Write the stored trailing block as . In this order compute , , and by the helper's scaled norm on the ordered four-real-component list , corresponding to the complex vector , returning exact zero for the zero list. Then compute , , , and . Choose if and otherwise. In exact arithmetic these are the two Hermitian eigenvalues and the stated nearest-eigenvalue/tie rule; in finite precision they specify the shift estimates without asserting their accuracy.
Next evaluate , , and in that order and form . Use the zero-shift branch exactly when or . In the ordinary branch form the first shift-vector entry as and use the stored lower Gram entry as its second entry. If any of these primitives fails the helper's normal-range/finite-value requirements, return the existing range-failure record immediately, before any sweep transformation for that block. This rule permits range failure in shift formation and makes no unconditional progress claim. For or only singleton active blocks none of the block stages is requested.
In the ordinary branch choose the first right Givens factor so that , where . In either branch, apply , update columns of by right multiplication by this same stored rotation, and append its exact unitary representative to the right list. For , choose a left Givens factor so that ; apply it to rows , update columns of by right multiplication by this same stored rotation, and append its exact unitary representative to the left list. If , choose a right Givens factor so that ; apply it to columns , update the corresponding columns of by right multiplication by this same stored rotation, and append its exact unitary representative to the right list. Continue until the bulge reaches the active block endpoint. A zero annihilation vector uses the identity rotation. In finite precision each Givens formation/update uses Scaled real and complex Householder and Givens update arithmetic, conjugate-transposed as needed for the stated left/right orientation; accumulator multiplications use the same stored local data but omit all target-zero writes. The dense accumulator multiplications follow the operationwise arithmetic model, while the ordered lists retain the exact unitary representatives used in analysis. Target zero writes to are included in their local error bounds. The initial shift-vector rotation does not zero an unrelated entry of . Each Givens factor is chosen using Real Givens rotations and complex Givens transformations and its annihilation guarantee in Householder reflectors and Givens transformations are unitary and can annihilate prescribed entries.
After each processed block, increment by one. Once all current active blocks have been processed, start a new pass. If any operation, norm or pivot is invalid or nonfinite, or a nonzero exact intermediate is outside the normal range, return range-failure with the partial , accumulators, transformation lists, deflation record, and available residual reports. On budget-exhausted, return the current , accumulators, transformation lists, deflation record, triplet residuals, and orthogonality residuals. On converged, set and return it with both dense accumulators, both transformation lists, the deflation record, triplet/orthogonality residuals, and its tall embedding .
For every exit other than range-failure, let be the current work matrix, and let . Obtain each candidate value as by the scaled two-component modulus evaluation (real absolute value is exact). On converged, the active-block condition makes diagonal; after budget-exhausted, the diagonal values are estimates only and carry no accuracy claim.
Let . In exact arithmetic the tall-orientation accumulated factors are and . In finite precision form each dense product by row-by-column multiplication, with six-real-operation complex products and sequential componentwise rounded additions under the operationwise model; return range-failure if any required intermediate is invalid, nonfinite, or outside the normal range. Their exact theoretical factors are the products represented by the ordered local transformation lists together with the bidiagonal-reduction lists. If , set and ; for each nonzero , multiply column of by in exact arithmetic, using componentwise division by the successful scaled modulus readout in finite precision. If , set and ; in this wide orientation multiply column of by instead. Sort the candidate values in nonincreasing order, breaking ties by their original diagonal index, and permute the corresponding columns of the returned triplet vectors in the same way; leave and the transformation lists in their algorithmic order. For every candidate triplet , report and . Also report and . The reports expose finite-budget and rounding behavior; they do not certify convergence by themselves. Matrix residuals use the Frobenius norm defined in The Frobenius norm on real or complex matrices. Any additional sparsity cleanup is recorded separately in the deflation record with its discarded-entry perturbation.
Depends on
- Scaled real and complex Householder and Givens update arithmetic
- Householder bidiagonalization and its finite precision status
- Real Givens rotations and complex Givens transformations
- Householder reflectors and Givens transformations are unitary and can annihilate prescribed entries
- The Frobenius norm $\lVert A\rVert_F=(\sum_{i,j}|a_{ij}|^2)^{1/2}$ on real or complex matrices
- Exact unitary equivalence of Householder bidiagonalization
Used by
- Finite-sample AAA rational approximation with exact SVD Algorithm
- Rank-thresholded least squares by the singular value decomposition Algorithm
- Computed singular-value error is bounded by backward perturbation plus readout error Corollary
- AAA recovers a scalar transfer-function pole from four samples Example
- Bulge chase preserves bidiagonal singular values Lemma
- Local stable reflectors and rotations give an aggregate SVD backward error Theorem
Dependency tree · two levels
14 results within two dependency steps of this one, each drawn at its shortest distance from it. An arrow runs from a result to what uses it, so the chart reads left to right and ends at this result, which carries a heavier outline. Every node is a link to that result. Click elsewhere on the chart to enlarge it.
Sources
- Wen-Wei Lin, Lecture Notes of Matrix Computations, §6.3 (standard reference, not scraped)
- James Demmel and W. Kahan, Accurate Singular Values of Bidiagonal Matrices, §§2–5 (standard reference, not scraped)