Programmers and Teachers:
What is RREF?
Converting a matrix to RREF (reduced row echelon form) makes solutions to linear systems of equations simpler to find. Reduced row echelon form is also called row canonical form. RREF of a matrix follows these four rules:
1.) Rows that have one or more nonzero values have 1 as their first nonzero value.
2.) The first 1 in a row that is below another row with a 1 will be to the right of the first 1 in the row directly above it.
3.) Rows comprised of all zeros are at the bottom of the matrix.
4.) Any column that contains its row’s first 1 must have all zeros in the rest of the column.
Once a matrix is in this form, we can determine if the matrix has an inverse and then can actually compute the inverse of it at that point. Additionally, computer programs that solve systems of linear equations benefit massively from reduced row echelon form. Large systems of linear equations (matrices bigger than 2×2) can be solved by computer systems much faster if they are put into RREF before the computations are done.
RREF Matrix Examples
The following example matrices follow all four of the previously listed rules for reduced row echelon form.
Example matrix #1:
1 0 0
0 1 0
0 0 1
Example matrix #2:
1 0 -1 0
0 1 2 0
0 0 0 1
How the Calculator Works
When you click calculate, your matrix is fed to a Python-native computer algebra system (CAS), which rearranges it into RREF using symbolic operations. Being symbolic in nature, this calculator does not make numeric approximations when doing calculations. It follows similar steps to that of paper and pencil algebra to preserve an exact solution. The word “symbolic” comes from the numbers and letters being treated as symbols, rather than floating-point numbers.
The computer algebra system that powers the calculator takes the matrix through a series of elementary row operations. After some number of elementary row operations, all of the RREF rules are met and the matrix components are arranged into the correct format and sent back to this page in the form of LaTeX code. That code is then rendered by the MathJax display engine as your final RREF matrix.