Visual Tools
Calculators
Tables
Mathematical Keyboard
Converters
Other Tools


Basis of Vector Space






The Abstract Structure Behind Linear Algebra

A vector space is any collection of objects where addition and scalar multiplication obey a consistent set of rules. The concept of a basis — a minimal set of vectors from which every other vector can be built uniquely — is the central organizing idea. Choosing a basis assigns coordinates to every vector, connects abstract spaces to concrete computation in Rⁿ, and determines the dimension that classifies the space up to isomorphism.

For step-by-step results on your own numbers, use the extend to a basis and coordinate vector calculators on CalculateMatrix.



What a Vector Space Is

Vectors in Rn\mathbb{R}^n can be added and scaled. So can polynomials, matrices, and continuous functions. A vector space is the formal name for any collection of objects where these two operations — addition and scalar multiplication — satisfy ten algebraic axioms: closure, commutativity, associativity, the existence of a zero element, additive inverses, and the expected distributive and identity laws for scalars.

The objects in a vector space are called vectors regardless of whether they look like arrows, columns of numbers, polynomials, or functions. The power of the abstraction is that every theorem proved from the axioms alone applies to every vector space simultaneously. Linear independence, span, basis, dimension, and subspaces are all defined from the axioms, and their properties carry over to any setting where the axioms hold.

Basis: Definition

