You've taken the usual approach of explaining matrix operations as an unmotivated "this is what we do" and then tried to layer linear transformations as a weird abstract thing which somehow relates. Most people do this, and it makes sense for people who don't want to actually understand.
If you want people to actually understand, the relationship goes the other way. Linear transformations are the thing we really care about, and matrices happen to be the most convenient way to write them.
More specifically if T is a linear transformation from V to W, with bases (v_1, ..., v_n) and (w_1, ..., w_n), then then we can write down M = (T(v_1) T(v_2) ... T(v_n)). So far that's just a rectangular array of numbers, uniquely defined for the linear transformation. Now if we have a vector v = a_1 v_1 + a_2 v_2 + ... + a_n v_n then just tracing through linearity, we get that T(v) is Mv with the regular matrix multiplication. Furthermore we can now prove that any rectangular matrix defines a unique linear function with that rule.
The result? When you have 2 vector spaces with a basis for each, each linear function gives a unique matrix, and each matrix gives a unique linear function. Matrices are just convenient ways of writing down linear transformations.
OK, now if S is a linear transformation from W to U, and we have a basis for U, then what about the function S o T defined by S o T(v) = S(T(v))? If you work it out, it is a linear function, and its matrix is the usual matrix multiplication. So matrix multiplication is the same as function composition for linear functions.
Here is something fun. You know the associative law? That magically just works after a ton of calculations for matrices? Well, here is why it works. For any three linear transformations R, S, and T which can be composed, and any vector v, by definition:
((R o S) o T)(v) = (R o S)(T(v)) = R(S(T(v)))
(R o (S o T))(v) = R((S o T)(v)) = R(S(T(v)))
Which means that functions under composition are associative. Since matrix multiplication is just a way of writing function composition, it must also be associative. QED!
As you move through things like change of basis matrices, it is all a lot easier to understand starting from the point of view of linear functions as being fundamental, and matrices just being a way to represent it with a given pair of bases.
I'm not so sure about that. I intentionally direct the reader to the textbook for real understanding. The aim of the article is to connect the dots from that textbook to clojure code, as is stated at the beginning. I am not a mathematician, nor I think a blog post is enough on its own to teach someone linear algebra.
If your goal is real understanding, the approach that I stated is the right one. If you've learned it the other way and wish to actually understand it, you'll still have to learn the approach that I stated.
Your goal is explicitly not real understanding. And most textbooks do it in the order that you did. (Partly because professors think that most students aren't going to try to understand, so there is no point in giving explanation.) So you probably made the right choice.
But I would still like to see even a passing mention that matrices of just a representation of a linear function given two bases, and matrix multiplication is function composition. That could set a lightbulb on for someone struggling through a problem.
You've taken the usual approach of explaining matrix operations as an unmotivated "this is what we do" and then tried to layer linear transformations as a weird abstract thing which somehow relates. Most people do this, and it makes sense for people who don't want to actually understand.
If you want people to actually understand, the relationship goes the other way. Linear transformations are the thing we really care about, and matrices happen to be the most convenient way to write them.
More specifically if T is a linear transformation from V to W, with bases (v_1, ..., v_n) and (w_1, ..., w_n), then then we can write down M = (T(v_1) T(v_2) ... T(v_n)). So far that's just a rectangular array of numbers, uniquely defined for the linear transformation. Now if we have a vector v = a_1 v_1 + a_2 v_2 + ... + a_n v_n then just tracing through linearity, we get that T(v) is Mv with the regular matrix multiplication. Furthermore we can now prove that any rectangular matrix defines a unique linear function with that rule.
The result? When you have 2 vector spaces with a basis for each, each linear function gives a unique matrix, and each matrix gives a unique linear function. Matrices are just convenient ways of writing down linear transformations.
OK, now if S is a linear transformation from W to U, and we have a basis for U, then what about the function S o T defined by S o T(v) = S(T(v))? If you work it out, it is a linear function, and its matrix is the usual matrix multiplication. So matrix multiplication is the same as function composition for linear functions.
Here is something fun. You know the associative law? That magically just works after a ton of calculations for matrices? Well, here is why it works. For any three linear transformations R, S, and T which can be composed, and any vector v, by definition:
((R o S) o T)(v) = (R o S)(T(v)) = R(S(T(v))) (R o (S o T))(v) = R((S o T)(v)) = R(S(T(v)))
Which means that functions under composition are associative. Since matrix multiplication is just a way of writing function composition, it must also be associative. QED!
As you move through things like change of basis matrices, it is all a lot easier to understand starting from the point of view of linear functions as being fundamental, and matrices just being a way to represent it with a given pair of bases.
If your goal is real understanding, the approach that I stated is the right one. If you've learned it the other way and wish to actually understand it, you'll still have to learn the approach that I stated.
Your goal is explicitly not real understanding. And most textbooks do it in the order that you did. (Partly because professors think that most students aren't going to try to understand, so there is no point in giving explanation.) So you probably made the right choice.
But I would still like to see even a passing mention that matrices of just a representation of a linear function given two bases, and matrix multiplication is function composition. That could set a lightbulb on for someone struggling through a problem.
https://news.ycombinator.com/item?id=14480559https://news.ycombinator.com/item?id=14497867https://news.ycombinator.com/item?id=14549007