Skip to main content
Search IntMath
Close

Inverse of a Matrix using Gauss-Jordan Elimination

by M. Bourne

In this section we see how Gauss-Jordan Elimination works using examples.

You can re-load this page as many times as you like and get a new set of numbers each time. You can also choose a different size matrix (at the bottom of the page).

(If you need some background first, go back to the Introduction to Matrices).

Choose the matrix size you are interested in and then click the button.

Matrix A:

2×2 matrix
3×3 matrix
4×4 matrix
5×5 matrix

The randomly-generated example appears below.

Phone users

mobile phone

NOTE: If you're on a phone, you can scroll any wide matrices on this page to the right or left to see the whole expression.

Example (3 × 3)

Find the inverse of the matrix A using Gauss-Jordan elimination.

A =   11 9 3  
10 12 13
7 14 15

Our Procedure

We write matrix A on the left and the Identity matrix I on its right separated with a dotted line, as follows. The result is called an augmented matrix.

We include row numbers to make it clearer.

  11 9 3
10 12 13
7 14 15
1 0 0   Row[1]
0 1 0 Row[2]
0 0 1 Row[3]

Next we do several row operations on the 2 matrices and our aim is to end up with the identity matrix on the left, like this:

  1 0 0
0 1 0
0 0 1
? ? ?   Row[1]
? ? ? Row[2]
? ? ? Row[3]

(Technically, we are reducing matrix A to reduced row echelon form, also called row canonical form).

The resulting matrix on the right will be the inverse matrix of A.

Our row operations procedure is as follows:

  1. We get a "1" in the top left corner by dividing the first row
  2. Then we get "0" in the rest of the first column
  3. Then we need to get "1" in the second row, second column
  4. Then we make all the other entries in the second column "0".

We keep going like this until we are left with the identity matrix on the left.

Let's now go ahead and find the inverse.

Solution

We start with:

  11 9 3
10 12 13
7 14 15
1 0 0   Row[1]
0 1 0 Row[2]
0 0 1 Row[3]

New Row [1]

Divide Row [1] by 11 (to give us a "1" in the desired position):

This gives us:

  1 0.8182 0.2727
10 12 13
7 14 15
0.0909 0 0   Row[1]
0 1 0 Row[2]
0 0 1 Row[3]

New Row [2]

Row[2] − 10 × Row[1] (to give us 0 in the desired position):

10 − 10 × 1 = 0
12 − 10 × 0.8182 = 3.8182
13 − 10 × 0.2727 = 10.273
0 − 10 × 0.0909 = -0.9091
1 − 10 × 0 = 1
0 − 10 × 0 = 0

This gives us our new Row [2]:

  1 0.8182 0.2727
0 3.8182 10.273
7 14 15
0.0909 0 0   Row[1]
-0.9091 1 0 Row[2]
0 0 1 Row[3]

New Row [3]

Row[3] − 7 × Row[1] (to give us 0 in the desired position):

7 − 7 × 1 = 0
14 − 7 × 0.8182 = 8.2727
15 − 7 × 0.2727 = 13.091
0 − 7 × 0.0909 = -0.6364
0 − 7 × 0 = 0
1 − 7 × 0 = 1

This gives us our new Row [3]:

  1 0.8182 0.2727
0 3.8182 10.273
0 8.2727 13.091
0.0909 0 0   Row[1]
-0.9091 1 0 Row[2]
-0.6364 0 1 Row[3]

New Row [2]

Divide Row [2] by 3.8182 (to give us a "1" in the desired position):

This gives us:

  1 0.8182 0.2727
0 1 2.6905
0 8.2727 13.091
0.0909 0 0   Row[1]
-0.2381 0.2619 0 Row[2]
-0.6364 0 1 Row[3]

New Row [1]

Row[1] − 0.8182 × Row[2] (to give us 0 in the desired position):

1 − 0.8182 × 0 = 1
0.8182 − 0.8182 × 1 = 0
0.2727 − 0.8182 × 2.6905 = -1.9286
0.0909 − 0.8182 × -0.2381 = 0.2857
0 − 0.8182 × 0.2619 = -0.2143
0 − 0.8182 × 0 = 0

