Linear Algebra • Vector Spaces & Subspaces

Column Space & Null Space — Column Space and Null Space (Intro)

Discover the two fundamental spaces hiding inside every matrix and why they matter.

Linear Algebra emblem with a matrix grid, a variable, and three-dimensional axes.
Inside this lesson 10 sections 5 questions 7 figures

SECTION 1

Historical Context & Motivation

Matrices are everywhere — from computer graphics to weather prediction. But for centuries, mathematicians wondered: what can a matrix actually do? When you multiply a matrix by different vectors, which outputs are possible, and which inputs give you zero? These questions led to two powerful ideas called the column space and the null space of a matrix.

1750s • Early Systems of Equations

Mathematicians like Gabriel Cramer and Leonhard Euler developed methods to solve systems of linear equations, laying the groundwork for matrix theory.

1850s • Arthur Cayley Formalizes Matrices

British mathematician Arthur Cayley introduced the modern idea of a matrix as a rectangular array of numbers with its own rules of algebra.

1870s • Rank and Nullity Emerge

Georg Frobenius and others studied the rank (dimension of the column space) and nullity (dimension of the null space), connecting them in a beautiful theorem.

1900s–Today • Modern Applications

Column space and null space ideas power machine learning, search engines, data compression, and the GPS system on your phone.

The central question is this: given a matrix A, what outputs can Ax produce, and which inputs x get "crushed" to the zero vector? Answering these two questions reveals the structure hiding inside every matrix.

SECTION 2

Core Principles & Definitions

Before we dive into column space and null space, let's make sure we're comfortable with a few building blocks. A matrix is a grid of numbers arranged in rows and columns. A vector is a list of numbers stacked in a column (think of it like a single column of the matrix). When you multiply a matrix A by a vector x, you get a new vector b. We write this as Ax = b.

1

Column Space (Col A)

The set of all possible outputs b you can get from Ax = b. It's built from all combinations of the columns of A.
2

Null Space (Nul A)

The set of all inputs x that produce zero — that is, every vector x where Ax = 0.
3

Linear Combination

A recipe for mixing vectors: multiply each vector by a number (called a scalar) and add the results together.
4

Span

The collection of every possible linear combination of a set of vectors. The column space is the span of the matrix's columns.
✦

KEY TAKEAWAY

Think of a matrix like a vending machine. The column space is the menu of all snacks the machine can possibly give you. The null space is the set of button combinations that give you nothing — you press buttons but nothing comes out! Every matrix has both a menu (column space) and a set of "do-nothing" inputs (null space).

SECTION 3

Visual Explanation

Let's visualize what a matrix does. Imagine the matrix A as a machine that takes in a 2D vector (an input arrow) and produces a 2D output arrow. The diagram below shows how the columns of A determine the column space, and how certain input vectors land on the zero vector.

Column Space: All Reachable Outputs of AxInput Spacecol₁col₂x (null)(maps to 0)Matrix AAx = bxbOutput SpaceColumnSpace0 (zero)
The shaded region on the right represents the column space — all outputs b that are reachable. The pink dashed vector on the left is a null space vector: it gets mapped to the zero point on the right.

Notice the key relationship: the column space lives in the output space (it shows what the matrix can produce), while the null space lives in the input space (it shows which inputs get "squished" to zero). These two spaces together tell you almost everything about how a matrix behaves.

SECTION 4

Mathematical Framework

Now let's see the formal definitions. Suppose A is an m × n matrix with columns c₁, c₂, …, cₙ.

COLUMN SPACE DEFINITION

Col(A)=b:b=x1c1+x2c2+…+xncnforsomescalarsx1,x2,…,xnCol(A) = { b : b = x₁c₁ + x₂c₂ + … + xₙcₙ for some scalars x₁, x₂, …, xₙ }

This means the column space is every possible linear combination of the columns of A. If a vector b is in Col(A), then the equation Ax = b has at least one solution.

NULL SPACE DEFINITION

Nul(A)=x:Ax=0Nul(A) = { x : Ax = 0 }

The null space collects every input vector x that produces the zero vector when multiplied by A. The zero vector itself (x = 0) is always in the null space.

RANK–NULLITY THEOREM

dim(ColA)+dim(NulA)=ndim(Col A) + dim(Nul A) = n

Here, n is the number of columns. The dimension of the column space is called the rank, and the dimension of the null space is called the nullity. Together they always add up to the number of columns.

💡

Why Does This Matter?

The rank–nullity theorem is like a conservation law. If the column space is "big" (high rank), then the null space must be "small" (low nullity), and vice versa. A matrix can't have a big menu of outputs and also crush lots of inputs to zero — there's a trade-off!

