How Roman Numerals Work

Roman numerals are very different from the “Arabic” system we use; there is no “place value”. And yet, as we’ll see, the two systems have more in common than you might think.

Writing and reading Roman numerals

We’ll start with this 1997 question:

Roman Numerals

I am trying to learn how to read Roman Numerals. What does MCMLXXXVI mean?

Doctor Rob answered, starting with writing::

Dear Robert -

First you need to know the values of the letters, and then you need to know what the positions of the letters mean.  


  I  1
  V  5
  X  10
  L  50
  C  100
  D  500
  M  1000
  V  5000

Each symbol represents the same value no matter where it is placed (unlike our system, where the symbol “1” can mean one, ten, a hundred, etc.); but there are rules about how to place them.

When a letter is repeated one, two, or three times, add up the value that many times.  XXX = 10 + 10 + 10 = 30.  MM = 2000.

V, L, and D cannot be repeated.
I, X, C, and M can be repeated up to 3 times.

So the basic idea is to add values; but …

If you want to repeat a letter 4 times, instead use that letter preceding one of the two next larger values:  

  For 4, don't use IIII, but instead IV 
    (I subtracted from V).  
  For 9, don't use VIIII or VIV, but instead IX 
    (I subtracted from X).  

Similar rules apply for 40, 90, 400, 900.

These would be XL (10 less than 50 = 40), XC (10 less than 100 = 90), CD (100 less than 500 = 400), and CM (100 less than 1000 = 900). This subtractive scheme reduces the number of symbols from four to two.

Write the resulting groups in descending order.

  794 = 500 + 200 + 90 + 4
      = D + CC + XC + IV
      = DCCXCIV

Note that this only works up to 3999.  For larger numbers, more letters would have to be assigned the values of 5000, 10000, and so on.

We’ll see more about larger numbers later.

To read a numeral, reverse this process.  Start at the left, and  read off groups which either consist of repetitions of a single letter, or one of the groups IV, IX, XL, XC, CD, CM (representing 4, 9, 40, 90, 400, or 900, respectively).  You can recognize when these groups occur because the letters are not in descending order. Add up the values of those groups.

   MCMLXXXVI = M + CM + L + XXX + V + I
             = 1000 + 900 + 50 + 30 + 5 + 1
             = 1986

Reading becomes easier when you have experience writing Roman numerals.

Writing them, systematically

This 1999 question gives a slightly different perspective:

Converting from Hindu-Arabic Numerals to Roman Numerals

I need to know the conversion for Roman numerals from our number system. I have searched in my local library, and on the Internet, but I can't seem to find an answer.

If we want to write, say, 2024 in Roman numerals, what do we do? Doctor Rick provided a straightforward procedure:

Hi, Debbie,

Here is how I convert our Hindu-Arabic numerals to Roman numerals. 

Convert one digit at a time. Each digit is converted the same way, except that the symbols are different:

   1s digit: I for 1, V for 5
  10s digit: X for 1 (10), L for 5 (50)
 100s digit: C for 1 (100), D for 5 (500)
1000s digit: M for 1 (1000), nothing for 5 (5000) -- see below.

Hindu-Arabic numerals (our ordinary numbers, which came from India by way of Arabs) are built around place value. The Romans instead had two symbols for what we think of as “the ones” (\(\text{I}=1\), \(\text{V}=5\)), two for “the tens”, and so on.

These are the conversions for each digit:

   1000s         100s          10s           1s
0 = nothing  0 = nothing  0 = nothing  0 = nothing  
1 = M        1 = C        1 = X        1 = I        
2 = MM       2 = CC       2 = XX       2 = II       
3 = MMM      3 = CCC      3 = XXX      3 = III      
4 = MMMM     4 = CD       4 = XL       4 = IV       
5 = nothing  5 = D        5 = L        5 = V        
6 = nothing  6 = DC       6 = LX       6 = VI       
7 = nothing  7 = DCC      7 = LXX      7 = VII      
8 = nothing  8 = DCCC     8 = LXXX     8 = VIII     
9 = nothing  9 = CM       9 = XC       9 = IX       

Put the symbols from each digit together in the same order as they were in our (Hindu-Arabic) numeral system -- from left to right, largest to smallest.

These can largely be memorized, or you can learn the additive and subtractive patterns that produce them.

For example, let's convert 1999:

1000 => M
 900 =>  CM
  90 =>    XC
   9 =>      IX

For my example of 2024, we think: “2000 = MM; 20 = XX; 4 = IV; so MMXXIV”. (Note that the 0 is ignored.)

