Sparse Cholesky of Gram Matrix (SuiteSparse?)

No, still no Gram matrix required as I understand it. This is actually exercise 12.15 in Boyd’s VMLS book.

In particular, you can use the identity \Vert Ax - b \Vert^2 + c^Tx = \Vert Ax - b + f\Vert ^2 - \Vert f \Vert^2 + 2f^T b, where f is a solution to the underdetermined system 2A^T f = c. Since the latter terms are a constant, this is equivalent to minimizing the ordinary least-square problem \Vert Ax - b + f\Vert ^2. That is, you can do it in Julia with:

F = qr(A)

# You should really be able to do 
#     f = F' \ 0.5c
# to get a 2A'f = c solution, but this method isn't implemented yet
# for sparse matrices A.

F2 = qr(oftype(A, A'))
f = F2 \ 0.5c

x = F \ (b - f) 

and of course you can re-use the factorizations for additional b and c. (I filed #35421 for the missing qr(A)' \ c method.)

4 Likes