NoteThe matrix
A is 3×3. Its columns are vectors in ℝ³ and its rows are vectors in ℝ³.
A =211132100
StartReduce A to RREF
A is 3×3. Work column by column from left to right. The current pivot row is called r (starting at row 1).
Allowed row operations (they never change the rank): swap two rows, multiply a row by a nonzero number, add a multiple of one row to another.
211132100
PivotPivot selection (column 1)
pivot = a₁₁ = 2
Scan column 1 from row 1 downward: the first nonzero entry is a₁₁ = 2 (row 1). It already sits in the pivot position (1, 1).
211132100
Row multiplyRow multiplication
R₁ ← (1/2)·R₁
Divide row 1 by the pivot 2 (multiply by 1/2 = 1/2) so the pivot becomes 1.
new R₁ = [2, 1, 1] · (1/2) = [1, 1/2, 1/2]
11212132100
Row additionElimination below the pivot (column 1)
R₂ ← R₂ - R₁
Goal: turn a₂₁ = 1 into 0 using the pivot row R₁. (R₂ ← R₂ - (1)·R₁)
new R₂ = [1, 3, 2] - (1)·[1, 1/2, 1/2] = [0, 5/2, 3/2]
1121205232100
Row additionElimination below the pivot (column 1)
R₃ ← R₃ - R₁
Goal: turn a₃₁ = 1 into 0 using the pivot row R₁. (R₃ ← R₃ - (1)·R₁)
new R₃ = [1, 0, 0] - (1)·[1, 1/2, 1/2] = [0, -1/2, -1/2]
11212052320−12−12
PivotPivot selection (column 2)
pivot = a₂₂ = 5/2
Scan column 2 from row 2 downward: the first nonzero entry is a₂₂ = 5/2 (row 2). It already sits in the pivot position (2, 2).
11212052320−12−12
Row multiplyRow multiplication
R₂ ← (2/5)·R₂
Divide row 2 by the pivot 5/2 (multiply by 1/5/2 = 2/5) so the pivot becomes 1.
new R₂ = [0, 5/2, 3/2] · (2/5) = [0, 1, 3/5]
1121201350−12−12
Row additionElimination below the pivot (column 2)
R₃ ← R₃ + 1/2·R₂
Goal: turn a₃₂ = -1/2 into 0 using the pivot row R₂. (R₃ ← R₃ - (-1/2)·R₂)
new R₃ = [0, -1/2, -1/2] - (-1/2)·[0, 1, 3/5] = [0, 0, -1/5]
11212013500−15
PivotPivot selection (column 3)
pivot = a₃₃ = -1/5
Scan column 3 from row 3 downward: the first nonzero entry is a₃₃ = -1/5 (row 3). It already sits in the pivot position (3, 3).
11212013500−15
Row multiplyRow multiplication
R₃ ← (-5)·R₃
Divide row 3 by the pivot -1/5 (multiply by 1/(-1/5) = -5) so the pivot becomes 1.
new R₃ = [0, 0, -1/5] · (-5) = [0, 0, 1]
112120135001
ResultRow echelon form (REF) reached
Each pivot is 1, each pivot lies to the right of the pivot above it, and everything below a pivot is 0.
Number of pivots = 3.
112120135001
Row additionEliminate above the pivot (column 3)
R₁ ← R₁ - 1/2·R₃
Goal: turn a₁₃ = 1/2 into 0 using the pivot row R₃. (R₁ ← R₁ - (1/2)·R₃)
new R₁ = [1, 1/2, 1/2] - (1/2)·[0, 0, 1] = [1, 1/2, 0]
11200135001
Row additionEliminate above the pivot (column 3)
R₂ ← R₂ - 3/5·R₃
Goal: turn a₂₃ = 3/5 into 0 using the pivot row R₃. (R₂ ← R₂ - (3/5)·R₃)
new R₂ = [0, 1, 3/5] - (3/5)·[0, 0, 1] = [0, 1, 0]
1120010001
Row additionEliminate above the pivot (column 2)
R₁ ← R₁ - 1/2·R₂
Goal: turn a₁₂ = 1/2 into 0 using the pivot row R₂. (R₁ ← R₁ - (1/2)·R₂)
new R₁ = [1, 1/2, 0] - (1/2)·[0, 1, 0] = [1, 0, 0]
100010001
ResultReduced row echelon form (RREF) reached
Every pivot is 1 and is the only nonzero entry in its column. The RREF of a matrix is unique.
100010001
NotePivots and rank
Pivot columns: 1, 2, 3
rank(A) = 3 (number of pivots)
Free variables: none
CalculateColumn space Col(A): basis from the pivot columns of A
use the original columns that hold pivots in the RREF
column 1 = (2, 1, 1)ᵀ
column 2 = (1, 3, 0)ᵀ
column 3 = (1, 2, 0)ᵀ
CalculateRow space Row(A): basis from the non-zero rows of the RREF
row 1 = (1, 0, 0)
row 2 = (0, 1, 0)
row 3 = (0, 0, 1)
CalculateNull space Null(A): solve A x = 0
each free variable gives one basis vector
Only x = 0 solves A x = 0, so Null(A) = {0}.
CalculateLeft null space Null(Aᵀ): solve Aᵀ y = 0
Only y = 0, so Null(Aᵀ) = {0}.
CheckVerification
rank + nullity = 3 + 0 = 3 = number of columns ✓
A·v = 0 for every null space basis vector (exact) ✓
Pivot columns are independent and have rank 3 ✓
Row-space basis spans the same space as the rows of A (rank of the stack is still 3) ✓
dim Col = dim Row = 3; dim Null(Aᵀ) = 0 = m − r ✓
ResultAre the columns linearly independent?
Yes: rank = 3 = number of columns, and Null(A) = {0}, so the only combination of the columns that gives 0 is the trivial one.