We do the same sort of thing in reading Roman numerals, in reverse. Given \(\text{MCMXCIX}\), we pull the letters apart each time the symbol value goes down a place (e.g. from \(\text{M}=1000\) to \(\text{C}=100\)), to get \(\text{M,CM,XC,IX}\), and then translate each segment using the table above, or the addition and subtraction principles.

Notice that the system I just described only goes up to 4,999. Actually, sometimes you will see a symbol with a bar over it to represent 1000 times the usual value of a symbol. Thus,
  _           _             _
  V = 5000    X = 10,000    L = 50,000    ...

But I think it's unconventional to have symbols with bars to the right of symbols without, or to intersperse them, as in
          _           _ _
  4000 = MV    9000 = VMV

Instead, the barred numbers should be a solid block to the left of the unbarred numbers. You can write:

Again, more on this later!

Detailed rules for subtraction

Here’s more detail on subtraction, from 1999:

Subtracting Roman Numerals

What are the rules for the "subtraction components" in writing Roman Numerals?

When do you use subtraction in writing a number? This is not always made clear.

Doctor Rick answered again:

These are the limits on the use of the subtraction method, according to the modern rules of Roman numerals:

  I. You can only subtract I, X, C, etc. (powers of 10; not V, L, or D).

 II. You can only subtract a single letter from a single numeral (no IIX or IXX).

III. What you are subtracting cannot be any smaller than 1/10 of what you are subtracting it from. You can only subtract I from V or X, and X from L or C (MIM is not allowed).

So you only subtract a “1” from a “5”; and only in one pair of symbols; and only within a “place”. Putting it negatively,

  • You can’t subtract a 5 (e.g. \(\text{LC}=100-50\) is invalid – that’s written as L alone).
  • You can’t subtract two 1’s (e.g. \(\text{XXL}=50-20=30\) is invalid – that’s written as \(\text{XXX}\)).
  • You can’t subtract from a doubled letter (e.g. \(\text{XCC}=200-10=190\) is invalid – that’s written as \(\text{CXC}\)).
  • You can’t subtract across places (e.g. \(\text{XD}=500-10=490\) is invalid – that’s written as \(\text{CDXC}\)).

These restrictions prevent there being two ways to write the same number, and also prevent ambiguities in reading, like whether \(\text{XIIX}\) would mean \(10+8=18\), or \(11+9=20\), or \(12+10=22\).

Here is a positive way to look at it. When converting an Arabic numeral to a Roman numeral, convert it one digit at a time. Write each piece as a Roman numeral, then stick them all together left to right. 

For instance, 

  1999 = 1000 + 900 + 90 + 9
       = M    + CM  + XC + IX
       = MCMXCIX

This is the point of his table in the previous answer.

There was a strong temptation in 1999 to write the year as \(2000-1=\text{IMM}\). But that was wrong.

The rules make for longer numerals sometimes than you might make by breaking the rules. But they make numerals easier to read, because you can read the Arabic digits off in small groups (M CM XC IX) and the subtractions are easy. Even in ancient Rome, though the place-value system of Arabic numerals (and the zero necessary to make it work) had not been invented, people already thought in terms of decimal groups, the way an abacus works: each digit made up of a collection of ones and fives.

We’ll see this more later: Roman numerals are, to a great extent, representations of an abacus – except for the subtraction rule, which came late in their history. In fact, where we have said “5’s and 1’s”, they might think of “upper and lower parts” of an abacus.

In ancient times and even in the Renaissance, the rules were not very strict (any more than spelling rules were!). You could find examples that violate each of my rules. See these interesting sites:

  Roman Numerals: History and Use   

  Roman Numeral Date Conversion Guide

Both links are now redirected to archived copies. The second of these has this to say:

In actual practice, neither ancient nor modern usage of Roman numerals has conformed rigidly to hard and fast rules. Even the subtraction principle, perhaps the most conspicuous feature of Roman numerals as we know them today, was applied only sporadically by the Roman themselves. Indeed, the appearance of a smaller numeral before a larger one in both ancient and medieval sources will often signify multiplication rather than subtraction. For example, VM for 5,000 or VIIC for 700 (also written as V.M and VIII.C, or with M and C as superscripts).

Any number of other variant or alternative forms may also be found, especially in the imprint dates of books from earlier centuries. These forms include the use of the long versions of the numbers 400 (CCCC) or 40 (XXXX) — these were actually the preferred forms in ancient times and still appear in 20th-century books — as well as XXC for LXXX, IC for XCIX, VIX for XVI, or IIXX for XVIII, to mention only a few of the more obvious variant patterns.

But we will ignore these variations, and follow the rules as they were eventually (more or less) standardized!

