function dgetrf input Real[:, :] A; output Real[size(A, 1), size(A, 2)] LU = A; output Integer[min(size(A, 1), size(A, 2))] pivots; output Integer info; end dgetrf;