Hacker News new | ask | show | jobs
by shou4577 5014 days ago
I can try:

1. Matrix multiplication is indeed defined oddly. To understand why, it can help to think of matrices as "linear transformations". For example, the matrix

| 0 -1 |

| 1 0 |

corresponds to counterclockwise rotation of vectors by 90 degrees (go ahead, try multiplying the vector <1,0> by this matrix - the answer should be <0,1>). Let's call this matrix A. Also, the matrix

|-1 0 |

| 0 1 |

corresponds to reflection over the y-axis (call this matrix B). If we begin with a vector v = <1,1>, then rotate twice by 90 degrees, then reflect over the y-axis, we should get the vector <1,-1> (it helps to draw a picture, but I am limited in these comments). We can figure this out by repeatedly multiplying by matrices: Av = <-1,1>, A(Av) = <-1, -1>, and B(A(Av)) = <1,-1> (you may want to multiply these out to check, then check by evaluating the operations geometrically).

But wait - there is also a matrix which represents this transformation (that is, the transformation which is rotation counterclockwise by 90 degrees twice then reflection over the y axis). It's the matrix

| 1 0 |

| 0 -1 |

which we'll call C (go ahead and check that this matrix works the way that I just said). Since multiplying a vector by C is the same as multiplying the vector by A then A then B, we have mathematically that

Cv = B(A(Av))

Now, it sure would be nice if there was a way to "multiply" matrices together so that the product B(AA) = C. In abstract terms, we want multiplication of matrices to correspond to composition of functions, since we can use matrices to represent functions. If we define multiplication of matrices in the usual "weird" way, then this property holds!

This lets us examine composing functions by multiplying matrices, which is a very powerful tool indeed. Another interesting thing to notice is that this explains why multiplication of matrices is not commutative (that is, order matters). If we rotate counterclockwise by 90 degrees, then reflect over the y axis, that's different than reflecting over the y axis then rotating counterclockwise by 90 degrees. So BA is not equal to AB.

2. I'm not sure that I understand your question here.

3. This question is beyond my ability to answer, so I'll leave it to someone else.

4. On the one hand, there are tricks to see this (e.g. 0.333... = 1/3, so 0.9999... = 3 * 0.3333... = 3 * (1/3) = 1), but I expect that you have seen them and been unsatisfied by them (I don't believe that these are satisfying explanations, personally, because I have simply replaced the unknown fact 0.999... = 1 with the equally unfounded fact 0.333.... = (1/3)).

In order to really understand what's going on, we have to understand what we really mean by 0.999... What is meant by 0.9? This is equal to 9/10. How about 0.99? This is 9/10 + 9/100. 0.999 = 9/10 + 9/100 + 9/1000. Following this reasoning, 0.999... is equal to the infinite sum 9/10 + 9/100 + 9/1000 + ... + 9/10^k + ...

Since there are infinitely many 9s in the decimal, we must add an infinite number of fractions of the form 9/10^k.

We've opened up a can of worms here - how do we add up infinitely many things? Also, if we add up infinitely many things, how can the result possibly be finite?

A Calculus II course will answer these questions rigorously, but let me attempt to make an explanation here.

Think of it as a game of wits. You start. Choose a number less than 1 - any number at all, just so long as it is less than 1. I'll try to find some number k such that 0.9999...999 (with k 9s in it) is closer to 1 than your number.

Suppose that you pick 0.97. That's pretty close to 1, only 0.03 away. But 0.01 < 0.03, and 1 - 0.99 = 0.01, so 0.99 is closer to 1 than 0.97. I win.

You try again, this time picking 0.999878787. That's much closer to 1, but still 0.000121213. Since 0.0001 < 0.000121213, 0.9999 is closer to 1 than 0.999878787. I win again.

In fact, let's suppose that you pick the number x. Since x is less than 1, 1 - x is some positive (but very small) number. No matter how small it is, though, I can find some k such that 1/(10^k) is even smaller (this fact is called the Archimedean principle, and it is one of the fundamental theorems of the real numbers). Another way to think about it is that 1/(1-x) may be very big, but I can find some k such that 10^k is even bigger. But then 0.999...99 (with k 9s) is going to be closer to 1 than your number, and I'll win again.

Now, what does this mean? Since 0.999... is bigger than 0.999...99 (with any finite number of 9s), it is bigger than every number which is less than 1 (by the game we just played). The smallest number which is bigger than every number less than 1 is just 1. Anything smaller just won't do (since there would be numbers between it and 1). This shows that 0.999... is at least 1.

I hope that helps. It isn't as elegant as the featured answer, but maybe it can be a little bit helpful to you.

1 comments

>> 0.333... = 1/3

Indeed, I was aware of this. And as you said, it does not really answer since it just leads to the same question for 0.3333...

I understand the piece on calculus too. My maths background is mostly related to engineering mathematics, and I have generally excelled at it. I later discovered that I am not clear on some "pure" mathematics things. Hypothetically, if counting were taught to me in adulthood, I may have asked a lot of relevant questions that I did not ask in my pre-school and later lost them without knowing them. I am rediscovering some of these questions now.