Six sets of vectors in the plane. Which of them can serve as a coordinate system for R² — reaching every vector, with nothing extra?
A: {(1,0),(0,1)}\{(1, 0), (0, 1)\} \quad B: {(1,0)}\{(1, 0)\} \quad C: {(1,0),(0,1),(1,1)}\{(1, 0), (0, 1), (1, 1)\}
D: {(1,2),(2,4)}\{(1, 2), (2, 4)\} \quad E: {(1,1),(1,−1)}\{(1, 1), (1, -1)\} \quad F: {(2,1),(1,3)}\{(2, 1), (1, 3)\}
Checking both demands settles it: A, E and F pass; B, C and D each fail one way or another.
setreaches every vector of the plane?no spare vector?basis?
Ayesyesyes
Bno — only the x-axisyesno
Cyesno — (1, 1) = (1, 0) + (0, 1)no
Dno — only one lineno — (2, 4) = 2·(1, 2)no
Eyesyesyes
Fyesyesyes
B has too few vectors, C has one too many, and D's two vectors point along the same line.
B reaches only the multiples of (1,0)(1, 0). In C, (1,1)(1, 1) adds nothing that (1,0)(1, 0) and (0,1)(0, 1) cannot already make. In D, (2,4)(2, 4) is twice (1,2)(1, 2), so the pair still reaches only one line.
The rule: enough vectors to reach everything, and none that the others already produce.
The set is linearly independent: no vector in the set can be written as a linear combination of the others. Equivalently, the only combination c1v1+c2v2+⋯+cnvn=0c_1\mathbf{v}_1 + c_2\mathbf{v}_2 + \cdots + c_n\mathbf{v}_n = \mathbf{0} is the trivial one with all scalars equal to zero.
The set spans VV: every vector in VV can be expressed as some linear combination of v1,…,vn\mathbf{v}_1, \dots, \mathbf{v}_n.
Independence means no vector in the basis is wasted. Spanning means no vector in VV is out of reach.
The definition
A basis for a vector space VV is a set of vectors that is linearly independent and spans VV.
A basis for a vector space VV is a set of vectors B={v1,v2,…,vn}\mathcal{B} = \{\mathbf{v}_1, \mathbf{v}_2, \dots, \mathbf{v}_n\} that satisfies two conditions simultaneously:
Basis Definition
B={v1,…,vn} is a basis for V  ⟺  {B is linearly independentSpan(B)=V\mathcal{B} = \{\mathbf{v}_1, \ldots, \mathbf{v}_n\} \text{ is a basis for } V \iff \begin{cases} \mathcal{B} \text{ is linearly independent} \\ \text{Span}(\mathcal{B}) = V \end{cases}
Learn more about this formula: Basis Definition →
So A, E and F are bases for R2\mathbb{R}^2; B, C and D are not.
A basis sits exactly on the boundary between too few vectors and too many.
THEOREM
A basis is a minimal spanning set — remove any element and the span shrinks.
It is also a maximal independent set — add any vector from VV and independence breaks. These two characterizations are equivalent and place the basis at the exact boundary between "too few" and "too many."
φabspan = ℝ²
Two independent vectors spanning R²

These two arrows do both jobs a basis has to do at once: they are independent, so neither is wasted, and they span, so nothing is missing. Adding a third vector would keep the spanning but destroy the independence; removing one would keep the independence but lose the spanning. A basis is exactly the balance point. Test that by adding and removing directions on the span and independence explorer.

Independence and spanning are therefore not two separate requirements to check but two ways the same set can fail.
A space has many bases, but every one of them has the same number of vectors.
A, E and F are three different bases of R2\mathbb{R}^2, each with two vectors; that common count is the dimension. What a basis gives in return is one and only one way to write each vector, as unique representation shows.
The rest of the page covers notation, unique representation, coordinates, the standard bases, finding, extending and reducing bases, change of basis, coordinates and isomorphism, and the fundamental subspaces.

Basis and Coordinate Notation

Notation

Basis and Coordinate Notation

A script letter for the collection, brackets that ask “in which coordinates?”, and a subscript arrow engineered to cancel like dominoes.
Span\text{Span} and {…}\{\ldots\} — span notation; ei\mathbf{e}_i — norm notation; matrices and B−1B^{-1} — matrix and inverse notation.
B\mathcal{B} vs BB
Script B, the basis; roman B, the matrix
Calligraphic letters name collections: B\mathcal{B} is the set of basis vectors, while roman BB is the matrix whose columns they become — and the Coordinates section below legitimately uses both in one computation (c=B−1v\mathbf{c} = B^{-1}\mathbf{v} for coordinates relative to B\mathcal{B}).
CasesThe script convention extends across the subject: Pn\mathcal{P}_n for the polynomial space, C\mathcal{C} for a second basis — collections and spaces get the fancy typeface, their matrix incarnations the plain one.
Also writtenPlain B={v1,…}B = \{\mathbf{v}_1, \ldots\} in texts without calligraphic fonts — workable until a basis and its matrix share a page, which is exactly when the distinction earns its ink.
Do not confuseOne object. The set and the matrix carry the same data but different species — a set has members, a matrix has products; conflating them writes Bc\mathcal{B}\mathbf{c}, which multiplies nothing.
[v]B[\mathbf{v}]_{\mathcal{B}}
The coordinate vector of v, relative to B
The brackets ask “in which coordinates?” and the subscript answers. Defined in Coordinates below: the column of scalars expressing v\mathbf{v} in the basis B\mathcal{B}. Same vector, different subscript, different numbers — the notation makes basis-dependence impossible to forget.
CasesIn the standard basis the machinery collapses: [v]E=v[\mathbf{v}]_{\mathcal{E}} = \mathbf{v} — the coordinates are the components, which is why the subscript is usually dropped there and only there.
Also written(v)B(\mathbf{v})_{\mathcal{B}} with parentheses, or vB\mathbf{v}_{\mathcal{B}} bare in terse texts — the bracket form dominates because it survives expressions: [T(v)]B[T(\mathbf{v})]_{\mathcal{B}} parses cleanly.
Do not confuseThe vector itself. v\mathbf{v} lives in VV; [v]B[\mathbf{v}]_{\mathcal{B}} lives in Rn\mathbb{R}^n — a description of v\mathbf{v}, not v\mathbf{v}. The gap between object and description is the entire content of coordinate isomorphism.
PC←BP_{\mathcal{C} \leftarrow \mathcal{B}}
The change-of-basis matrix, from B to C
The subscript reads right to left — from B\mathcal{B}, toward C\mathcal{C} — because the notation is engineered for the equation it lives in: in [v]C=PC←B[v]B[\mathbf{v}]_{\mathcal{C}} = P_{\mathcal{C} \leftarrow \mathcal{B}}[\mathbf{v}]_{\mathcal{B}} of Change of Basis below, adjacent basis letters touch and match.
CasesThe design pays off in chains: PD←C PC←B=PD←BP_{\mathcal{D} \leftarrow \mathcal{C}}\,P_{\mathcal{C} \leftarrow \mathcal{B}} = P_{\mathcal{D} \leftarrow \mathcal{B}} — inner letters cancel like dominoes — and reversal is the inverse: PB←C=PC←B−1P_{\mathcal{B} \leftarrow \mathcal{C}} = P_{\mathcal{C} \leftarrow \mathcal{B}}^{-1}.
Also writtenPB→CP_{\mathcal{B} \to \mathcal{C}} with a forward arrow in some texts — same matrix, arrow flipped; check each book's convention before trusting the direction.
Do not confuseReading left to right. The arrow's tail names the input coordinates — reading it as “from C\mathcal{C}” applies the matrix backwards, and the mistake is self-concealing because the product still computes.
DownloadPNG2×PDF
Notation · Cheat sheet
Vector Space Notation at a Glance
The marks from the notation cards across the vector-space pages: how each is read and what it means. Every group links to the full card on its page.
Axioms
0v=00\mathbf{v} = \mathbf{0}
zero times v is the zero vector
Plain 00 is a number, bold 0\mathbf{0} a vector.
c(dv)=(cd)vc(d\mathbf{v}) = (cd)\mathbf{v}
two kinds of product
cdcd multiplies numbers; dvd\mathbf{v} scales a vector.
u⊕v\mathbf{u} \oplus \mathbf{v}
u circle-plus v
An addition defined for the occasion, not the usual one.
Subspaces
W⊆VW \subseteq V
W is contained in V
Needed for a subspace, but not enough.
{0}\{\mathbf{0}\} and VV
the trivial subspaces
Every space has these two.
W1⊕W2W_1 \oplus W_2
direct sum
A sum with W1∩W2={0}W_1 \cap W_2 = \{\mathbf{0}\}.
Span
Span{v1,…}\text{Span}\{\mathbf{v}_1, \ldots\}
the span of the vectors
All their linear combinations.
⟨v1,…⟩\langle \mathbf{v}_1, \ldots \rangle
the subspace generated by
The algebraist’s spelling of span.
ci∈Fc_i \in \mathbb{F}
scalars from the field F
F\mathbb{F} stands for R\mathbb{R} or C\mathbb{C}.
Linear independence
∑civi=0\sum c_i\mathbf{v}_i = \mathbf{0}
a vanishing combination
Independent when this forces every ci=0c_i = 0.
some ci≠0c_i \neq 0
a dependence relation
One combination that proves dependence.
W(f1,…,fn)(x)W(f_1, \ldots, f_n)(x)
the Wronskian
Tests independence of functions.
BasisThis page
B\mathcal{B} vs BB
script B, roman B
The set of basis vectors against the matrix built from them.
[v]B[\mathbf{v}]_{\mathcal{B}}
coordinates of v in B
The column of weights on the basis vectors.
PC←BP_{\mathcal{C} \leftarrow \mathcal{B}}
change of basis, B to C
Read right to left: from B\mathcal{B} to C\mathcal{C}.
Dimension
dim⁡(V)\dim(V)
the dimension of V
The number of vectors in any basis.
dim⁡(V)=∞\dim(V) = \infty
infinite-dimensional
No finite basis exists.
V≅WV \cong W
V is isomorphic to W
Same structure, possibly different objects.
Fundamental spaces
Col,Row,Null\text{Col}, \text{Row}, \text{Null}
column, row and null space
Names vary by author, for example C(A)C(A), N(A)N(A).
Null(AT)\text{Null}(A^{T})
the left null space
Always written through the transpose.
x↦Ax\mathbf{x} \mapsto A\mathbf{x}
x maps to A x
The barred arrow acts on single vectors.
Same marks, different job
⊕\oplusA made-up addition in the axioms; a direct sum of subspaces.
⟨⋅⟩\langle \cdot \rangleGenerated subspace here; inner product on the orthogonality pages.
W(…)W(\ldots)The Wronskian, not a subspace named WW.
Vector Space Notation at a Glance·/linear-algebra/vector-spaces/axiomsLearn Math Class

Unique Representation

If B={v1,…,vn}\mathcal{B} = \{\mathbf{v}_1, \dots, \mathbf{v}_n\} is a basis for VV, every vector v∈V\mathbf{v} \in V has a unique representation as a linear combination of basis vectors:

Unique Basis Representation
∀ v∈V, ∃! (c1,…,cn):v=c1v1+c2v2+⋯+cnvn\forall\, \mathbf{v} \in V,\ \exists!\, (c_1, \ldots, c_n): \mathbf{v} = c_1\mathbf{v}_1 + c_2\mathbf{v}_2 + \cdots + c_n\mathbf{v}_n
Learn more about this formula: Unique Basis Representation →


Existence is guaranteed by the spanning condition — every vector is reachable. Uniqueness is guaranteed by independence: if two different sets of scalars both produced v\mathbf{v}, subtracting one from the other would give a nontrivial combination equal to 0\mathbf{0}, contradicting independence.

This uniqueness is what separates a basis from an arbitrary spanning set. A spanning set that is not independent can represent some vectors in multiple ways — the representation is ambiguous. A basis eliminates all ambiguity: every vector has exactly one set of coefficients.

Coordinates

The scalars c1,c2,…,cnc_1, c_2, \dots, c_n in the unique representation v=c1v1+⋯+cnvn\mathbf{v} = c_1\mathbf{v}_1 + \cdots + c_n\mathbf{v}_n are called the coordinates of v\mathbf{v} relative to the basis B\mathcal{B}. They are collected into a coordinate vector:

Coordinate Vector
[v]B=(c1c2⋮cn)where v=c1v1+⋯+cnvn[\mathbf{v}]_\mathcal{B} = \begin{pmatrix} c_1 \\ c_2 \\ \vdots \\ c_n \end{pmatrix} \quad \text{where } \mathbf{v} = c_1\mathbf{v}_1 + \cdots + c_n\mathbf{v}_n
Learn more about this formula: Coordinate Vector →


Coordinates depend entirely on the choice of basis. The same vector v\mathbf{v} generally has different coordinates in different bases — the vector does not change, but its numerical description does.

Pitfall: Reading components as coordinates
Taking [v]B=(3,5)[\mathbf{v}]_\mathcal{B} = (3, 5) for v=(3,5)\mathbf{v} = (3, 5) and B={(1,2),(0,1)}\mathcal{B} = \{(1, 2), (0, 1)\} rebuilds 3(1,2)+5(0,1)=(3,11)3(1, 2) + 5(0, 1) = (3, 11), not v\mathbf{v}. Solving the system gives [v]B=(3,−1)[\mathbf{v}]_\mathcal{B} = (3, -1), since 3(1,2)−1(0,1)=(3,5)3(1, 2) - 1(0, 1) = (3, 5).

To find the coordinates of v\mathbf{v} relative to B\mathcal{B}, solve the linear system c1v1+⋯+cnvn=vc_1\mathbf{v}_1 + \cdots + c_n\mathbf{v}_n = \mathbf{v}. If the basis vectors are columns of a matrix BB, this is the system Bc=vB\mathbf{c} = \mathbf{v}, and the coordinate vector is c=B−1v\mathbf{c} = B^{-1}\mathbf{v} when BB is invertible. For the standard basis, B=IB = I, so the coordinates are simply the components of v\mathbf{v} itself.
b₁b₂v
The same point, read against a skewed basis

The grid has been redrawn along the two basis vectors, and the point's coordinates are read by counting steps along that grid rather than along the axes. The point never moved; only the ruler changed. This is why coordinates belong to a basis and not to a vector, and why the same arrow carries different numbers in different bases. Swap bases and watch the numbers change on the change of basis explorer.

Because the representation is unique, these coordinates are a genuine address for the vector rather than one description among many.

The Standard Basis for Rⁿ

The most familiar basis for Rn\mathbb{R}^n is the standard basis {e1,e2,…,en}\{\mathbf{e}_1, \mathbf{e}_2, \dots, \mathbf{e}_n\}, where ei\mathbf{e}_i has a 11 in position ii and zeros elsewhere:

Standard Basis (Rn)
ei=(0,…,0,1i-th,0,…,0),i=1,…,n\mathbf{e}_i = (0, \ldots, 0, \underset{i\text{-th}}{1}, 0, \ldots, 0), \quad i = 1, \ldots, n
Learn more about this formula: Standard Basis (Rn) →


Fact: JPEG stores coordinates, not pixels
An 8×88 \times 8 block of a grayscale photo is a vector in R64\mathbb{R}^{64}, and its pixel values are its standard coordinates. JPEG rewrites it in a basis of 6464 cosine patterns, where most coordinates are close to zero and can be rounded away.

Independence is immediate — each vector has a 11 in a position where all others have 00, so no vector is a combination of the rest. Spanning follows from the fact that any vector (v1,…,vn)=v1e1+⋯+vnen(v_1, \dots, v_n) = v_1\mathbf{e}_1 + \cdots + v_n\mathbf{e}_n.

The standard basis has a special property: coordinates relative to it are just the components of the vector. For any other basis, finding coordinates requires solving a system. This is why the standard basis is the default — but it is one choice among infinitely many, and other bases are often better suited to particular problems.

Other Standard Bases

Every vector space encountered in practice comes with a natural default basis.

Fact: Fonts are drawn in another basis
A cubic Bézier curve, the shape behind many font outlines and drawing tools, is a polynomial written in the basis (1−t)3(1 - t)^3, 3t(1−t)23t(1 - t)^2, 3t2(1−t)3t^2(1 - t), t3t^3 of P3\mathcal{P}_3 instead of 1,t,t2,t31, t, t^2, t^3. Its coordinates in that basis are the control points a designer drags.

The polynomial space Pn\mathcal{P}_n of polynomials with degree at most nn has the monomial basis {1,x,x2,…,xn}\{1, x, x^2, \dots, x^n\}, consisting of n+1n + 1 elements. Every polynomial a0+a1x+⋯+anxna_0 + a_1 x + \cdots + a_n x^n is a linear combination of these monomials, and the coefficients are unique (a polynomial is determined by its coefficients). The coordinates of a polynomial relative to the monomial basis are its coefficients.

The matrix space Rm×n\mathbb{R}^{m \times n} has the matrix unit basis {Eij}\{E_{ij}\}, where EijE_{ij} has a 11 in position (i,j)(i,j) and zeros elsewhere. There are mnmn such matrices, and every m×nm \times n matrix is a unique linear combination of them. The coordinates of a matrix are its entries.

These are all "standard" bases in the sense that they are the most natural first choice. But many problems benefit from non-standard bases: eigenvector bases simplify matrix powers and differential equations, orthonormal bases simplify projections and least squares, and Fourier bases decompose periodic signals into frequency components. Choosing the right basis is often the key step in solving a problem.
The three spaces below are the ones worth having memorised, but the reason to compare them side by side is not the bases themselves — it is what a coordinate vector turns out to contain in each case. In Rn\mathbb{R}^n the coordinates are the components, so nothing seems to have happened. In the polynomial and matrix spaces the coordinates are the coefficients and the entries, and the coordinate vector is visibly a different object from the thing it describes.
DownloadPNG2×PDF
Vector spaces · standard bases

The default basis of each space

Every space met in practice comes with a natural first choice. The column worth reading is the last one — what a coordinate vector actually contains changes from space to space, even though the definition never does.

4spaces
Coordinate spaces1
1
dim⁡=n\dim = n — coordinates are the components
{e1,e2,…,en}\{\mathbf{e}_1, \mathbf{e}_2, \ldots, \mathbf{e}_n\}
Each ei\mathbf{e}_i has a single 11 in position ii. This is the basis where the distinction between a vector and its coordinate vector collapses — they are the same tuple — which is exactly why it hides what coordinates are and why the spaces below are worth stating separately.
Function and matrix spaces2
2
Polynomials of degree ≤ n
dim⁡=n+1\dim = n + 1 — coordinates are the coefficients
{1,x,x2,…,xn}\{1, x, x^2, \ldots, x^n\}
The monomial basis. A polynomial is determined by its coefficients, so a0+a1x+⋯+anxna_0 + a_1x + \cdots + a_nx^n has coordinate vector (a0,…,an)(a_0, \ldots, a_n). Note the count: the constant term is a basis direction, so degree ≤2\leq 2 gives dimension 33.
3
Real m × n matrices
dim⁡=mn\dim = mn — coordinates are the entries
{Eij}\{E_{ij}\}, one per entry position
Each EijE_{ij} carries a single 11 at (i,j)(i,j). Every matrix is a unique combination of them, so the coordinate vector is the matrix read out entry by entry — the shape is a presentation choice, not extra structure.
What makes any of them work1
4
the cic_i are unique
v=c1b1+⋯+cnbn\mathbf{v} = c_1\mathbf{b}_1 + \cdots + c_n\mathbf{b}_n
Independence gives uniqueness and spanning gives existence, so every vector has exactly one coordinate vector. Without both halves the coordinate map is not a function — which is what a basis buys and a mere spanning set does not.
These are standard only in the sense of being the obvious first choice. Many problems are easier in a different basis: an eigenvector basis makes matrix powers trivial, an orthonormal basis makes projection a dot product, and a Fourier basis turns a signal into frequencies. Choosing the basis is often the whole of solving the problem.
The default basis of each space·/linear-algebra/vector-spaces/basisLearn Math Class
That difference is the whole content of coordinates. A basis does not describe a space so much as supply a dictionary between it and Rn\mathbb{R}^n, and the standard basis for Rn\mathbb{R}^n is the degenerate case where the dictionary is the identity. Working in P3\mathcal{P}_3 or R2×2\mathbb{R}^{2 \times 2} makes the translation visible, and both are four-dimensional — so both have the same coordinate space, despite one being polynomials and the other matrices.
Two spaces sharing a dimension share a coordinate space, and that is what isomorphism means: a polynomial of degree at most three and a 2×22 \times 2 matrix carry the same information, differently arranged. Anything provable from the axioms alone holds for both, which is why the finite-dimensional theory is stated once rather than once per kind of object.

Finding a Basis for a Subspace

The three subspaces associated with a matrix each have a basis that can be extracted from row reduction.

For the column space of an m×nm \times n matrix AA: row reduce AA and identify the pivot columns. The corresponding columns of the original matrix AA — not the echelon form — are a basis for Col(A)\text{Col}(A). The echelon form reveals which columns are independent, but the original columns are the actual vectors spanning the column space.

For the null space: solve Ax=0A\mathbf{x} = \mathbf{0} by reducing to RREF and expressing the general solution in terms of free variables. Each free variable contributes one basis vector.

For the row space: the nonzero rows of the echelon form are a basis. Unlike the column space, the echelon form's rows — not the original rows — are used, because row operations change individual rows but preserve their span.

Worked Example
For A=(120124133614)A = \begin{pmatrix} 1 & 2 & 0 & 1 \\ 2 & 4 & 1 & 3 \\ 3 & 6 & 1 & 4 \end{pmatrix}, row reduction gives (120100110000)\begin{pmatrix} 1 & 2 & 0 & 1 \\ 0 & 0 & 1 & 1 \\ 0 & 0 & 0 & 0 \end{pmatrix}. Pivots are in columns 11 and 33. The column space basis is {(1,2,3),(0,1,1)}\{(1, 2, 3), (0, 1, 1)\} — the first and third columns of the original AA. The row space basis is {(1,2,0,1),(0,0,1,1)}\{(1, 2, 0, 1), (0, 0, 1, 1)\}. The null space has two free variables (columns 22 and 44), and solving yields a two-dimensional null space.

One row reduction gives all three bases: original pivot columns, nonzero echelon rows, and one null-space vector per free variable.

Extending and Reducing to a Basis

Two fundamental operations guarantee that bases always exist in finite-dimensional spaces.

Extension: any linearly independent set can be grown into a basis by adding vectors one at a time. At each step, pick any vector not in the current span and adjoin it. Independence is preserved because the new vector is not a combination of the existing ones. The process stops when the span reaches all of VV.

Reduction: any spanning set can be trimmed into a basis by removing redundant vectors. A vector is redundant if it lies in the span of the remaining vectors. Remove redundant vectors one at a time until what remains is independent. The span does not shrink, because each removed vector was already expressible in terms of the others.

Both processes terminate because dimension is finite — the independent set cannot grow past nn vectors, and the spanning set cannot shrink below nn vectors, where n=dim⁡(V)n = \dim(V). This means every finite-dimensional vector space has a basis, and the choice of basis is highly flexible.

Change of Basis

Different bases generally assign different coordinates to the same vector. The change-of-basis matrix converts between them.

If B\mathcal{B} and C\mathcal{C} are two bases for VV, the change-of-basis matrix PC←BP_{\mathcal{C} \leftarrow \mathcal{B}} satisfies

Change of Basis Formula
[v]C=PC←B [v]B[\mathbf{v}]_\mathcal{C} = P_{\mathcal{C} \leftarrow \mathcal{B}}\, [\mathbf{v}]_\mathcal{B}
Learn more about this formula: Change of Basis Formula →


for every vector v∈V\mathbf{v} \in V. The columns of PC←BP_{\mathcal{C} \leftarrow \mathcal{B}} are the C\mathcal{C}-coordinate vectors of each B\mathcal{B}-basis vector. The reverse conversion uses the inverse:

Change of Basis Inverse
PB←C=(PC←B)−1P_{\mathcal{B} \leftarrow \mathcal{C}} = \bigl(P_{\mathcal{C} \leftarrow \mathcal{B}}\bigr)^{-1}
Learn more about this formula: Change of Basis Inverse →


Worked Example
In R2\mathbb{R}^2, let B={(1,1),(1,−1)}\mathcal{B} = \{(1, 1), (1, -1)\} and let C\mathcal{C} be the standard basis. The C\mathcal{C}-coordinates of (1,1)(1, 1) are just (1,1)(1, 1), and the C\mathcal{C}-coordinates of (1,−1)(1, -1) are (1,−1)(1, -1). So PC←B=(111−1)P_{\mathcal{C} \leftarrow \mathcal{B}} = \begin{pmatrix} 1 & 1 \\ 1 & -1 \end{pmatrix}. To find the B\mathcal{B}-coordinates of v=(3,1)\mathbf{v} = (3, 1): solve Pc=(3,1)P\mathbf{c} = (3, 1), giving c=P−1(3,1)=1−2(−1−1−11)(31)=(2,1)\mathbf{c} = P^{-1}(3, 1) = \frac{1}{-2}\begin{pmatrix} -1 & -1 \\ -1 & 1 \end{pmatrix}\begin{pmatrix} 3 \\ 1 \end{pmatrix} = (2, 1). So [v]B=(2,1)[\mathbf{v}]_\mathcal{B} = (2, 1), meaning v=2(1,1)+1(1,−1)\mathbf{v} = 2(1, 1) + 1(1, -1).
Change of basis connects to similarity: if a linear transformation has matrix AA in basis B\mathcal{B}, its matrix in basis C\mathcal{C} is PAP−1PAP^{-1} with P=PC←BP = P_{\mathcal{C} \leftarrow \mathcal{B}}. Choosing a good basis — one that simplifies AA into diagonal or triangular form — is the central idea behind diagonalization.

Pitfall: Applying the matrix in the wrong direction
Multiplying v=(3,1)\mathbf{v} = (3, 1) by PC←BP_{\mathcal{C} \leftarrow \mathcal{B}} instead of solving gives (4,2)(4, 2), but 4(1,1)+2(1,−1)=(6,2)4(1, 1) + 2(1, -1) = (6, 2), not v\mathbf{v}. The input of PC←BP_{\mathcal{C} \leftarrow \mathcal{B}} is B\mathcal{B}-coordinates, so [v]B=P−1v=(2,1)[\mathbf{v}]_\mathcal{B} = P^{-1}\mathbf{v} = (2, 1).

In the example, the known coordinates were the standard ones, (3,1)(3, 1), and the unknown ones were the B\mathcal{B}-coordinates. The matrix PC←BP_{\mathcal{C} \leftarrow \mathcal{B}} is built directly from the B\mathcal{B}-vectors, so it is the easy matrix to write down, while the conversion that was needed ran from C\mathcal{C} back to B\mathcal{B}. Which coordinates are given and which are wanted decides whether PP or its inverse is applied.

Coordinates and Isomorphism

Choosing a basis for an nn-dimensional vector space VV creates a one-to-one correspondence between VV and Rn\mathbb{R}^n. Each vector v∈V\mathbf{v} \in V maps to its coordinate vector [v]B∈Rn[\mathbf{v}]_\mathcal{B} \in \mathbb{R}^n, and this mapping preserves addition and scalar multiplication:

Coordinate Map Linearity
[u+v]B=[u]B+[v]B,[cv]B=c [v]B[\mathbf{u} + \mathbf{v}]_\mathcal{B} = [\mathbf{u}]_\mathcal{B} + [\mathbf{v}]_\mathcal{B}, \qquad [c\mathbf{v}]_\mathcal{B} = c\,[\mathbf{v}]_\mathcal{B}
Learn more about this formula: Coordinate Map Linearity →


Such a structure-preserving bijection is called an isomorphism. Its existence means that every nn-dimensional real vector space — Rn\mathbb{R}^n, Pn−1\mathcal{P}_{n-1}, Rm×k\mathbb{R}^{m \times k} with mk=nmk = n, solution spaces of ODEs — behaves identically to Rn\mathbb{R}^n in all algebraic respects. The objects differ, but the linear algebra is the same.

Dimension is the single invariant that classifies finite-dimensional vector spaces up to isomorphism.

THEOREM
Two spaces over the same field are isomorphic if and only if they have the same dimension.

This is why dimension occupies such a central place in the theory.

Independence and Span

The two concepts that a basis unifies — linear independence and span — each have their own rich theory.

Independence is tested by checking whether the homogeneous system Ac=0A\mathbf{c} = \mathbf{0} has only the trivial solution, where AA is the matrix whose columns are the vectors. For nn vectors in Rn\mathbb{R}^n, this reduces to checking whether the determinant is nonzero. In Rn\mathbb{R}^n, at most nn vectors can be independent — any set of n+1n + 1 or more is automatically dependent.

Span is tested by checking whether Ac=bA\mathbf{c} = \mathbf{b} is consistent for every b\mathbf{b}, or for a specific b\mathbf{b} if the question is about membership. The span of a set is always a subspace, and its dimension equals the largest number of independent vectors in the set.

THEOREM
A set of exactly nn vectors in an nn-dimensional space is a basis if and only if it is independent (spanning follows automatically), and if and only if it spans the space (independence follows automatically).

Pitfall: Checking one condition with the wrong count
Calling {(1,0,0),(0,1,0)}\{(1, 0, 0), (0, 1, 0)\} a basis of R3\mathbb{R}^3 because it is independent misses that every combination (a,b,0)(a, b, 0) has third entry 00, so (0,0,1)(0, 0, 1) is out of reach. The shortcut needs exactly 33 vectors; this set is a basis only of the xyxy-plane.

At the magic count n=dim⁡(V)n = \dim(V), the two conditions become equivalent.

In practice the theorem halves the work. For nn vectors in Rn\mathbb{R}^n, a single determinant settles both conditions at once: a nonzero value shows that the vectors are independent, and with the count equal to the dimension they span the space as well.

Subspaces and the Fundamental Subspaces

A subspace is a subset of a vector space that is itself a vector space under the same operations. The subspace test requires only three checks: the subset contains the zero vector, and it is closed under addition and under scalar multiplication. Lines and planes through the origin, null spaces, column spaces, and row spaces are all subspaces.

Every m×nm \times n matrix AA defines four fundamental subspaces: the column space in Rm\mathbb{R}^m (dimension rr), the row space in Rn\mathbb{R}^n (dimension rr), the null space in Rn\mathbb{R}^n (dimension n−rn - r), and the left null space in Rm\mathbb{R}^m (dimension m−rm - r), where r=rank(A)r = \text{rank}(A).

These four subspaces split into two pairs of orthogonal complements: the row space and null space are perpendicular in Rn\mathbb{R}^n, while the column space and left null space are perpendicular in Rm\mathbb{R}^m. The rank governs all four dimensions and completely determines the geometry of the linear map x↦Ax\mathbf{x} \mapsto A\mathbf{x}.

Common Pitfalls

Four mistakes account for many wrong answers when working with bases and coordinates. Three are marked with a box where they happen in the sections above, and the fourth, taking the echelon columns as a basis for the column space, is flagged in the section on finding a basis. Here each is worked through in full, with the wrong and the right working side by side.

Reading components as coordinates

The coordinates of v\mathbf{v} relative to a basis B\mathcal{B} are written down as the components of v\mathbf{v}, as they would be in the standard basis. For any other basis, the components and the coordinates are usually different numbers.

Wrong working: for B={(1,2),(0,1)}\mathcal{B} = \{(1, 2), (0, 1)\} and v=(3,5)\mathbf{v} = (3, 5), take [v]B=(3,5)[\mathbf{v}]_\mathcal{B} = (3, 5).

Right working: solve c1(1,2)+c2(0,1)=(3,5)c_1(1, 2) + c_2(0, 1) = (3, 5). The first entries give c1=3c_1 = 3, and the second entries give 2⋅3+c2=52 \cdot 3 + c_2 = 5, so c2=−1c_2 = -1 and [v]B=(3,−1)[\mathbf{v}]_\mathcal{B} = (3, -1).

Why it happens: in Rn\mathbb{R}^n almost all work is done in the standard basis, where coordinates and components coincide, so the difference never shows.

How to check: rebuild the vector from its coordinates. With (3,5)(3, 5), 3(1,2)+5(0,1)=(3,11)≠v3(1, 2) + 5(0, 1) = (3, 11) \neq \mathbf{v}; with (3,−1)(3, -1), 3(1,2)−1(0,1)=(3,5)=v3(1, 2) - 1(0, 1) = (3, 5) = \mathbf{v}.

Using echelon columns for the column space

After row reduction, the pivot columns of the echelon form are taken as the basis of Col(A)\text{Col}(A), instead of the matching columns of AA. Row operations change the columns, so the echelon columns usually span a different subspace.

Wrong working: for the matrix AA of the worked example in the section on finding a basis, the pivot columns of the echelon form are (1,0,0)(1, 0, 0) and (0,1,0)(0, 1, 0), and {(1,0,0),(0,1,0)}\{(1, 0, 0), (0, 1, 0)\} is given as a basis of Col(A)\text{Col}(A).

Right working: the pivots are in columns 11 and 33, so the basis is made of columns 11 and 33 of the original AA: {(1,2,3),(0,1,1)}\{(1, 2, 3), (0, 1, 1)\}.

Why it happens: the echelon form is the matrix on the page at the end of the computation, and its pivot columns are the simplest vectors in sight.

How to check: every original column must be a combination of the proposed basis. Column 11 of AA, (1,2,3)(1, 2, 3), has third entry 33, while every combination of (1,0,0)(1, 0, 0) and (0,1,0)(0, 1, 0) has third entry 00. With the right basis, column 22 is 2(1,2,3)2(1, 2, 3) and column 44 is (1,3,4)=(1,2,3)+(0,1,1)(1, 3, 4) = (1, 2, 3) + (0, 1, 1).

Applying the matrix in the wrong direction

The change-of-basis matrix PC←BP_{\mathcal{C} \leftarrow \mathcal{B}} takes B\mathcal{B}-coordinates as input and returns C\mathcal{C}-coordinates. When the C\mathcal{C}-coordinates are known and the B\mathcal{B}-coordinates are wanted, PP is applied anyway instead of its inverse.

Wrong working: in the change-of-basis example, C\mathcal{C} is the standard basis and v=(3,1)\mathbf{v} = (3, 1). Multiplying,
Pv=(111−1)(31)=(42)P\mathbf{v} = \begin{pmatrix} 1 & 1 \\ 1 & -1 \end{pmatrix}\begin{pmatrix} 3 \\ 1 \end{pmatrix} = \begin{pmatrix} 4 \\ 2 \end{pmatrix}

and (4,2)(4, 2) is given as [v]B[\mathbf{v}]_\mathcal{B}.

Right working: solve Pc=vP\mathbf{c} = \mathbf{v}, or apply the inverse:
c=P−1v=1−2(−1−1−11)(31)=(21)\mathbf{c} = P^{-1}\mathbf{v} = \frac{1}{-2}\begin{pmatrix} -1 & -1 \\ -1 & 1 \end{pmatrix}\begin{pmatrix} 3 \\ 1 \end{pmatrix} = \begin{pmatrix} 2 \\ 1 \end{pmatrix}


Why it happens: PC←BP_{\mathcal{C} \leftarrow \mathcal{B}} is the matrix that is easy to write, with the B\mathcal{B}-vectors as its columns, and its subscript is easily read left to right, as if it started at C\mathcal{C}. The wrong product still computes, so nothing signals the error.

How to check: rebuild v\mathbf{v} from the answer. 4(1,1)+2(1,−1)=(6,2)≠(3,1)4(1, 1) + 2(1, -1) = (6, 2) \neq (3, 1), while 2(1,1)+1(1,−1)=(3,1)2(1, 1) + 1(1, -1) = (3, 1).

Checking one condition with the wrong count

The theorem that one condition implies the other applies only to sets of exactly n=dim⁡(V)n = \dim(V) vectors. Applied to a smaller set, independence is taken to imply spanning; applied to a larger set, spanning is taken to imply independence.

Wrong working: {(1,0,0),(0,1,0)}\{(1, 0, 0), (0, 1, 0)\} is independent, since neither vector is a multiple of the other, so it is declared a basis of R3\mathbb{R}^3.

Right working: the set has 22 vectors and dim⁡(R3)=3\dim(\mathbb{R}^3) = 3, so spanning has to be checked separately. Every combination a(1,0,0)+b(0,1,0)=(a,b,0)a(1, 0, 0) + b(0, 1, 0) = (a, b, 0) has third entry 00, so (0,0,1)(0, 0, 1) is not in the span and the set is not a basis. Adding (0,0,1)(0, 0, 1) gives the standard basis.

Why it happens: the shortcut saves a whole check and is used so often for nn vectors in Rn\mathbb{R}^n that the condition on the count is forgotten.

How to check: count first. Fewer than nn vectors can never span an nn-dimensional space and more than nn can never be independent, so only a set of exactly nn vectors can be a basis.

Basis and Coordinates FAQ

Is [v]B[\mathbf{v}]_{\mathcal{B}} the same thing as v\mathbf{v}?

+
No, they live in different places. The vector v\mathbf{v} belongs to the space VV, while its coordinate vector belongs to Rn\mathbb{R}^n and is a description of v\mathbf{v} relative to one chosen basis. The two coincide only in the standard basis, which is exactly why the subscript is usually dropped there and nowhere else.Read more →

Which way does PD←CP_{\mathcal{D} \leftarrow \mathcal{C}} convert?

+
It takes coordinates in C\mathcal{C} and returns coordinates in D\mathcal{D}, so the arrow's tail names the input. Reading it left to right applies the matrix backwards, and the error hides itself because the product still has compatible shapes and computes without complaint. The payoff is that chains cancel like dominoes.Read more →

Why is a basis written in script as B\mathcal{B}?

+
The typeface separates the set from the matrix built out of it. Script B\mathcal{B} is a collection with members, while a plain BB is an array with columns, and the two carry the same data in different species. Conflating them produces expressions like Bc\mathcal{B}\mathbf{c}, which multiplies a set by a vector and means nothing.Read more →

Does a vector space have only one basis?

+
No. A nonzero real space has infinitely many bases: {(1,0),(0,1)}\{(1, 0), (0, 1)\}, {(1,1),(1,−1)}\{(1, 1), (1, -1)\} and {(2,1),(1,3)}\{(2, 1), (1, 3)\} are three different bases of R2\mathbb{R}^2. What every basis of a space shares is its size, here two vectors, and that common count is the dimension. Each basis gives a vector exactly one set of coordinates, but different bases give it different numbers.Read more →

How does JPEG use a change of basis?

+
It stores coordinates in a better basis instead of pixel values. An 8×88 \times 8 block of a grayscale photo is a vector in R64\mathbb{R}^{64}, and its pixel values are its coordinates in the standard basis. JPEG rewrites the block in a basis of 6464 cosine patterns, where most of the coordinates are close to zero and can be rounded away, so far fewer numbers need to be kept.Read more →

What basis is a Bézier curve written in?

+
A cubic Bézier curve is a polynomial in P3\mathcal{P}_3 written in the basis (1−t)3(1 - t)^3, 3t(1−t)23t(1 - t)^2, 3t2(1−t)3t^2(1 - t), t3t^3 instead of the monomials 1,t,t2,t31, t, t^2, t^3. Its coordinates in that basis are the control points a designer drags in a font or drawing tool. Both lists are bases of the same four-dimensional space, so moving between them is an ordinary change of basis.Read more →