illuminating science

22/2/2006

Russian Pesant Multiplication

Filed under: — Joel @ 3:54 pm

So I was reading this old book of mathematical (and other) curiosities recently and I came across a method that Russians used to use to multiply two numbers. A little Googling reveals the technique to be Russian Peasant Multiplication. It allows to you multiply any two numbers with without knowing your times tables - all you need is to be able to do addition plus doubling and halving numbers.

Here’s how it works. Take your two numbers, e.g., 42 times 24. Double the first number and halve the second, at each step ignoring any remainder:

   42 x 24
   84 x 12
  168 x 6
  336 x 3
  672 x 1

Then, cross out the lines with an even number in the righthand (halving) column:

   42 x 24
   84 x 12
  168 x 6
  336 x 3
  672 x 1

Then, simply add up all the numbers remaining in the left-hand (doubling) column:

336 + 672 = 1008

A quick check on Google shows that’s the right answer!

The proof, which I worked out through a little scribbling on the fogged up glass of my shower before I went to bed last night, is a really elegant piece of mathematics involving binary numbers. I won’t post it here, in case anyone fancies having a go themselves - it’s not that hard, but it’s quite clever. That’s one thing I’ve always loved about mathematics - there are these incredibly beautiful results which just drop out, and the proofs are definite and precise and often, well, beautiful!

Now, I wonder how fast this procedure is compared to “conventional” multiplication? There’s probably some small gain for smaller numbers (someone suggested that peasants might have used stones to keep count of their smaller numbers) but I suspect once you’re into 3 or 4 digit numbers, you’d be better off with your timetables. I wonder if there’s some analysis of the number of steps in each case?

Rowan Says:

I’ve seen this neat technique before somewhere, and I also recall the proof being particularly simple and elegant.

I didn’t think there would be much loss in speed over conventional multiplication for big numbers until you get to numbers that are too big to sanely do by hand but I decided to test this anyway.

So, out with the stopwatch, and it’s time to work out the answer to: 3692 x 498

By the Russian Peasant Technique: 2 minutes 23 seconds
By conventional multiplication: 1 minute 27 seconds

Remarkably I got the same answer each way, so presumably no mistakes were made in my first multiplication by hand for a very long time indeed.

Even for a smaller multiplication like 63 x 14 conventional multiplication was faster (though just working it out mentally first was much faster again).

So there you go, one drastically unscientific (for all sorts of reasons) comparison shows conventional multiplication to be quite a lot faster.

 
Mike Says:

I am writing a paper on the Russian peasant algorithm and I want to include the proof. I’ve searched high and low but have been unable to find it. Joel, is there any way that you can send me the proof that you figured out? Thanks in advance for any help.

 

Powered by WordPress