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.
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.
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.
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.
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.
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...
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.
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.
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.