Excel, for some reason, has options in its ROMAN conversion function with varying levels of “conciseness” (rule-breaking): For 3999, for example, it gives, successively:

  • MMMCMXCIX following the rules;
  • MMMLMVLIV allowing subtraction of 5’s (e.g. LM = 1000 – 50 = 950)
  • MMMXMIX allowing subtraction skipping a “place” (e.g. XM = 1000 – 10 = 900)
  • MMMVMIV allowing subtraction of 5’s skipping a “place” (e.g. VM = 1000 – 5 = 995)
  • MMMIM allowing maximal subtraction (e.g. IM = 1000 – 1 = 999)

All of this, to my knowledge, is some programmer’s invention, and is never really used.

But … they didn’t have places!

Here is a question from 2015 inspired by the prominence of tens:

When in Rome, Know Your Place — Less a Written Notation for It

I apologize as this may not be strictly a math-related question, but yours was the most welcoming site for such a question.

In your FAQ on Roman numerals, the second section asserts, "Here are the official rules for subtracting letters...."

These rules -- on yours and various other sites -- readily explain how a value can be subtracted only from a neighboring value which is ten times the previous. For example, XLIX is 49; but IL shouldn't be used.

I understand the operation of this rule, but not its development or history.

It seems to me that the Roman numeral system didn't have nor take into account such things as a "ones place," a "tens place," and so on. I would think these would be traits exclusive to the Arabic numeral system. So how did it come to be that there are hard and fast rules about subtracting I from V or X, but not from L, C, D, or M?

Can you show why such a system would have referred to "ten times" a value in a rule about subtraction?

I answered:

Hi, Ken.

The key to the question is that the Romans did indeed have a concept of place value. They just didn't take the step of using it in writing their numbers!

The place where they used the idea was on the abacus. If you think of Roman numerals as a way to write down results obtained on their version of the abacus (or counting board), you can see that in fact they did write one "place" at a time. If they had thought of using the same set of symbols for each place, they would have had a positional notation like ours; but that would have required a way to represent zero, and they had not reached that stage of development.

Here is a replica of such an abacus:

The “fives” are at the top, and the “ones” are at the bottom, with each column a “place”. The columns are labeled I, X, C, and higher (using an early notation we’ll see below), and also for fractions (which are not tenths, but twelfths: “uncia”, from which we get “ounce” and “inch” – more on this below, too). For more on this device, see Roman Counting Instruments, or click on the picture. (The original manufacturer’s instruction manual has been lost, so we are not sure how they handled fractions!)

But the result is that when we write Roman numerals, we can always break them apart into pieces that correspond to our digits, as in

             \ /\  /\   /\  /
              1   9   7    9

Each chunk tells what is in a column on the abacus. Crossing over between places would result in a number, like IL, that could not easily be represented on the abacus.

So their abacus is a perfectly good place value system; they just didn’t take the final step. But it does explain why they wrote numbers as they did.

Is it base 10? Or 2 and 5?

So, is it really base 10? Here’s a question from 2004:

The Base of Roman Numerals

What base does the Roman Numeral system use?  It appears to have two bases.

I answered, starting with a link to a previous answer of mine:

Hi, Emma.

This question is discussed here:

  Base of Roman Numerals 

The system is essentially base 10, since a numeral can always be broken into parts for each power of ten:

  1  9  6  7

It can be described as a combination of bases 2 and 5, since the values of the symbols involved are either 2 or 5 times the value of the previous symbol:

  I    V    X    L   C    D     M
  1    5   10   50  100  500  1000
   *5   *2   *5   *2   *5   *2

Of course, these are not place values, but symbol values! There’s a big difference.

But that doesn't really make it base 2 or base 5, and since it is not a place-value system, the role of 2 and 5 is not very significant.  No powers of 2 or 5 are involved, only powers of 10 times 1 or 5.  That's why I prefer to think of it as a modified base-10 system influenced by base 5.

It is sometimes called “Bi-quinary coded decimal“, which is a very apt description.

It's interesting, though, that the abacus (which IS a place-value system) uses the same trick of splitting each decimal digit into two parts, one base 2 (two beads representing fives, only one of which is actually needed) and one base 5 (five beads representing ones).  Roman numerals, apart from subtractive notation (as in IV for 4), represent well the state of such an abacus, with the digits corresponding to each power of ten showing how many 1's and how many 5's there are in that "digit".

Note that the Roman abacus, as shown above, used only one 5-bead, and four 1-beads (actually sliding buttons). I described the Chinese abacus.

Beyond the thousands

Here’s a question from 1997, introducing how bigger numbers are, and were, written:

Large Roman Numerals

Could you please convert 5000, 1,000,000, and 5,000,000 into Roman numerals?

Doctor Cheryl answered:

I had to look for a while to find the information I remembered about how to write really large numbers in Roman numerals.  According to an old 1960 mathematics textbook, the Roman numeral system worked like this:

     I = 1, V = 5, L = 50, C = 100 and M = 1000.  

If a heavy bar was placed over the numeral that meant it was multiplied by 1000.  A V with a bar over it would stand for 5000.  An M with a bar would be 1,000,000.  How would YOU write your last numeral: 5,000,000?

Presumably, the answer would be \(\overline{\text{MMMMM}}\). But is that legal?

That was asked in 2006, and added to this page:

How do you write a decimal number higher than 4,000,000?

I found it to be interesting that the rules state that you can only use a particular letter 3 times max (if I'm not mistaken).  Therefore if I use MMMM with a bar on top to signify 4,000,000, it would break the 3 letter max rule.  The other way I can think of is to use two bars but would that be right?

Since other symbols besides M are limited to 3 (as we go from III to IV), does that also apply here, with no symbol for 5000 to subtract from?

I answered:

Hi, Arnold.

The basic answer is that the Romans rarely bothered to write such large numbers, so they never developed a convenient way to do it, just several ad-hoc tricks to extend the system a bit. One is the bar (though I think that was a later addition); another earlier trick was to put what we might call parentheses around a number to multiply it by 1000. That is, something like (|) was an early form of M=1000, and they would use ((|)) for 1,000,000 and so on. I don't know whether using double bars is considered valid, either in the sense of having been used historically, or of being commonly accepted today. But it makes sense, and I know some people use it when needed.

This early form for 1000 typically looks like C|Ↄ, or . The symbol for 1,000,000 was . We saw these (and more) on the abacus above.

The 3-times rule is not really a rule, and was not followed by the Romans themselves, who often wrote IIII for 4. The "rule" just arises from the fact that, once the subtraction rule was developed, it was not _necessary_ to use more than 3 of anything. When you get up to MMMM, there is no alternative, so the rule does not really apply; it _is_ necessary to repeat four or more times, if you choose not to use the bar. So my answer to your question would be
  MMMM = 4,000,000

and I wouldn't be bothered by


According to some sources, IV was avoided because the name of the God Jupiter was written as IVPITER, and they wanted to avoid offending him. (That is probably not true.)

Here is one discussion of the details I've mentioned:

  Roman Numerals - How They Work

Look higher on the page for some examples of how the Romans broke the modern "rules".

In that link, we see this inscription as an example of the “(|)” and “|)” symbols:

We think of this as \(\text{MDLXXXIII}=1583\).

Decimals or fractions?

We’ll close with this, from 1998:

Decimals and Roman Numerals

Do you know of any method for representing Roman numerals in a floating point format? For example, does 10.5 = X.V?

“Floating point” is used in computers to represent non-whole numbers, and works like scientific notation; Richard is really asking about decimals.

Doctor Rick answered, focusing on what the Romans did:

Hello, Richard. 

The Romans didn't have a standard way of writing fractions (or decimals).  Usually, they just wrote out the appropriate word, such as "tres septimae" for three-sevenths.

When they needed to do serious calculations with fractions, the Romans used the uncia, a unit that meant 1/12 of anything.  There were names and symbols for different multiples of the uncia.  For example, six unciae, or 6/12, made up the semis.  The semis meant one-half, and its symbol was an S cut in half (this looks a lot like a backward 2.)  Unfortunately, uncia symbols didn't follow any real system, and they were never entirely standardized.

Jeff Miller's page on the "Earliest Uses of Symbols for Fractions and Decimals" has more information about the uncia:

There were symbols, to some extent; here is a list from Wikipedia:

It's important also to understand that Roman numerals are not a place-value system; there is no ones place, tens place, etc., so there is no "place" for a decimal point. If I were to invent a system for writing fractional quantities in Roman numerals, other than writing a fraction with Roman numerals in the numerator and denominator, I would take a cue from the method, occasionally seen, of writing a horizontal bar over a Roman numeral to signify multiplication by 1000:
  M = 1000 * 1000 = 1,000,000

and use, say, a bar under a Roman numeral to signify division by 1000.

This is purely his invention. But it can be fun to extend ancient ideas. Imagine finding an inscription with this number:


That would, in Doctor Rick’s imaginary world, mean 123,456.789. But this would be utterly foreign to Caesar!

1 thought on “How Roman Numerals Work”

  1. Pingback: Arithmetic with Roman Numerals – The Math Doctors

Leave a Comment

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.