How to prove that $\det(M) = (-1)^k \det(A) \det(B)?$ Let $\mathbf{A}$ and $\mathbf{B}$ be $k \times k$ matrices and $\mathbf{M}$ is the block matrix
$$\mathbf{M} = \begin{pmatrix}0 & \mathbf{B} \\ \mathbf{A} & 0\end{pmatrix}.$$
How to prove that $\det(\mathbf{M}) = (-1)^k \det(\mathbf{A}) \det(\mathbf{B})$?

Note that by performing $k$ columns swaps you can obtain the matrix 
$$\mathbf{M}^{'} = \begin{pmatrix}\mathbf{B} & 0 \\ 0 & \mathbf{A}\end{pmatrix}.$$
Obviously $det(\mathbf{M}^{'})=(-1)^kdet(\mathbf{M})$.
Now, performing elementary operations on rows (i.e. swithching two rows, multiplying selected row by a non-zero scalar, or adding to a selected row another one multiplyied by a scalar) of $\mathbf{M}^{'}$, reduce it to the form
$$\mathbf{M}^{''} = \begin{pmatrix}\mathbf{B}^{'} & 0 \\ 0 & \mathbf{A}^{'}\end{pmatrix},$$
where $\mathbf{B}^{'}$ and $\mathbf{A}^{'}$ are upper-triangular matrices. Note that $\mathbf{M}^{''}$ is upper-triangular itself with a diagonal $[b_1,\ldots,b_k,a_1\ldots,a_k]$. 
Obviously $det(\mathbf{M}^{'})=C_1C_1b_1\ldots b_k a_1\ldots a_k$ where $C_1$ is a number generated by the operations on the first $k$ rows, and $C_2$ is a number generated by the operations on the rows $k+1,\ldots k+k$. It is clear that $det(\mathbf{B})=C_1b_1\ldots b_k$ and $\det(\mathbf{A})=C_2a_1\ldots a_k$.
Thus $det(\mathbf{M})=(-1)^kC_1C_1b_1\ldots b_k a_1\ldots a_k=(-1)^kdet(\mathbf{A})det(\mathbf{B})$.
