Assume $A$ is a $n \times n$ Matrix with real valued elements. I would like to bring A into a (lower) triangular form. However, to do so I am only allowed to swap bases. Hence, I can only swap rows and columns together.
Q: Under which condition is this possible, and does somebody know of any algorithm to do so?
To give a picture, this is a valid operation: $$\left( \begin{array}{ccc} a & 0 & 0 \\ 0 & b & x \\ 0 & 0 & c \end{array} \right) \rightarrow \left( \begin{array}{ccc} a & 0 & 0 \\ 0 & c & 0 \\ 0 & x & b \end{array} \right) $$
However a matrix of the following form can not be brought to a triangular form under this conditions:
$$\left( \begin{array}{ccc} a & 0 & 0 \\ 0 & b & x_{2} \\ 0 & x_{1} & c \end{array} \right) \text{ or } \left( \begin{array}{ccc} a & 0 & 0 \\ x_{1} & c & x_{2} \\ x_{3} & x_{4} & b \end{array} \right) $$