For the past few months I have been learning about the fundamental concepts of linear algebra in order to make my life as an aspiring game developer easier. Whilst working on the topic of null space, I've come across the following definition:

The null space of an $m × n$ matrix $A$ is the set of all solutions of the homogeneous equation $Ax = 0$.

As I looked into the term 'homogeneous equation', I realised that this was a concept that I am completely unfamiliar with, and most likely not one that can be understood quickly.

As I peer into the rabbit hole, I see that:

1). I order to understand what is meant by 'homogeneous equation', I will probably have to understand differential calculus.

2). In order to understand differential calculus I will probably have to have at least a basic grasp of calculus.

3). In order to have a basic grasp of calculus I will probably have to understand mathematical functions.

I haven't spent any time learning about any of the aforementioned topics.

The problem I have now is that, in order to understand the definition of null space properly, I will probably have to go through a multiple-month-detour around the topics that lead into homogeneous equations.

So my question to the reader is; is this worth it? For somebody who is learning about linear algebra for the purposes of game programming, is it worth spending multiple months learning about these topics, and if so what would be a good starting point? Or, would I be better off grazing over the idea of 'homogeneous equations'?

  • $\begingroup$ Yes, it is worth it and you will be surprised that it is not difficult - after you have tried it, of course. $\endgroup$ – Dietrich Burde Aug 19 at 12:23

As you have discovered, yes, you will certainly find the term 'homogeneous' used in the context of differential equations.

However, that is of no importance for your system of equations. It's the same word, but a different context. So your chain of reasoning about the rabbit hole doesn't apply.

Note, differential equations are common when modelling physical systems so you may end up studying them after all, depending on what kind of games you aspire to write, but you don't need to study them to solve $Ax=0$

As already pointed out, in the linear systems, linear algebra context, it means the right-hand side of the equation $Ax=0$ is zero. If it is not zero, it would be inhomogeneous.


All those topics are worthwhile learning about, for their own sakes and to build mathematical maturity, but they are not needed if all you're interested in is linear algebra.

It's just terminology.

An equation $Ax = b$, where $A$ is a known matrix, $b$ a known vector and $x$ an unknown vector, is called a linear equation. It is called homogeneous if $b=0$, and inhomogeneous otherwise.


An homogenous linear equation is simply an aquation of the type$$a_1x_1+a_2x_2+\cdots+a_nx_n=0$$and a system of homogeneous linear equations is just a system of the type$$\left\{\begin{array}{l}a_{11}x_1+a_{12}x_2+\cdots+a_{1n}x_n=0\\\vdots\\a_{m1}x_1+a_{m2}x_2+\cdots+a_{mn}x_n=0.\end{array}\right.$$This has nothing to do with differential calculus.

  • $\begingroup$ So is it the case that in the homogeneous linear equation, $a$ is a vector, and in the system of homogeneous linear equations, $a$ is a matrix? Is that the difference between homogeneous linear equation and system of homogeneous linear equations? $\endgroup$ – Ryan Walter Aug 19 at 12:51
  • $\begingroup$ That's a way of seeing it, yes. $\endgroup$ – José Carlos Santos Aug 19 at 13:16

Let's illustrate with just one equation in two variables.

This one is homogeneous, because the right side is $0$: $$ 3x + 2y = 0. $$

This one is not: $$ 3x + 2y = 19. $$

The solutions to the homogeneous equation form a line through the origin $(0,0)$. Whenever $(x,y)$ is a solution, so is $(ax, ay)$ for any value of $a$. That's why the adjective "homogeneous" is appropriate. The vector sum of two solutions is again a solution. In linear algebra terms, that line is a subspace. It's the kernel or null space of this system of equations. The adjective "null" is appropriate because of the $0$ on the right. (In this case the "system" has just one equation.)

The solutions to the second equation form a line too - but it does not go through the origin. It's parallel to the solution space for the homogeneous equation. It's not a subspace.

If you keep this example in mind you should be able to read and understand the generalizations to more equations in more variables.

As others have pointed out, you will indeed need this kind of material for game development.


The set of equations $Ax=0$ is of the form

$a_{i1}x_1 + \ldots + a_{in}x_n = 0$

for $i=1,\ldots,m$.

The equations are homogeneous as the polynomials $f_i(x_1,\ldots,x_n)= a_{i1}x_1 + \ldots + a_{in}x_n$ are homogeneous of total degree 1. Note that all terms $a_{ij}x_j$ have degree 1 (=exponent of variable $x_j$).

On the other hand, the equation

$a_{i1}x_1 + \ldots + a_{in}x_n = b$

with $b\ne0$ is inhomogeneous since the polynomial $f_i(x_1,\ldots,x_n) = a_{i1}x_1 + \ldots + a_{in}x_n - b$ is inhomogeneous.

In a homogeneous polynomial all terms have the same degree. For instance, $x_1x_2 + x_2x_3$ is homogeneous of total degree 2, while $x_1x_2 + x_3$ is not homogeneous. Hope it helps.

  • $\begingroup$ To be honest, I really didn't understand any of that. Not familiar with the terms polynomial, lhs nor what you mean by 'total degree 1'. $\endgroup$ – Ryan Walter Aug 19 at 12:31
  • $\begingroup$ See my added comment, please. $\endgroup$ – Wuestenfux Aug 19 at 12:34

It is eeasier to grasp from the point of view of algebra. It is a notion which used in Calculus, but not a notion from Calculus.

Consider a polynomial with several variables, e.g. $F(x,y,z)=1+x^2+4xy+ xyz+y^3+y^2 z$.

This polynomial is a sum of monomials, which involve some or all the indeterminates. Each monomial has a degree w.r.t. each indeterminate (the exponent of the indeterminate in the monomial), and a total degree, which is the sum of the degrees w.r.t. each indeterminate.

Here, $xyz$ has degree $1$ in each of $x,y,z$ and total degree $3$. the monomial $y^2z$ has degree $0$ in $x$, degree $2$ in $y$, degree $1$ in $z$ and, again, $3$ as total degree.

A polynomial is homogeneous if all its monomials have the same total degree. The polynomial $F(x,y,z)$ is not homogeneous, since it has monomials of total degree $0,2$ and $3$.

However, it is easy to homogenise it, completing for instance each monomial with a fourth indeterminate, say, $t$: $$F_{\text{hom}}(x,y,z,t)=t^3+x^2t+4xyt+xyz+y^3+y^2z.$$ Hope this helps.

  • $\begingroup$ Sorry, maybe I could have been even clearer about this in the question, but I really don't understand the background of what you are saying. Terms you are using such as 'polynomial', 'monomial', 'indeterminate', 'exponent', 'total degree', have no meaning to me since I haven't done any work on these topics. The question was more about whether these topics are worth going into for an aspiring game developer, and if so, where would be a good starting point. $\endgroup$ – Ryan Walter Aug 19 at 12:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.