pub trait QRSquareInto: Sized { type R; fn qr_square_into(self) -> Result<(Self, Self::R)>; }
QR decomposition for square matrix