Why is a negative times a negative a positive?

Minus times minus results in a plus,
The reason for this, we needn't discuss.
                     - Ogden Nash

The swimming pool
Here is an anology of filling or draining a swimming pool:

If you are filling the pool at a rate of 3 litres per second (+3) in 4 seconds (+4) the amount of water will have increased by 12 litres (+3 * +4 = +12).

If you are draining the pool at a rate of 3 litres per second (-3) in 4 seconds (+4) the amount of water will have decreased by 12 litres (-3 * +4 = -12).

If you are filling the pool at a rate of 3 litres per second (+3) 4 seconds ago (-4) the amount of water was 12 litres less (+3 * -4 = -12).

If you are draining the pool at a rate of 3 litres per second (-3) 4 seconds ago (-4) the amount of water was 12 litres more than it is now (-3 * -4 = +12).

This anology may provide students with an intuitive basis for the multiplication rules of positive and negative numbers.
This example may not work for you, and you might want to read others below.

Number Line
Imagine a number line on which you walk. Multiplying x*y is taking x steps, each of size y. Negative steps require you to face the negative end of the line before you start walking and negative step sizes are backward (i.e., heel first) steps. So, -x*-y means to stand on zero, face in the negative direction, and then take x backward steps, each of size y.

Patterns
Let's see how a mathematician might understand what's going on when a negative number is multiplied by a negative number. Here's a plausibility argument drawn from multiplication patterns:
          3 x -3 = -9
          2 x -3 = -6
          1 x -3 = -3
          0 x -3 =  0
         -1 x -3 =  ?

A Mathematical Explanation
If we can agree that a negative number is just a positive number multiplied by -1, then we can always write the product of two negative numbers this way:
   (-a)(-b) = (-1)(a)(-1)(b) = (-1)(-1)ab 

For example,

    -2 * -3 = (-1)(2)(-1)(3)
 
            = (-1)(-1)(2)(3)

            = (-1)(-1) * 6

So the real question is,

   (-1)(-1) = ?

and the answer is that the following convention has been adopted:

   (-1)(-1) = +1

This convention has been adopted for the simple reason that any other convention would cause something to break.

For example, if we adopted the convention that (-1)(-1) = -1, the distributive property of multiplication wouldn't work for negative numbers:

   (-1)(1 + -1) = (-1)(1) + (-1)(-1)
	
        (-1)(0) = -1 + -1

              0 = -2

As Sherlock Holmes observed, "When you have excluded the impossible, whatever remains, however improbable, must be the truth."

Since everything except +1 can be excluded as impossible, it follows that, however improbable it seems, (-1)(-1) = +1.

More Mathematical Explanation
It may seems like someone just made the rule up out of thin air, with no particular reason why the answer should be positive. But there is a chain of reasoning -- a mathematical "argument" -- that shows why the rule *has* to be that negative times negative equals positive. Here's how the reasoning goes:

(1) Zero times anything equals zero.

(2) Every number has exactly one additive inverse. This means if N is a positive number, then -N is its additive inverse, so that N + (-N) = 0. Likewise, the additive inverse of -N is N.

(3) We want negative numbers to obey the distributive law. This says that

a*(b+c) = a*b + a*c

(4) Now, we are forced to accept a new law, that negative times positive equals negative. This is because we can use the distributive law on an expression like

2*(3 + (-3)).

This equals 2*(0), which is zero. But by the distributive law, it also equals

2*3 + 2*(-3).

So 2*(-3) does the job of the additive inverse of 2*3, and therefore 2*(-3) is the additive inverse of 2*3. But the additive inverse of 6 is just -6. So 2 times -3 equals -6.

(5) Next, we are forced to accept another new law, that negative times negative equals positive. It's a lot like the example in (4). We use the distributive law on, say,

-3*(5 + (-5)).

This is again equal to zero. But by the distributive law, it also equals

-3*5 + (-3)*(-5).

We know the first thing, (-3*5) equals -15 because of the law in (4). So (-3)*(-5) is doing the job of the additive inverse of -15. We know -15 has exactly one additive inverse, namely 15. Therefore,

(-3)*(-5) = 15.

A Proof
    Let a and b be any two real numbers. Consider the number x defined by

      x = ab + (-a)(b) + (-a)(-b).

    We can write
      x = ab + (-a)[ (b) + (-b) ]       (factor out -a)
        = ab + (-a)(0)
        = ab + 0
        = ab
      
    Also,
      x = [ a + (-a) ]b + (-a)(-b)      (factor out b)
        = 0 * b + (-a)(-b)
        = 0 + (-a)(-b)
        = (-a)(-b)
      
    So we have

          x = ab
    and
          x = (-a)(-b)

    Hence, by the transitivity of equality (if a = b, and a = c, then b = c), we have

          ab = (-a)(-b)

Extracted from Math Forum: Ask Dr. Math