Skip to content

Affine subspaces

Fabrizio Romano Genovese edited this page Feb 7, 2024 · 5 revisions

For what we need, an affine space can be simply defined as a 'translated vector space'.

Given a vector space $\vec{V}$ of dimension $n$ on some field, we know that every vector $x$ can be uniquely written as a linear combination: $$x = x^1 v_1 + \dots + x^n v_n$$ Where $x^i$ are elements in the base field and $v_i$ are the basis vectors of $\vec{V}$. We call $(x^1, \dots, x^n)$ the coordinates of $x$.

Having fixed $\vec{V}$, each affine $m$-dimensional subspace $\mathfrak{A}$ of $\vec{V}$ comes with:

  • A vector $\mathbf{a}$ of $\vec{V}$, called origin;
  • An associated $m$-dimensional vector subspace of $\vec{V}$, called $\vec{A}$.

These are enough to completely characterize $\mathfrak{A}$: Having chosen a basis $a_i$ for $\vec{A}$, every point of $\mathfrak{A}$ can be uniquely written as:

$$p = \mathbf{a} + p^1 a_1 + \dots + p^m a_m$$

With $p^i$ again ranging in the base field. So we simply denote $\mathfrak{A} := (\vec{A}, \mathbf{a})$. Effectively, $\mathbf{a}$ defines 'by how much' we are translating the 'linear' subspace $\vec{A}$. Every vector space $\vec{V}$ can be trivially considered as an affine subspace of itself by setting $\mathfrak{V} := (\vec{V}, 0)$.

Coordinate representation

Let $\mathfrak{A} := (\vec{A}, \mathbf{a})$ be a $m$-dimensional subspace of the $n$-dimensional vector space $\vec{V}$. Choose a basis $a_1, \dots, a_m$ for $\vec{A}$. Since $\vec{A}$ is a subspace of $\vec{V}$, each $a_i$ is in particular a vector of $\vec{V}$ with coordinates $(a_i^1, \dots, a_i^n)$.

Then we can explicitly denote $\mathfrak{A}$ by:

$$ \mathfrak{A} = \left( \left(\begin{array}{cccccc} a_1^1 & &\dots& & a_1^n\\ \vdots & &\ddots & & \vdots\\ a_m^1 & &\dots& & a_m^n\\ \end{array}\right), \left(\begin{array}{c} \mathbf{a}^1\\ \vdots\\ \mathbf{a}^m\\ \vdots\\ \mathbf{a}^n \end{array}\right) \right) $$

Where $(\mathbf{a}_1, \dots, \mathbf{a}_n)$ are the coordinates in $\vec{V}$ of the origin $\mathbf{a}$.

Calling $A$ the matrix above, then every point $p$ of $\mathfrak{A}$ can be written as: $$p = A x + \mathbf{a}$$ Where $x = (x_1, \dots, x_n)$ is any vector in $\vec{V}$. Unless $A$ has full rank, different vectors of $\vec{V}$ can be mapped to the same point in the affine subspace $\mathfrak{A}$. This is because $A$ is a $m \times n$ matrix of rank $m$.

This coordinate description of the affine subspace can be made canonical as follows:

  1. First, on has to put the matrix $A$ in Reduced row echelon form;
  2. For each $i=1,...,m$, let $r$ be the $i$-th row of $A$ in RREF. Write $c$ for the pivot column of $r$ (the index of its leftmost non-zero entry). Subtract $r$ from $\mathbf{a}$ if $\mathbf{a}_{c}$ is non-zero.

Hence, when working explicitly with coordinates, we can write $\mathfrak{A} := (A, \mathbf{a})$ where $A$ is the canonical matrix spanning $\vec{A}$ and $\mathbf{a} := (\mathbf{a}^1, \dots, \mathbf{a}^n)$ are the coordinates of the canonical origin $\mathbf{a}$.

Affine transformations

The result of transforming a $m$-dimensional affine subspace $\mathfrak{A} = (\vec{A}, \mathbf{a})$ of $\vec{V}$ with an $n \times n$ invertible matrix $M \in GL(\vec{V})$ is the following affine subspace:

$$ M\mathfrak{A} := \left(A M^T, M \mathbf{a}\right) $$

The result of translating an affine subspace $\mathfrak{A} = (\vec{A}, \mathbf{a})$ of $\vec{V}$ by a vector $v$ of $\vec{V}$ is the following affine subspace:

$$ \mathfrak{A}+v := \left(A, b + v\right) $$