Inverting a 2×2 matrix

Every textbook hands you the same recipe: minors, cofactors, transpose, divide by the determinant. It works, and it explains nothing. Here it runs live on a matrix you can drag, so you can watch each step move. A companion to The Matrix Mentor.

The transformation

Drag the î and ĵ handles, or type the numbers. Handles snap to ½ — hold Shift to move freely.

A =
column 1 is where î = (1,0) lands;
column 2 is where ĵ = (0,1) lands.

The recipe

Every matrix below updates as you drag. Hover (or tap) any cell to see exactly where that number came from; tap a second time to unpin.

A
delete row & column
minor
± checkerboard
cofactor
transpose
adj
× 1/D
A⁻¹

Why the minors look trivial here

A minor is what is left when you delete one row and one column and take the determinant of the remainder. Delete a row and a column from a 2×2 and a single number survives — and the determinant of a 1×1 matrix is just that number. So every minor on this page is one surviving entry of A, and the minor matrix is A with its diagonals swapped. Nothing has gone wrong; there is simply nothing left to compute.

The operation is real all the same, which is what the hover highlighting is for. At 3×3 the same deletion leaves a 2×2 behind, and its determinant is the signed area of the parallelogram spanned by the two surviving columns — a cross product. That is where cofactors start carrying geometry. The bookkeeping you are watching here is the same bookkeeping; only the leftovers get bigger.

What the adjugate is actually doing

Look at the first column of adj(A): it is (d, −c). Now look at the second row of A: it is (c, d). They are perpendicular — their dot product is cd − dc = 0. The other pair works the same way.

That perpendicularity is the whole trick. When you multiply A by adj(A), every off-diagonal entry is a dot product of a row with the column that was built to be perpendicular to it, so it vanishes. The two diagonal entries are what survives, and both come out to ad − bc. Hence A·adj(A) = D·I — adj(A) already sends everything home, just D times too far. Dividing by D fixes the overshoot, and that is the entire reason the last step exists. Switch on the adj(A) columns layer above to see the right angles.

Round trip

Each row takes a vector v, pushes it through A, and brings it back with A⁻¹. Read a row left to right and it says “the inverse undoes A”. Read it right to left and it is the calculation you do to solve Ax = b: given the output, recover the input. The four products are shown before they are summed, because that is the step everybody skips.

v1 = (, )     v2 = (, )  — or drag them on the plot.