Hacker News new | past | comments | ask | show | jobs | submit login

> For example: III represents 3 things, so III + II = IIIII For simple commerce application that is simpler, I just have to then remember that IIIII = V, and VV = X and XXXXX = L, LL = C. Armed with just those simple rules I could probably get by in the market place in Rome.

I'm not sure having to look at all the possible conversions of a context free grammar to reduce the state to its minimum is actually easier than some simple arithmetic in our current system.




Just thinking about how they work here, it looks like Roman numerals are effectively a base 5 notation, with a special behavior for 5n - 1.

In base 10 math there are 18 outcomes for adding two digits, and you have to do carry operations for 9 of them. With carries there are 20 and you have special cases for 10. In Roman numerals there are 10 outcomes, you have to do carries for 5 of them, special casing for two (4 and 9), the numbers are at least one digit longer and non uniform, so it's harder to line up the columns to do an addition in the first place.

No wonder algebra was invented in Arabic.


And I'm betting that the 5n-1 behavior was probably only used by those with education, and may have even been a class distinguishing numeric feature, with the benefit of making numerals slightly impenetrable to those who didn't know the trick.


> Just thinking about how they work here, it looks like Roman numerals are effectively a base 5 notation, with a special behavior for 5n - 1.

This doesn't seem quite accurate. Roman numerals are organised around multiples of 5, whereas a base-5 system should be organised around powers of 5.


In the general case maybe not, but to get by in a marketplace you'd need just those one he listed... like.. 3 or 4 things. 5, 10, 100, 1000. Most people can remember 3 or 4 things. Children can do it, let alone market vendors who are used to considering that 5 chickens = 1 goat. (Inflation these days!)


That's just addition. Do you only need addition in a marketplace? Subtraction requires you convert to another form prior to actually subtracting, so you have to know what form you want. Multiplication and division? Harder.


You'd use the take-away method.

XX - III =

XVIIIII

- III =

XVII

It's literally just addition in reverse. Instead of having reduction passes where you convert IIIII to V, etc., you'd have an expansion passes to convert V to IIIII.


Yes, that's what I said. But you chose a simple case. Try subtracting more complex numbers, specifically something more complex for the subtrahend. E,g, 42 - 13, which is XLII - XIII. Not only to you have to convert, but you have to convert both sides, and to either a similar format that can be subtracted, or to a lowest common format as suggested above (which is not roman numerals, BTW, so you need to know two systems, Roman numerals, and the alternate format with no prefixes to use to arithmetic).

And that still isn't event touching multiplication or division, which are very common in simple commerce. 100 coins for 8 chickens, or 60 coins for 5 chicken. What's the better deal? I want 7 of these 3 coin breads. You say that's 30 coins? Guess I should check that...


For many cases one can ignore division, but yes, as the article said that generally required an abacus.

Multiplication doesn't in general require an abacus if you're trained in roman numerals. Let's take your "more complicated numbers", 42 * 13.

Expand XLII * XIII = X * XLII + XLII + XLII + XLII, the first requires you to know a times table to see that it's CDXX, the rest you'd add mentally, LLL - XXX = CXX, so it's CDXX + CXXVI = DXLVI. Five hundred forty six.

Like, I'm not saying it's as clean as 42 * 13 = 420 + 126 = 546, it's not. But it's not educationally prohibitive either.


I think we can all agree addition is fairly easy. Multiplication, since it can be explained in terms of addition, it also not really that hard. Subtraction and division are harder, as I originally noted, and by extension division, are harder, as there is not one simple rule for conversion before subtraction that won't require additional conversions unless you go to the simplest form, which is unwieldy (along string of I's).

From my example, which was meant for subtraction, not addition or multiplications, we get the following:

XLII - XIII

so we convert to an optimized form for arithmetic (which is, as I've noted a second format you need to know and keep track of, since it's not valid Roman numeral format

XXXXII - XIII

then we note that we have to borrow from the X "place", so let's do that

XXXVIIIIIII - XIII

now we can actually subtract

(XXXX - X) + V + (IIIIIII - III) = XXX + V + IIII = XXXVIIII

Now we have to convert back to valid Roman numerals

XXXVIV = XXXIX

This is using common current arithmetic techniques. I'm not sure whether this is the method they would have employed, or whether it would have been a different method that could have been easier or harder depending on how it combines with the attributes of this number system. Important things to note about the method shown are a pre and post conversion step (or steps, if you don't get every sub-conversion right initially or don't go to a lowest common format), and then the arithmetic itself requires more borrows.


Well, we can eliminate notations like XL, IV, IX, etc because, as noted in the article, those were not in common usage until much later. Even if we don't, then the first step is to expand these values, much like you would with fractions (i.e., convert to lowest common denominator).

Subtraction is as easy as addition (unless you go into negative numbers). The stategy is to walk the subtrahend left-to-right, eliminating from both as you go. If you run into a value that you don't have, then you expand the minuend from the right until you do.

For your "difficult" example of 42 - 13:

XXXXII - XIII

1 Eliminate an X from both.

Now you have XXXII - III.

2 Eliminate I from both

Now you have XXXI - II. Repeating (2) gives you XXX - I.

3 Since there is no I to eliminate, expand the minuend from the right to create one.

Now you have XXVV - I, repeat since you still don't have a I, repeat (3) which gives you XXVIIIII - I

Eliminate the from I both, giving the final result: XXVIIII.

Optional, you can "reduce" this to XXVIV, like you would if you had a fraction, like 3/9, but as stated in the article, this notation was not common place in ancient Rome.


XLII – XIII = XXLIX, of course ;)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: