Consider a quadratic $n\times n$ Matrix $A$ and the general question "how to find the determinant $\det(A)$ when too lazy for a Laplace Expansion but lucky enough to get a singular value decomposition for free".

Why? Within the C++ library *Lapacke*, which I use, for all its power there is no determinant function. However, there is a multitude of state-of-the-art singular value decomposition tools *xgesvd(..)*. Hence we start out at

$$A=USV'$$

where $U,V$ are orthonormal and $S$ is a diagonal matrix which's diagonal is comprised of the singular values in descending order. Already the aim comes tantalizingly close:

$$\det(A)=\det(USV')=\det(U)\det(S)\det(V')=\pm\prod\limits\_{j\in n}s\_{j,j}$$

the "$\pm$" coming from the fact that it is unknown whether $\det(U)$ or $\det(V)$ are $+1$ or $-1$.

Hence the question: Is there a lazier way than a complete expansion to simply determine the sign of a determinant of ideally a general but at least an orthonormal matrix? Or of a broader frame of mind: Is there another simple Lapack-compatible way than my SVD approach?