Donald E. Knuth cites it in TAOCP while discussing Balanced Ternary:
"Cauchy pointed out that negative digits make it unneccesary for a person to memorize the multiplication table past 5x5." [Comptes Rendus Acad. Sci. 11 (Paris, 1840), 789-798]
But he doesn't elaborate on it further, and neither does anyone else from what I can tell, and I have yet to figure out the trick. (I currently try to teach myself to EFFICIENTLY do all my mental arithmetic in balanced ternary - not an easy task!)
>But he doesn't elaborate on it further, and neither does anyone else from what I can tell, and I have yet to figure out the trick
5 * 9 = 5 * (10 - 1) = 50 - 5 = 45
Specifically, you need to know everything in the 5x5 area, and how to multiply by 10.
More generally, any digit 6-9 can be rewritten as (10 - (10 - digit)) and then you can apply distribution rules to clean things up. Here's a three by two digit example:
The fun thing to think about is conceptually why this works. If you consider numbers as just bits, all you're doing is converting the highest bit from base to sign, without actually changing it, doing the multiplications on the lower bits, and then tracking the sign to know whether or not to add or subtract later.
Or to put it another way, you're shifting your set of numbers from being +0 - +10 to being -5 - +5. This makes the lookup table smaller, but requires you to do some additional intermediate lookups (up to four, one in each "quadrant" of the 10x10 table) to be as powerful.
I think this is one instance where using a larger look-up table (i.e. multiplication table up to 10x10) yields clear benefit. The technqiue using only 5x5 increases the number of intermediary results to keep in one's head.
Most everything is easier with negative digits. Easier addition, easier rounding, easier multiplication, much easier subtraction. The one part that needs slightly more distinct techniques vs. what you are used to is division, but it's still probably easier overall.
The grandparent poster's example only looks more complicated because we don't have standard glyphs for the negative digits.
> A LOT of these have massive errors. I strongly recommend comparing all that to this paper
As you have already found those errors and done that comparison, could you share some of what you've found?
EDIT: For whatever it's worth, I checked French on https://mpi-lingweb.shh.mpg.de/numeral/, and it lists the same forms for 70 and 90 for French and Belgian French. Which is incorrect.
If you normalize your numbers to be written with digits from -5 to +5 instead of 0 to 9 in each place, then the multiplication table is more symmetrical so you can memorize a table 1/4 as big and then just remember the signs of each quadrant.
I don't understand how the author is judging complexity. The top one, Huli, is a base-15 number system but looks quite regular otherwise. French, on the other hand, switches from a base-10 to a base-20 at 80 and then switches things up at 97.
According to the listing, Welsh sits somewhere between these two but it has separate numbering systems for {20s, 40s, 60s, 80s}, {30s, 70s, 90s}, and {50s}. That seems much more complicated than either Huli or French.
Putting Japanese at such a low complexity shows a lot about the author's criteria and bias.
Japanese numerals are quite easy, but when it comes to actually counting things, it is quite complex. There are two series of numeral words that are used in different contexts, as well as dozens of counter words that pair with a variety of semantic categories. Many combinations or number + noun have quite irregular combinations, like "hatachi" (20 years of age) or "hatsuka" (20th day of the month).
Huli seems to change (though using a common root?) the words for the small numbers (like 1, 2, 3) when they get applied to how many 15s have been counted. "one fifteen" is "nguira ni", where does "ni" come from? "two fifteen" is "ngui ki", "ki" from "kira", why'd "nguira" abbreviated?
It's regular in construction, but the words change and drop parts of the basic number without a particular pattern (as an outsider to the language). "kira" -> "ki" makes sense. "duria" -> "dauni" -> "dau" kind of makes sense, but adds an extra letter (how does the sound actually change?). "tebira" -> "tebone" -> "tebo". A pattern is forming. Drop the "r-" and replace it with an "n-" (except for some) and later drop the "n-".
In french it's base ten only. AFAIK it's just the names, particularly in France, that are a bit confusing. I don't think francophones think of quatre-vingts as 20 20 20 20, but as 80. Just like english is not base-12 because its eleven and twelve, and not oneteen and twoteen.
Also, Swiss French, which has proper words for seventy and ninety, is considered more complex than French French, even though I'd consider having specific words simpler (especially given the complexity of 97 (which is said as 4 x 20 + 10 + 7)
I think it’s implied that base-10 is lowest complexity (this page is for English speakers) and I think that is why base-15 is more “complex” than the weird French system which is mostly addition of base-10 primitives.
Huli appears regular, but a construction like "ngui ki, ngui tebone-gonaga tebira" to mean "fifteen twos and the three of the third fifteen" does seem like quite a mouthful for 33.
Agreed. Hindi is ranked 4th most difficult but the system is identical to English (rank 41). Just the symbols for the digits are different. Even they are similar looking!
Hindi/Marathi are not easy, you almost have to memorize the numbers 1-100.
Hindi and Marathi both have dedicated names for the tens (11, 12, 13, ...) and after that numbers are named in the reverse order of their digits. E.g. 45 will be five - forty.
_except_ the word for five will be different from the word for five in, say, 75. Similarly, the word for "fifty" in the fifties is different for many of them.
There's a lot of variation which you basically don't realize if you speak these languages natively, the variation can't be boxed into "rules" to make it easy to learn, and the end result is that you just end up implicitly memorizing it.
It's hard to realize because you basically end up modeling this subconsciously as there being multiple ways to say "five" and multiple ways to say "seventy", so the numbers seem to be following a fixed scheme, but in reality you've learned which synonym to use where.
In fact when folks talk about french numbers being weird and complex, this is often the counterexample I give.
I suspect this complexity arose from having synonyms for numbers which eventually randomly settled down, and also from having sandhi (rules for melding words together) which got corrupted over time, leading to things like "tay/ees" vs "chau/bees"
The website probably should have used the "different form"/"different word" thing it did for English. But note that the site did consider "twelve" to be its own number, not 10 + 2, which is basically what's happening here too, just extended 1-100.
> Hindi and Marathi both have dedicated names for the tens (11, 12, 13, ...)
Same deal with English.
> and after that numbers are named in the reverse order of their digits. E.g. 45 will be five - forty.
Which is similar in complexity to English, just the order of speaking is reversed.
> _except_ the word for five will be different from the word for five in, say, 75. Similarly, the word for "fifty" in the fifties is different for many of them.
Now I realize what you're saying. It seems that I have memorized every number. Because I never thought of this.
> Which is similar in complexity to English, just the order of speaking is reversed.
Yes, I was mentioning these to paint an accurate picture, not to contrast with English :)
-----
As a native Marathi / nonnative Hindi speaker, I can tell you that the Hindi numbers are pretty hard to get, and took me forever to get used to, even though the variations are almost the same as the ones Marathi has.
(However if you asked me about Marathi I'd have the exact same response as you, "what complexity? oh wait I see I've memorized everything oops")
Not at all. As an example, consider how 55 and 57 are pronounced. "PachPAN"and "SattaVAN". The components have changed arbitrarily for no reason. 70 is "Sattar" but 71 becomes "IkHattar". 2 is "Do", but 12,22,32 use "Ba" as the prefix. Plenty more cases like this.
That, is the problem with transliterating into English. Otherwise it is quite staight forward (even the pronunciation).
Also, language's ability to conjugate words has to be considered. Languages branching from sanskrit,
yeah came here to say this. Huli seems to be pretty much the same as english except base-15 instead of base-10. It even has the special case of the second 10 or 15 being different in form from the rest of the numbers.
edit: actually it seems like the Huli system is more uniform than English. It doesn't switch up the word order after 15. So it's "15 and 1 ..." whereas english goes "3 and 10.." and then "2x10 and 1..."
I didn't see Russian listed anywhere on there, but I suspect it would be in the top 20 on this list. It is a pretty straightforward base 10 complicated by archaic phonetic rules that change the pronunciation and stress of words with logical roots in unintuitive ways.
In addition, countable nouns (like cars, people, cities, but also including multiples of 100, 1000, etc...) change form depending on how many of them there are (1, 2-4, 5-20, 21-24, 25-30 etc...) Usually these separate forms are phonetically related, but sometimes there is no connection at all. These rules don't come in to play when strictly counting numbers until 200, but is an integral part of what makes it hard to count things in Russian.
There are also wrinkles like the word for 40 (сорок) and 90
(девяносто) that don't fit in the usual tens pattern like 20 (двадцать - two * ten) or 30 (тридцать - three * ten). Any Russian speakers care to explain what's going on with those two?
Initially, Russian used the same convention for 40 as it does for other multiples of 10. Other Slavic languages still do. However, 4 (четыре) is the longest word by syllable count in the 1..10 range, so over time a shorter word that used to mean "a bag with 40 skins" (apparently a standard count to make some article of garment) came to replace it. The original meaning is all but forgotten now, and сорок means only 40 now.
90 also used to use the more common form of "nine tens", but for some reason came to be replaced by something that looks like it means "nine out of hundred" but the etymological explanations for it seem to be rather inconsistent. One explanation is that Russians used to count by 9 -- remnants of that can be seen in fairy tale expressions for "very far" -- "beyond three times nine lands".
Thanks for sharing. Studying Russian has helped me notice interesting patterns in languages. Where there is much friction (due to heavy usage, difficult pronunciation, or both) languages tend to break rules to make things easier to say.
For example, it's trivial to conjugate a verb like "контролировать" that you might only use occasionally, but verbs that you say dozens or hundreds of times a day, like "идти" become increasingly irregular.
Irregular verbs generally tend to be the ones that are used most often, and that are most archaic.
Looking at languages there are lost of interesting patterns you can notice. It's even more fun if you look at ones from an entirely different family. Some agglutinating languages may have no irregular verbs at all.
I was surprised to see Danish so high on the list, but after a short while it's not too surprising. It's base-20 for the first 20, like English. Then it's backwards base-10 up to 99 with special names for the whole 10s, 42 is pronounced as "2 and 40". Above 99 it's base-10, 420 is "400 20". But if it's 428 it's "400 8 and 20", but 512 would be "500 12". It's not difficult, it's just a special rule for 1-20, backwards for 21-99, and then straight as you'd expect (including the irregular first 20). Okay, it is quite confusing for none native speakers. To our defense, we use a system more like the Norwegian and Swedish for formal documents including contracts and cheques, though the latter has been phased out in Denmark.
The "perfect" would obviously be a purely base-10 with suffix if it's 10's, 100's, ect.
That's nearly exactly how german works, 428 is "4-vier 100-hundert 8-acht and-und 20-zwanzig", 512 is "5-fünf 100-hundert 12-zwölf" (excuse my rusty german). The und thing is a germanic thing I think.
"Und" is "and" in English, and "og" in Danish, and is used in Danish as well. I think Danish and German is quite similar as you say. It's been 20 odd years since I learned to speak German and it's long since forgotten.
Another article that was published a while ago had an interesting take on it. There is a quite high correlation between numbering system of a language and how quickly/well kids speaking that language learn counting and math skills.
Apparently, the article itself is taken down, but I found an archived version. https://web.archive.org/web/20141215072819/http://playthink....
There are a few articles linked on the bottom of the page (dead links unfortunately) that purport to show the same.
> "Surprisingly enough, it's proven that Chinese-speaking children are better at counting numbers than English-speaking counterparts because of their language. Bilingual children are better at counting when they think in Chinese than in English. The irregularity of the English number system makes it harder for children to count numbers properly."
Not sure I'd give much credence to that hypothesis, though. Hard to disentangle the many factors influencing the results. Having said that, the Chinese numbers are pleasantly short and logical, by and large.
English has the advantage again in big numbers, where we have million, billion, trillion, quadrillion, etc., with the Latin prefix N indicating 10^6N (long scale, old British usage and continental Europe) or 10^(3+3N) (short scale, American usage).
Maybe it's been taken down because it reeks of bad linguistics and bad anthropology. Not to mention the obvious that being good at counting doesn't make one good at academic subjects. I studied math and didn't see a number larger than 10 after I got my BSc.
> I studied math and didn't see a number larger than 10 after I got my BSc.
Presumably you were not a kid anymore at that time. The OP was mentioning about how easy is for kids to acquire/improve their maths skills if counting is made easier by the language itself. That probably doesn't correlate that well with those kids' academic performances 15 or 20 years later, but that was not the point.
There’s a whole theory of learning that suggested that some languages were more suited to mental gymnastics for a particular field of study (math, logic, biology) and that maybe we could further human progress by teaching children the curriculum in that language.
It seems that a child will perhaps learn to count quicker in Japanese than in French, say, but the complexity and inclusion of factors/compounds also seem like they would push a more complex understanding of number to be adopted.
I wonder if a French people make change with 20 Euro-cent coins more often than others do.
I bet they use card instead... In Germany you stand in line waiting for everyone to find exactly the right change, be them young or old. Most people pay with cash even though it seems to get more common to use card. Euro has at least eight different coins. Sweden has 1, 2, 5, 10 as coins but most people still pay with card because it's easier and people are not burned by the big brother syndrome of the WW1/2 :-)
Would be interesting to see relative difficulty of each language, some of them are pretty close and have very similar difficulty while others are close but widely different difficulty.
Another Germany related comment today. Made my day :)
It really becomes annoying when you have to wait a minute because an old lady needs to count all her coins in Lidl.
Back to the original topic, as someone who can speak a few languages, I find the arguments stated in the article quite interesting. Obviously, just because one speaks Chinese doesn't mean they will definitely be a wunder-kind in math. Yet, it plays an important role in speeding up the learning process.
It's not only old ladies that have to count their coins, everyone young or old stands there with the head deep down over the purse trying to find those microscopic coins :-)
Up to 30, it's got a base-5 component so, for example, 16 =
dap pram muoy (10 5 1). From 30 onwards, like Thai it follows the more straightforward Chinese number system.
The numbers in Scottish Gaelic have recently been changed and are now base 10:
Thats incorrect (in the article). The words are compound words, and they really should not be counted like they are here.
example:
chauntees = 34 = 30 and 4. Word for 30 is tees and word for 4 is char - combined to form chaun-tees.
chhuttees = 36 = 30 and 6. Word for 30 is tees and word for 6 is chey - combined to form chhut-tees.
So on for all the words from 20 till 99. The combination rules might not be obvious here in transcription, but they come naturally to a Hindi speaker. So in reality there are dedicated words for 1 thru 19, and then the rest are compounds formed from the words corresponding to each digit.
(Native Marathi, competent Hindi speaker here. Marathi has the same problem)
So, it's not like each number has a different name.
However, it's almost like that.
Basically, the numbers can be broken down into a logical tens and ones place -- e.g. 45 will be five-forty (paintalees -- pai/talees), however the exact way to say "five" will change based on the number, as will the exact way to say "forty".
There's not much logic to it -- some tens series are more regular than others -- which means you effectively end up memorizing it, but subconsciously.
Imagine numbers in English but there were three ways of saying each digit, and each number 1-100 would pick from the synonyms. It's basically like that. That is to say, it's not too hard to deal with -- you'll mentally be associating the numbers with their words so it's not hard to say it out, and because they're synonyms not hard to understand when spoken.
Every number doesn't have its own name. If you observe closely there is a pattern. From 21 to 99, you can observe that every digit at tens place decides the suffix and the digit at ones place decides the prefix.
Further, the author says "because of a lot of irregular pronunciation, you have to memorize 100 different words as if it were a centesimal system". But I could say the same for English. We won't say "three-ty-three", we say "thirty-three". Hindi's irregularities are pretty much at the same level.
No, for English the thirty series is always "thirty-foo", and numbers ending in three are always "foo-three". It is true that you don't use the same word for the number when it's in the tens place (like Chinese), but that's as complex as it gets (and the teens, of course).
In Hindi 40 and 41 use a different word for 40. 51 and 53 use a different word for 50. 55 and 45 use a different word for 5. Plus there are smaller but still significant differences between pretty much every number -- e.g. it's chauBees, but puchees and chauNtees.
I am not a native Hindi speaker by any means, and I certainly haven't done math in it. But my experience (in places like Delhi) is that people routinely use Hindi up to 20, then give up and switch to English.
It's not that difficult. The names are different but they "make sense". It's like 'fifteen', 'sixteen' and 'seventeen' stretched up to 100. Different names, but the pattern is sort of obvious with a few exceptions here and there.
I am a native Hindi speaker and I don't think Hindi is very different from base-10 number system(as the article acknowledges) thus there shouldn't be any difficulty as such. Although I can't say that I have done any kind of mathematical calculation in Hindi script/numerals ever.
NOTE: Hindi has its own script for numbers as well which the article is missed to point out.
> The number 60, a superior highly composite number, has twelve factors, namely 1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, and 60, of which 2, 3, and 5 are prime numbers. With so many factors, many fractions involving sexagesimal numbers are simplified.
TFA has a section on Assyrian, but that's a decimal system, which made me wonder where the sexagesimal came from. It appears that although Assyrian and earlier Akkadian were written in cuneiform, they are Semitic languages that adopted their writing system from the otherwise unrelated Sumerian language, and apparently didn't bother to adapt the numerals to the decimal system.
Wow, Tongan number system is simply beautiful. Pure elegance that I'm sure could be defined mathematically very simply. I myself can only scribble a naive implementation for natural numbers in Javascript:
I wrote it in Scala below; it's a bit shorter, and I really like the map(base). Getting the digits from a number turns out to be most of the work, and the int->string->int conversion also seems to be the best approach.
val base = List("noa", "taha", "ua", "tolu", "fa", "nima", "ono", "fitu", "valu", "hiva")
def tongan(n: Int) = n.toString.map(_.asDigit).map(base).mkString(" ")
As a parent of English/Danish bilingual children I have to tell you that you are very wrong on this.
My children still occasionally make mistakes when saying numbers in the range 50-99 in Danish, they haven't said the English numbers wrong for years.
That the word for 50 contains the word "tre" (three) and the word for 90 contains the word "fem" (five) is very confusing to our children, especially when the English equivalents are so simple in comparison.
Fair enough. As a child I could never remember if it was 50 or 60 that had "halv" (50 is halvtreds, 60 is treds, neither word have any resemblance to 5, 6 or 10, but 50 sounds a bit like it ought to be half of 60), but my point is that the number system has nothing to do with base 20 except a few etymological roots of some names, that for all intents and purposes might as well be random.
But you are right: they are worse than random, since they are named close enough to other entities to be confuseaable.
Classifiers are mostly orthogonal to the number system, and they're really no different from e.g. English using "a herd of cattle" or "a murder of crows" to redundantly encode the kind of thing being talked about. I'm actually not aware of any language that doesn't have different units of measurement for different objects, it's just that some languages effectively make it mandatory to use them. (E.g. in Chinese you could just always say 一个 to mean "one" but it sounds strange when there's a specific form that's more common.)
Yes, they are different from English. In English you say "one herd of cattle", "two herds of cattle", and so on. You just need to know a plural of "herd" and the regular numbers.
In Japanese the numbers themselves depend on the counter. You can't say "one day", "two days", "three days". You can only say "one day (ichinichi)", "foobar (futsuka)", "bazbar (mikka)", and so on. And this counting system is used pretty much only for days. Except similar words to "foo" and "baz" here are also used to count some things. But not the others.
Also the rules of combining a numeral and the counter are very inconsistent. Here's my implementation of Japanese counters, suffices to say the English version would be like 5 lines of code:
The completely different number words used for some things are actually not related to the counter, although it may appear like that because the written form uses the Chinese-style number + counter system. The spoken words are holdouts from ancient Japanese (before Chinese become influential), which TFA discusses separately.
The situation is similar to Latin or Greek numerals in English, which are also applied pretty inconsistently. E.g. duplicate, triplicate, quadruple, ... but pair, triple, quadruple, ...
In general, all languages are riddled with exceptions, ambiguities, contradictions and archaic forms, but it's easier to notice them when you're learning the language later in life and have the "logical" structures of your mother-tongue to compare them to.
No way. It is absolutely different in practice because of Japanese counter words.
A counter word is a counting prefix (different from the abstract number word) plus different suffixes for a variety of things. This object is long and thin, so it has one suffix. This object is a drop of liquid, so it has another suffix. This is a small animal, so it gets another suffix. The counting words for use with these suffixes are different from abstract numbers.
Frankly, the system is bananas.
Abstract numbers in Japanese are very simple and logical, but the overall counting system of e.g. English is objectively simpler, and I don't think you can disregard counting when examining the number system.
In English, it would be equally correct to say "10 cows" or "a herd of cattle." Literally translating the first (without counting words) in Japanese would be incorrect.
The example was poorly chosen, but obligatory measure words are very much a feature of English; compare "a pair of pants" / "a pair of scissors" / "a pair of glasses" / "a loaf of bread". Note that all of those "pairs" refer to a single object.
Moreover, Japanese has TWO parallel number systems (as does Korean). The Sinitic system, enumerated here, is used for naming numbers, counting with most counter words, and counting large quantities, whereas the native Japanese system is used with certain common counter words.
The native Japanese numerals are themselves variable: I have listed the forms they assume when paired with the つ counter. For example, two days is rendered as ふつか and six days as むいか.
im surprised not to see lezgi language here.
we have 1 to 10
10+1 to 9
20+ 1 to 19 (ie 37 is 20 and 19)
40+ 1 to 19
3x20+ 1 to 19 (ie 63 is 3 twenties and 13)
4x20+ 1 to 19
hundred
>
Polari is an in-group language of gay and lesbian people, theatrical people, and circus people in Britain. It's interesting 8 and 9 are called "6 + 2" and "6 + 3" in Polari.
Why is hungarian considered more complex than english or norwegian? Hungarian has regular "on ten one" for 11 and "on ten two" for 12, when english and norwegian have different words; and teens are arguably also more complex.
Nice to see that Mandarin and Japanese have simple number systems compared to English. It might be worthwhile to learn them and impress your friends while you're reading numbers from restaurant menu-cards :)
Apparently the person who compiled this has never tried to actually count items in Japanese, to figure out which of the two number systems to use and which counter words to use.
Some very dead ones. Unary works like hash marks. We have archaeological records of that number system but GP is wrong. Doing multiplication in your head with unary would be a horrible experience. And any number over ten would put the listener to sleep.
I suspect in a unary language system people would invent their own counting strategy in their head.
Edit: ah but Wikipedia reminds me that gauge systems such as for grinding or wire use unary for negative numbers. Eg 000 guage wire or OO ground flour.
I've deliberately chosen a title for this submission that says more clearly what the content is about, and thus helps people decide whether to click through and have a look.
The page's actual title is: "Number Systems of the World"
https://pdfs.semanticscholar.org/5ca1/fa0ffca55e9003053de2f5... - Harald Hammarström - Rarities in Numeral Systems (2009)
And this page:
https://mpi-lingweb.shh.mpg.de/numeral/ "Numeral Systems of the World's Languages"
By the way: If anyone can find a digital copy of this paper from 1840 by Augustin-Louis Cauchy (yes, THAT Cauchy!):
https://scholar.google.com/scholar?cites=6877129426190119313...
I'd very much appreciate it.
Donald E. Knuth cites it in TAOCP while discussing Balanced Ternary:
"Cauchy pointed out that negative digits make it unneccesary for a person to memorize the multiplication table past 5x5." [Comptes Rendus Acad. Sci. 11 (Paris, 1840), 789-798]
But he doesn't elaborate on it further, and neither does anyone else from what I can tell, and I have yet to figure out the trick. (I currently try to teach myself to EFFICIENTLY do all my mental arithmetic in balanced ternary - not an easy task!)