Maintains a Cholesky factor of B_W for the current working set W.
The working set is kept linearly independent, so B_W stays positive definite and a plain Cholesky suffices; DAQP uses LDL^T so that it can represent the singular step, we instead detect it via the Schur complement and restructure the working set immediately (see DualQP).
Appending is the standard bordered update; deleting removes a row of L and rotates the resulting extra superdiagonal away with Givens rotations, which is O(|W|²) rather than a refactorisation.
Deleting row k of L (keeping every column) leaves an (nw-1) x nw matrix R with R R^t equal to B_W with row/column k struck out. R is lower triangular except for one extra superdiagonal below row k, which a sweep of Givens rotations on adjacent column pairs removes.
Given bcol = B[W, j] and beta = B[j,j], write lOut = L^{-1} bcol and return the Schur complement s = beta - lOut·lOut.
Given bcol = B[W, j] and beta = B[j,j], write lOut = L^{-1} bcol and return the Schur complement s = beta - lOut·lOut.
s is exactly the squared norm of the component of A_j orthogonal to the rows already in W, so s <= 0 means linear dependence. Nothing is mutated -- call commit to actually extend the factor.