solve.qr.Matrix(a, b, tol=0)
m <- sample(1:9, 1); n <- sample(1:9, 1) a <- Matrix( sample(-9:9, m*n, replace = T), nrow = m, ncol = n) b <- rnorm(m) z <- qr(a) # QR decomposition of a if (m > n) t(a) %*% (a %*% solve(a,b) - b) else a %*% solve(a,b) - b