SECTION 5

How to Find Column Space & Null Space

To find these two spaces, we use a technique called row reduction (also known as Gaussian elimination). You convert the matrix to row echelon form (REF) or reduced row echelon form (RREF). The diagram below walks through the process for both spaces.

Finding Column Space & Null Space: Step-by-Step FlowStart with Matrix ARow Reduce to RREF(Gaussian elimination)COLUMN SPACEIdentify pivot columns in RREFNULL SPACESet free variables, solve Ax = 0Go back to ORIGINAL ATake those same columnsWrite solution in termsof free variablesCol(A) = Span{pivot cols}Nul(A) = Span{special sols}
Flowchart showing how to find both spaces. For the column space, identify pivot columns in RREF, then go back to the original matrix and take those columns. For the null space, solve Ax = 0 by expressing pivot variables in terms of free variables.
⚠

Important Warning

When finding the column space, always use the columns from the original matrix A, not the row-reduced version! Row reduction changes the column space, so you only use RREF to identify which columns are pivot columns.

SECTION 6

Worked Example

Let's work through a complete example with a small matrix. We'll find both the column space and the null space step by step.

Find Col(A) and Nul(A) for a 3×3 Matrix

  1. 1

    Step 1 — Write the matrix

    Consider the matrix A = [[1, 2, 3], [2, 4, 6], [0, 1, 1]]. Written as rows: Row 1 is [1, 2, 3], Row 2 is [2, 4, 6], Row 3 is [0, 1, 1].
    A has 3 rows and 3 columns, so n = 3.
  2. 2

    Step 2 — Row reduce to RREF

    Replace Row 2 with Row 2 − 2 × Row 1: [2 − 2, 4 − 4, 6 − 6] = [0, 0, 0]. The matrix becomes [[1, 2, 3], [0, 0, 0], [0, 1, 1]]. Swap Row 2 and Row 3: [[1, 2, 3], [0, 1, 1], [0, 0, 0]]. Replace Row 1 with Row 1 − 2 × Row 2: [1, 0, 1], [0, 1, 1], [0, 0, 0].
    RREF = [[1, 0, 1], [0, 1, 1], [0, 0, 0]]. Pivots are in columns 1 and 2.
  3. 3

    Step 3 — Find the column space

    The pivot columns are columns 1 and 2. Go back to the original matrix A. Column 1 of A is [1, 2, 0] and column 2 of A is [2, 4, 1].
    Col(A) = Span{ [1, 2, 0], [2, 4, 1] }. The rank is 2.
  4. 4

    Step 4 — Find the null space

    Column 3 is a free variable column (no pivot). Set x₃ = t (a free parameter). From the RREF, Row 2 gives x₂ + x₃ = 0, so x₂ = −t. Row 1 gives x₁ + x₃ = 0, so x₁ = −t. The solution is x = t × [−1, −1, 1].
    Nul(A) = Span{ [−1, −1, 1] }. The nullity is 1.
  5. 5

    Step 5 — Verify rank–nullity

    We found rank = 2 and nullity = 1. Check: rank + nullity = 2 + 1 = 3 = n (the number of columns). ✓
    The rank–nullity theorem is confirmed!

SECTION 7

Column Space vs. Null Space — Key Differences

Column space and null space are two sides of the same coin. They describe different aspects of the same matrix, and understanding their differences is crucial.

FeatureColumn Space (Col A)Null Space (Nul A)
Question it answersWhat outputs can Ax produce?What inputs make Ax = 0?
Lives inOutput space (ℝᵐ)Input space (ℝⁿ)
Built fromPivot columns of original ASolutions to Ax = 0
Dimension nameRankNullity
Always containsThe zero vector (always reachable via x = 0)The zero vector (A × 0 = 0 always)

Side-by-side comparison of column space and null space

✦

KEY TAKEAWAY

Think of a projector shining light on a wall. The column space is like the wall area that gets lit up — the range of images the projector can create. The null space is like the set of adjustments you could make to the input slide that produce no change on the wall. A powerful projector (high rank matrix) lights up more of the wall, leaving fewer "invisible" adjustments.

SECTION 8

Connections to Advanced Topics

Column space and null space are just the beginning. As you continue in linear algebra, you'll meet two more related spaces: the row space and the left null space. Together, these four spaces form what mathematician Gilbert Strang calls the "Fundamental Theorem of Linear Algebra."

ConceptWhat You Know NowWhere It Leads
Column SpaceSpan of columns of A; the "reachable outputs"Image/range of a linear transformation; orthogonal complement of left null space
Null SpaceSolutions to Ax = 0; the "invisible inputs"Kernel of a linear transformation; orthogonal complement of row space
Rank–Nullityrank + nullity = number of columnsGeneralizes to dimension theorem for linear maps between any vector spaces

How introductory concepts connect to advanced linear algebra

In data science, the null space helps identify redundant features in a dataset. In engineering, it reveals the "degrees of freedom" in a mechanical system. The column space tells engineers which forces or loads a structure can withstand. These are not just abstract ideas — they have real, powerful applications.

SECTION 9

Practice Problems

Question 1: CONCEPTUAL

In your own words, explain the difference between the column space and the null space of a matrix. Where does each one "live" — in the input space or the output space?
Show answer
The column space is the collection of all possible outputs b you can get from the equation Ax = b. It lives in the output space (ℝᵐ, where m is the number of rows). The null space is the collection of all input vectors x that produce the zero vector when multiplied by A (Ax = 0). It lives in the input space (ℝⁿ, where n is the number of columns). In short, the column space is about what a matrix can reach, while the null space is about what it "ignores" or crushes to zero.

Question 2: BASIC CALCULATION

Let A = [[1, 3], [2, 6]]. Row reduce A to RREF. What is the rank of A? What is the nullity of A?
Show answer
Replace Row 2 with Row 2 − 2 × Row 1: [2 − 2, 6 − 6] = [0, 0]. The RREF is [[1, 3], [0, 0]]. There is one pivot (in column 1), so the rank is 1. By the rank–nullity theorem, nullity = n − rank = 2 − 1 = 1. This means there is a one-dimensional null space — a whole line of vectors that A maps to zero.

Question 3: INTERMEDIATE

Using the matrix A = [[1, 3], [2, 6]] from Problem 2, find a vector that spans the null space of A. Then verify your answer by computing Ax.
Show answer
From the RREF [[1, 3], [0, 0]], column 2 is a free variable column. Set x₂ = t. Then Row 1 gives x₁ + 3x₂ = 0, so x₁ = −3t. The null space is spanned by [−3, 1]. To verify, compute A × [−3, 1]: Row 1 gives 1(−3) + 3(1) = −3 + 3 = 0; Row 2 gives 2(−3) + 6(1) = −6 + 6 = 0. So A × [−3, 1] = [0, 0] ✓. Any scalar multiple of [−3, 1] is also in the null space.

Question 4: APPLIED

A video game uses a 3×3 matrix T to transform character positions. After row reduction, T has pivots in columns 1 and 3. The original columns of T are c₁ = [2, 0, 1], c₂ = [4, 0, 2], c₃ = [1, 3, 0]. What is the column space of T, and what does it mean for the game's characters?
Show answer
Since pivots are in columns 1 and 3, we take those columns from the original matrix: Col(T) = Span{ [2, 0, 1], [1, 3, 0] }. The rank is 2, which means the column space is a 2D plane inside 3D space. For the game, this means the transformation T can only move characters onto a flat plane, not to every point in 3D space. Any position not on that plane is unreachable by this transformation. Column 2, [4, 0, 2], is not independent — it's exactly 2 × [2, 0, 1], so it adds no new reachable positions.

Question 5: CRITICAL THINKING

If a 4×6 matrix A has a null space with dimension 4, what is the rank of A? Can the equation Ax = b have a solution for every possible vector b in ℝ⁴? Explain your reasoning using the rank–nullity theorem.
Show answer
By the rank–nullity theorem, rank + nullity = n (number of columns). So rank = 6 − 4 = 2. The column space of A is a 2-dimensional subspace of ℝ⁴. Since ℝ⁴ is 4-dimensional, a 2D subspace cannot fill all of ℝ⁴. Therefore, Ax = b does NOT have a solution for every b in ℝ⁴. Only vectors b that lie in the 2D column space are reachable. This also means A has 4 free variables, so whenever a solution does exist, there are infinitely many solutions (a 4-dimensional family of them). The large null space indicates that A "crushes" a lot of information.

SUMMARY

Summary

Summary

Every matrix A has two fundamental spaces. The column space (Col A) is the set of all possible outputs b in the equation Ax = b — it's the span of the pivot columns of the original matrix. The null space (Nul A) is the set of all input vectors x that get mapped to zero — it's found by solving Ax = 0 after row reduction.

The dimensions of these two spaces are linked by the rank–nullity theorem: rank + nullity = n (the number of columns). A high rank means the matrix can reach many outputs; a high nullity means many inputs are "invisible" to the matrix. To find the column space, identify pivot columns via row reduction and select those columns from the original matrix. To find the null space, solve for the free variables in the RREF system.

Varsity Tutors • Linear Algebra • Column Space & Null Space