Qr decomposition method

tl;dr what is the method used for QR decomposition? Is it Gram Schmidt?

Given a matrix M we perform Q, R = torch.qr(M).

Initially I assumed Q’s columns are achieved by applying the Gram-Schmidt procedure on M’s columns.

But then I noticed that even fro cases in which M’s columns are linearly dependent - Q’s columns still turn up othonormal (even for cases where Q’s and M’s dimension are equal). This means that span(Q) is not equal to span(M)

Since this indicates the method is not Gram Schmidt, I am curious about which method you use for the torch.qr() function

Thanks, Jonathan

The qr call eventually dispatches to magma or lapack, which provide some information about their implementation.

Let me know, if that answers your question. :slight_smile: