I was introduced to an interesting way of multiplying two numbers (integers greater than 0) recently, at a Tudor re-enactment at Kentwell Hall. It took me a while to realise what was going on behind the scenes, at least in terms of things I already understood. As it also made me think in a new way about things like multiplication and number bases, I thought I’d try to explain it here.
All the stuff I want to say about this is too long for one article. This article will be about the interesting multiplication, and I’ll go into representing numbers in another article. It’s relevant because the multiplication was done using Roman numerals. I’ll use Roman numerals some of the time here, but not go into all the details as they will be in the other article.
I’ll be using a version of Roman numerals that might be unfamiliar to you, because this is how I was shown it. There are two things that are likely to be different:
- J is the last I in a run of Is (this is a practice that carried on for a surprisingly long time)
- There’s no subtraction, only addition. This means that 9 is VIIIJ and not IX (or JX).

The method for multiplying two numbers
The method puts the two numbers being multiplied side-by-side in columns, and repeatedly halves the number in one column and doubles the other. It doesn’t really matter which column you halve and which you double, or whether you put the bigger number on the left or the right, but I’ll pick one way round for simplicity. So, the method is:
- Divide your paper into a left column and a right column.
- Put the smaller number at the top of the left column and the bigger number at the top of the right.
- Repeatedly halve the smaller number, writing each new number in its own row. Throw away any fractions (so 7 halves to 3). Stop when you get to 1.
- Each time you halve the left number, double the right number to fill in the gaps in the new rows you just added.
- Read down the left column, picking out rows where it has an odd number. Take from those rows the number in the right column.
- Add together the numbers you have taken from the right column.
An example
The way to multiply two numbers was introduced to me using Roman numerals, so I’ll use them here (but switch to Arabic numerals shortly). I’ll now calculate XXIIJ multiplied by XXXVIJ:
To halve | To double |
---|---|
XXIIJ | XXXVIJ |
XJ | LXXIIIJ |
V | CXXXXVIIJ |
IJ | CCLXXXXVJ |
J | DLXXXXIJ |
Add: XXXVIJ, LXXIIIJ, CXXXXVIIJ, DLXXXXIJ
Answer = DCCCLJ
The same thing but in Arabic numerals:
To halve | To double |
---|---|
23 | 37 |
11 | 74 |
5 | 148 |
2 | 296 |
1 | 592 |
Add: 37, 74, 148, 592
Answer = 851
A brief recap of normal long multiplication
Before I start explaining this method, I think it will be helpful to recap the method I’m more familiar with – long multiplication using Arabic numerals.

Instead of trying to do this in one go, we break it down into steps. The first set of steps creates some partial answers, and the last step brings these partial answers together into the final answer. The first set of steps are driven by the digits of the bottom number (823). We work through each of these digits in turn, multiplying that digit into all of the other number. However, simply doing that would ignore the fact that, while the 3 above means 3, the 2 actually means 20 and the 8 actually means 800. So, before we write the partial answers that come from them, we write down 1, 2, etc. zeroes in the right-most columns of the space for the answers (shown in red below). This has the effect of multiplying those answers by 10, 100 etc.

There aren’t any zeroes in either number being multiplied, but if e.g. the bottom number were 803 rather than 823 then we can either say the partial answer from the 0 in 803 is itself 0 or we can skip that partial answer entirely.
An alternative way of looking at normal long multiplication
It might seem odd, but we will now approach the same sum as above in a slightly different way, and will still end up with the same answer. We’re now heading in the direction of the other method.
Before we did these sums to get partial answers:
- 3 * 467 = 1,401
- 20 * 467 = 9,340
- 800 * 467 = 373,600
(we thought we were doing e.g. 2 * 467 but the effect of writing the zero first means it was 20 * 467)
In this version, instead of repeatedly multiplying the digits of the bottom number by 10, we’ll multiply the digits of the top number by 10. These will lead to slightly different sums, but identical partial answers (and hence an identical final answer). So we’ll do:
- 3 * 467 = 1,401
- 2 * 4,670 = 9,340
- 8 * 46,700 = 373,600
The other difference in this version is how we will pick the next digit of the bottom number. Previously, we first picked out the right-most digit and then worked to the left taking the next digit, wherever it happened to be. In this version we’ll pick only the right-most digit. To get the different digits to take turns being the right-most digit, we’ll repeatedly divide the bottom number by 10 while throwing away any fractions.
So the bottom number will be:
- 823 -> multiply the top number by 3
- 82 -> multiply the top number by 2
- 8 -> multiply the top number by 8
If we combine these two differences, the steps we take to get the partial answers are:
- 823 -> pick the last digit -> 3
3 * 467 = 1,401 - divide 823 by 10 -> 82 -> pick the last digit -> 2
multiply 467 by 10 -> 4,670
2 * 4,670 = 9,340 - divide 82 by 10 -> 8 -> pick the last digit -> 8
multiply 4,670 by 10 -> 46,700
8 * 46,700 = 373,600
As we multiply one number by 10 for each step, we’re dividing the other number by 10 for each step.
This is as far as we’ll go with this kind of long multiplication. We’ll park long multiplication for a bit as we now need to think about number bases, specifically base 10 and base 2 (binary).
Numbers in base 10 and base 2
If you had the multiplication 23 * 17 you could write it out long-hand like this:

For convenience we often think of them as grouped like this:

Rather than counting each time to check that there are 23 individual lots of 17, we group them into chunks of 10. We have 2 groups of 10, with 3 left over. We can crunch these down a bit to simplify things, by replacing the 10 separate 17s in each chunk with the single 170 that has the same value.

23 * 17 means we have 2 lots of (10 * 17) and 3 lots of 17. This is what we were doing before with the long multiplication. It might seem odd to begin with, but we could also group those 23 lots of 17 differently and still have the same total number of 17s (and hence the same final answer).

The groups have 16, 4, 2 and 1 blobs inside them. Previously, the sizes of the groups were all powers of 10 – we used 1 and 10, and would have continued with 100, 1,000 etc. if we needed to. I.e. we start with groups of size 1, and then each size of group is 10 times the size of the group before. Here, the sizes of the groups are all powers of 2 – 1, 2, 4, (we didn’t need 8) and 16. We start with groups of size 1, and then each size of group is 2 times the size of the group before.
It’s important to remember that we still have the same total number (23), regardless of how we group things. All we are doing is changing some internal details. As we did before, we’ll crunch things down so that each group is replaced by a single thing with the same total value.

This, in a hand-wavy kind of way, is using base 2 or base 10 to show the same numbers. The less hand-way way usually says that, reading left to right in base 10, 23 means:
- 2 lots of 10
- 3 lots of 1.
Similarly, reading left to right in base 2 or binary, 10111 means:
- 1 lot of 16
- 0 lots of 8
- 1 lot of 4
- 1 lot of 2
- 1 lot of 1
In base 10, the largest digit we can use is 9 – if we want a number bigger than that we use the next column. It’s no coincidence that the largest digit is 1 less than the size of the base (9 is 1 less than 10). Similarly, in base 2, the largest digit we can use is 1 (which is again 1 less than the size of the base). As in base 10, if we want a number bigger than 1, we use the next column. That’s why we have at most one group of a given size in the diagram above where we grouped 23 into groups by powers of 2, but when we grouped by powers of 10 we could have several groups of the same size (up to 9).
A small but important feature of binary numbers is that all even numbers end in 0 (their right-most digit is 0) and all odd numbers end in 1. The only power of 2 that’s odd is the first one – there’s no way of getting an odd number by adding up just the other powers (2, 4, 8 etc.).
- 10110 (22) is even
- 10111 (23) is odd
- 11000 (24) is even
- 11001 (25) is odd
- Etc.
We finally have all the pieces we need to explain what’s going on in the original method for multiplication.
Putting it all together
We’ll now do 17 multipled by 23 using the halving, doubling and adding method. Because I think it’s the clearest way of seeing what’s going on behind the scenes I’ll represent the numbers in binary rather than base 10 or as Roman numerals. In binary, the sum we’re trying to calculate is:

I’ve put the headings for each column (1, 2, 4 etc.) and the equivalent base 10 number to the side, to try to explain what’s going on. Like with the second version of base 10 long multiplication, we will:
- Work through the digits of the bottom number by repeatedly dividing it by 2. In binary, this is the equivalent of dividing a base 10 number by 10 – the digits just get shifted one column to the right. As before, we will throw away any fractional part.
- As we divide the bottom number by 2, we will multiply the top one by 2.
The steps that 23 will go through as we repeatedly halve it are:

The steps that 17 will go through as we repeatedly double it are:

Putting these together to get a series of partial answers gives us the following. The grey shading shows that we’re ignoring all but the right-most column of the lower number.

Adding up the partial answers gives us:

I hope you can see that this is the same thing as was happening behind the scenes at the beginning, when we were multiplying Roman numerals. You don’t need to know your times tables – you just need to be able to halve, double and add, and then you can multiply any two non-negative integers.
Historical sources
I haven’t found any historical sources that put this method of multiplying (doubling, halving and adding Roman numerals) into the Tudor period. They certainly had what we would recognise as the modern method (long multiplication using Arabic numerals). This is an extract of the book The Ground of Artes by Robert Recorde, first published in 1543:

However, the existence of the modern method doesn’t mean that other methods weren’t also used. A modern maths text book showing how to e.g. integrate the area under a curve just means that some people alive today know how to do this. This will give the most accurate answer, but non-maths-experts might use a simpler technique that gives a good enough approximation.
A friend has written up a similar but different method of multiplication using a counting cloth. There are also instructions for addition etc. There are historical sources for this method, such as An introduction for to Lerne to Recken, written in 1539.
The doubling / halving / summing method, or a close variation of it, is:
- Called The Russian Peasant method (I can’t find any historical sources for this);
- Described in the Rhind Mathematical Papyrus, which dates from about 1550 BC;
- Called the Ethiopian Method (again, I can’t find any historical sources for it).
Summing up
Most adults, at least in the West, are familiar with long multiplication, base 10, and Arabic numerals. In fact base 10 and Arabic numerals are probably so common that alternatives are probably rarely thought about. Roman numerals are an alternative to Arabic numerals, base 2 is an alternative to base 10, and there’s more than one way to do long multiplication. I hope that this has all made at least a little sense!
UPDATE 23/7/2022: Thanks to my friend Andrew for spotting a deliberate mistake in my maths, which is now fixed.
UPDATE 25/7/2022: Added to the historical sources section, to capture things that came up in discussion elsewhere