This gives us our new Row [1]:

  1 0 -1.9286
0 1 2.6905
0 8.2727 13.091
0.2857 -0.2143 0   Row[1]
-0.2381 0.2619 0 Row[2]
-0.6364 0 1 Row[3]

New Row [3]

Row[3] − 8.2727 × Row[2] (to give us 0 in the desired position):

0 − 8.2727 × 0 = 0
8.2727 − 8.2727 × 1 = 0
13.091 − 8.2727 × 2.6905 = -9.1667
-0.6364 − 8.2727 × -0.2381 = 1.3333
0 − 8.2727 × 0.2619 = -2.1667
1 − 8.2727 × 0 = 1

This gives us our new Row [3]:

  1 0 -1.9286
0 1 2.6905
0 0 -9.1667
0.2857 -0.2143 0   Row[1]
-0.2381 0.2619 0 Row[2]
1.3333 -2.1667 1 Row[3]

New Row [3]

Divide Row [3] by -9.1667 (to give us a "1" in the desired position):

This gives us:

  1 0 -1.9286
0 1 2.6905
0 0 1
0.2857 -0.2143 0   Row[1]
-0.2381 0.2619 0 Row[2]
-0.1455 0.2364 -0.1091 Row[3]

New Row [1]

Row[1] − -1.9286 × Row[3] (to give us 0 in the desired position):

1 − -1.9286 × 0 = 1
0 − -1.9286 × 0 = 0
-1.9286 − -1.9286 × 1 = 0
0.2857 − -1.9286 × -0.1455 = 0.0052
-0.2143 − -1.9286 × 0.2364 = 0.2416
0 − -1.9286 × -0.1091 = -0.2104

This gives us our new Row [1]:

  1 0 0
0 1 2.6905
0 0 1
0.0052 0.2416 -0.2104   Row[1]
-0.2381 0.2619 0 Row[2]
-0.1455 0.2364 -0.1091 Row[3]

New Row [2]

Row[2] − 2.6905 × Row[3] (to give us 0 in the desired position):

0 − 2.6905 × 0 = 0
1 − 2.6905 × 0 = 1
2.6905 − 2.6905 × 1 = 0
-0.2381 − 2.6905 × -0.1455 = 0.1532
0.2619 − 2.6905 × 0.2364 = -0.374
0 − 2.6905 × -0.1091 = 0.2935

This gives us our new Row [2]:

  1 0 0
0 1 0
0 0 1
0.0052 0.2416 -0.2104   Row[1]
0.1532 -0.374 0.2935 Row[2]
-0.1455 0.2364 -0.1091 Row[3]

We have achieved our goal of producing the Identity matrix on the left. So we can conclude the inverse of the matrix A is the right hand portion of the augmented matrix:

A−1 =   0.0052 0.2416 -0.2104  
0.1532 -0.374 0.2935
-0.1455 0.2364 -0.1091

Things to Note

  1. The above explanation shows all steps. A human can usually take a few shortcuts. Also, sometimes there is already a "1" or a "0" in the correct position, and in those cases, we would not need to do anything for that step.
  2. Always write down what you are doing in each step - it is very easy to get lost!
  3. I have shown results correct to 4 decimal place, but best possible accuracy was used throughout. Be aware that small errors from rounding will accumulate throughout the problem. Always use full calculator accuracy! (Make full use of your calculator's memory.)
  4. Very occasionally there are strange results because of the computer's internal representation of numbers. That is, it may store "1" as 0.999999999872.

See another?

You can go back up to the top of the page and choose another example.

Problem Solver

AI Math Calculator Reviews

This tool combines the power of mathematical computation engine that excels at solving mathematical formulas with the power of GPT large language models to parse and generate natural language. This creates math problem solver thats more accurate than ChatGPT, more flexible than a calculator, and faster answers than a human tutor. Learn More.

Tips, tricks, lessons, and tutoring to help reduce test anxiety and move to the top of the class.