News for hackers. Stuff that matters.
Re:Clojure Linear Algebra Refresher, Part 4: Linear Transfor... by btilly on Friday June 16, 2017 @09:23PM (#14573761)
I had not yet read it. Having just fixed it, it is missing the role of a basis. And without it, you'll have trouble figuring out coordinate systems, changing your basis, and so on. Which gives you no way to keep straight such confusing things as the fact that if your coordinate system rotates one way, your representation of things rotates the other. (Try it! Stand up, turn clockwise and see the world spin counter-clockwise!)

Let me offer an abstract example. Consider the polynomials of degree at most 2. There is an obvious basis, namely 1, x, and x^2. A polynomial like x^5 - 3x + 2 can now easily be written in coordinates as (2, -3, 1).

However we have many other coordinate systems that might be convenient. For example suppose that we're sampling data, and can measure p(0), p(1) and p(2). How do we find what polynomial that is? Here is an easy way. We can easily find the new coordinates for our basis vectors: 1 -> (1, 1, 1), x -> (0, 1, 2), x^2 -> (0, 1, 4). That means that we can write down the matrix representing the identity transform (nothing happened), going from the basis we have, to the new coordinate system:

    ( 1  1  1)
    ( 1  2  3)
    ( 1  2  4)
That's the change of basis matrix one way. Invert it.

    ( 2 -1  0)
    (-3  2 -1)
    ( 1 -2  1)
And now we can go the other way. The polynomial that we want from our sample data will be (2-3x+x^2)p(0) + (-1+2x-2x^2)p(1) + (-x+x^2)p(2).

There are a lot of problems where linear algebra comes up that you can think through more clearly if you think about things this way (complete with the role of the basis!) than if it isn't fully digested.

As for a better book, well, I already recommended Down With Determinants! :-)

Re:Clojure Linear Algebra Refresher, Part 4: Linear Transfor... by joshstaiger on Monday June 19, 2017 @12:47PM (#14588332)
I'm not sure if you'll see this 2 days later, but I've been trying to make heads or tails of your example and I think there’s a mistake in there somewhere.

Maybe I'm hopelessly lost, but, for one, the inverse of

    ( 1  1  1)
    ( 1  2  3)
    ( 1  2  4)
is not:

    ( 2 -1  0)
    (-3  2 -1)
    ( 1 -2  1)
On the off chance you see this, any pointers?
Re:Clojure Linear Algebra Refresher, Part 4: Linear Transfor... by btilly on Wednesday June 21, 2017 @08:45PM (#14609291)
I did not see it.

As I commented in email, I did it by hand while very tired and made multiple mistakes.

Re:Clojure Linear Algebra Refresher, Part 4: Linear Transfor... by dragandj on Saturday June 17, 2017 @04:09AM (#14574846)
Down with Determinants is a paper, and I guess it is super-clear once you know the stuff already. For non mathematicians, and people who'd like to learn linear algebra? Right...

Anyway, who is missing the role of the basis? It's in practically every textbook, including the one I used.

I agree with the maths that you've written, but it's the same thing that the textbook explains, practically in the same way. The road to understanding is not the same for all people, I guess...

Re:Clojure Linear Algebra Refresher, Part 4: Linear Transfor... by alimw on Sunday June 18, 2017 @11:16AM (#14580986)
Sheldon Axler, Linear Algebra Done Right.

There are now videos! http://www.linear.axler.net/LADRvideos.html

Re:Clojure Linear Algebra Refresher, Part 4: Linear Transfor... by dragandj on Saturday June 17, 2017 @04:29AM (#14574904)
BTW, Thank you for all these suggestions. Although I am not sure whether they make any difference for a programmer who is not yet fluent in linear algebra, I think they are great for people to explore once they are a bit more confident with the basic stuff.