Oooh so this is a fun question, and I'm gonna do it as a QRT cause I think this'll be useful for y'all!
And if you're reading this like: WTF is a "base" in math, no worries, I'll be starting with the basics, and focusing more on worldbuilding than hard math!
Let's get into it! https://twitter.com/joshtjordan/status/1329072821176131584
And if you're reading this like: WTF is a "base" in math, no worries, I'll be starting with the basics, and focusing more on worldbuilding than hard math!
Let's get into it! https://twitter.com/joshtjordan/status/1329072821176131584
So what are numerical bases?
When we count numbers, we have distinct symbols for 0 through 9. When we get to ten, we represent it as one-zero, or 10. This recycles two of our symbols, meaning we have no new symbols for a number above 9. This boundary number, 10, is our base!
When we count numbers, we have distinct symbols for 0 through 9. When we get to ten, we represent it as one-zero, or 10. This recycles two of our symbols, meaning we have no new symbols for a number above 9. This boundary number, 10, is our base!
That base tells us when we wrap around to 0.
We also use it to calculate more complex numbers.
What we're subconsciously doing when writing ten is saying: 1*10 + 0*1 = 10.
This becomes more clear with say, one hundred and twenty one, which is: 1*100 + 2*10 + 1*1 = 121.
We also use it to calculate more complex numbers.
What we're subconsciously doing when writing ten is saying: 1*10 + 0*1 = 10.
This becomes more clear with say, one hundred and twenty one, which is: 1*100 + 2*10 + 1*1 = 121.
So why base 10?
Well, there's not actually one definitive answer that I could find when I looked into this. But, the couple of answers I found do reveal some really interesting things!
So let's get the easy one out of the way: Number of fingers. We have 10, ergo, 10 digits.
Well, there's not actually one definitive answer that I could find when I looked into this. But, the couple of answers I found do reveal some really interesting things!
So let's get the easy one out of the way: Number of fingers. We have 10, ergo, 10 digits.
And that tracks with one of the other super common bases that societies developed: 12!
The base 12 system is based on the number of knucklebones in a single hand. You have 4 fingers with 3 bones each, and then you use the thumb to count. With one hand, you could count till 12!
The base 12 system is based on the number of knucklebones in a single hand. You have 4 fingers with 3 bones each, and then you use the thumb to count. With one hand, you could count till 12!
If you're doing worldbuilding with different bases, ask what makes people come to the counting system that's at it's core! We use 10 and 12 for fingers and knuckles, but base 5 was also used by some (5 fingers in one hand)!
And who knows what other limbs might do to this logic!
And who knows what other limbs might do to this logic!
Historically, bases kinda get used differently culture to culture, and even swapped in use cases sometimes. As far as I could tell, its really only as part of the mass translation and standardization project of knowledge in the Islamic empires that base 10 is standardized.
Through trade, expansion, and exchange of knowledge the base 10 system makes its way through Africa and Asia (and also probably Spain).
And then with the Ottomans taking over and Europe trading and fighting with them, the base 10 system makes it to the Western World.
And then with the Ottomans taking over and Europe trading and fighting with them, the base 10 system makes it to the Western World.
So if you have a single standardized base, ask yourself:
How did this come to be? Is it the most practical for the group/ species/ culture? Is there a shared ancestry? Some other history that might cause this standardization?
Its similar to the question of a "common" language.
How did this come to be? Is it the most practical for the group/ species/ culture? Is there a shared ancestry? Some other history that might cause this standardization?
Its similar to the question of a "common" language.
Alternatively, if multiple cultures have different bases for their numerical system:
How do they communicate numbers across bases? Is it perhaps with material components ("I hand you 10 apples, you see them as 20 in base 5")? And how does math evolve differently as a result?
How do they communicate numbers across bases? Is it perhaps with material components ("I hand you 10 apples, you see them as 20 in base 5")? And how does math evolve differently as a result?
For example, the Ancient Egyptians had a multiplication algorithm that was base independent. And it wasn't unique to them! Most mathematical operations were designed to work no matter what the base was in pre-modern times!
https://en.wikipedia.org/wiki/Ancient_Egyptian_multiplication
https://en.wikipedia.org/wiki/Ancient_Egyptian_multiplication
What about other bases? How would that even work?
Well umm, you already do it! Time is a major one that uses base 24 for hours, 7 for days, 60 for minutes and seconds, 12 for months, and 365 for years.
These are all confusing to learn at first but become normalized with use.
Well umm, you already do it! Time is a major one that uses base 24 for hours, 7 for days, 60 for minutes and seconds, 12 for months, and 365 for years.
These are all confusing to learn at first but become normalized with use.
Another example is angles! We use base 360 for degrees (2*pi for radians). When folks say stuff like "720 no-scope" while playing cod or talk about 360 spins on a skateboard, we know that they mean they're gonna land facing the same way after one or two spins, cause of base 360!
You might be pointing out: Base 10 is more natural/ wieldly than some of these.
And to an extent, that's true! Try to do all your counting in base 12 and you'd probably struggle, leading to the assumption that base 10 is more intuitive. And that's the third argument I've seen!
And to an extent, that's true! Try to do all your counting in base 12 and you'd probably struggle, leading to the assumption that base 10 is more intuitive. And that's the third argument I've seen!
However, we also have grown up all our lives using base 10. It's more intuitive because well... we have the most experience. It's a chicken-egg situation!
There's also another angle:
We filter all these other numerical systems through a lens of base 10.
There's also another angle:
We filter all these other numerical systems through a lens of base 10.
What do I mean by that?
When talking about time, we still say: 11:54 for example. This is still representing things using the numeric decimal system we know.
What would a base 12 system look like if we built it from the ground up? We'd have unique symbols for 11 and 12!
When talking about time, we still say: 11:54 for example. This is still representing things using the numeric decimal system we know.
What would a base 12 system look like if we built it from the ground up? We'd have unique symbols for 11 and 12!
And therein comes the other detail and tradeoff: The larger your base, the more symbols you need to know. We only need to know 10 unique symbols for base 10. We'd need 60 for base 60.
It also means our arithmetic table gets way bigger, since our smallest units are larger!
It also means our arithmetic table gets way bigger, since our smallest units are larger!
Side bar:
An arithmetic table is what you'd look at when trying to do 5 + 4. It's a 10 by 10 grid in decimal that tells us the result of taking any two numubers and doing an operation. With base 60, you can see how that arithmetic table would be a 60 by 60 monster.
An arithmetic table is what you'd look at when trying to do 5 + 4. It's a 10 by 10 grid in decimal that tells us the result of taking any two numubers and doing an operation. With base 60, you can see how that arithmetic table would be a 60 by 60 monster.
However, it also makes representing bigger numbers so much easier! Right now, if I wanted to right six-thousand, I would right it as such: 6000
But if I wanted to use base 60, it would just be: 1000.
This trade-off falls off factors into the sweet spot of which base to use.
But if I wanted to use base 60, it would just be: 1000.
This trade-off falls off factors into the sweet spot of which base to use.
So, let's talk about the most practically fleshed out base is base 2 (and it's derivatives, notably 4, 8, and 16).
Why? Well, computers! With electric signals being used to store numbers, its really easy to store things as on or off, aka: 1 or 0.
And that's super simple!
Why? Well, computers! With electric signals being used to store numbers, its really easy to store things as on or off, aka: 1 or 0.
And that's super simple!
It also makes the math really easy: 1+0=1, 1+1=10, 0+0=0
But again, tradeoff. 6000 in base 2 is 1011101110000
Which is a lot.
However, doing operations in base 2 is super fast, since everything is just a multiple of 2, and once you know those tables, its really neat.
But again, tradeoff. 6000 in base 2 is 1011101110000
Which is a lot.
However, doing operations in base 2 is super fast, since everything is just a multiple of 2, and once you know those tables, its really neat.
Why might a group use base 2?
Well its really easy to count in a "yes or no" type fashion. They could also have pre-cursor tech that uses base 2 that they adopted for themselves. They could have brains that process things in 2's more naturally, etc etc.
Well its really easy to count in a "yes or no" type fashion. They could also have pre-cursor tech that uses base 2 that they adopted for themselves. They could have brains that process things in 2's more naturally, etc etc.
So now to answer the question: what kinds of fiddley bits might go into building a story with unique mathematical bases?
For one, think about fractions and decimals.
We call base 10 the decimal system, and its use in doing decimal numbers is really valuable.
For one, think about fractions and decimals.
We call base 10 the decimal system, and its use in doing decimal numbers is really valuable.
We can represent any number with enough digits after the decimal point, which isn't true in base 2!
When I right 1.45, I'm really writing 1 + 4/10 + 5/10. In base 2, I can only write 1.11, which would be 1 + 1/2 +1/4.
The accuracy we can get with fractions of 2 is limited!
When I right 1.45, I'm really writing 1 + 4/10 + 5/10. In base 2, I can only write 1.11, which would be 1 + 1/2 +1/4.
The accuracy we can get with fractions of 2 is limited!
Looking into how a group might get around that is super fascinating. We have the IEEE floating point standards for computing that gets us more accurate and complex decimal numbers. It's a really fascinating system if you wanna read about it. https://www.geeksforgeeks.org/ieee-standard-754-floating-point-numbers/
Other details worth considering as mentioned before:
Operations, how are those handled?
Day to day transactions vs unique situations? Is there a base that's more intuitive for daily math, and then one used for specialized circumstances (like time, angles, and computing)?
Operations, how are those handled?
Day to day transactions vs unique situations? Is there a base that's more intuitive for daily math, and then one used for specialized circumstances (like time, angles, and computing)?
How might that affect language and figures of speech? What other groupings might exist (we have fortnights, dozens, etc. to measure common values outside of our base. What might happen in a different base)?
The implications are minor but can really create a fleshed out world!
The implications are minor but can really create a fleshed out world!
That's all I got to say for now, I hope you learned some cool things about math and history from this.
You can blame @AFractalDragon for showing me the initial tweet and thus me creating this whole thread.
The following tweets are just gonna be me explaining floating point rq.
You can blame @AFractalDragon for showing me the initial tweet and thus me creating this whole thread.
The following tweets are just gonna be me explaining floating point rq.
So IEEE floating point is a really neat system because it deals with the issue of storage space and numbers getting too big as I pointed out with the 6000 example.
It allows us to represent super small fractions without taking a ton of space writing say, 1.0000000000000000000001
It allows us to represent super small fractions without taking a ton of space writing say, 1.0000000000000000000001
The core concept is simple:
Choose a standard size for a number, and break it up into 3 parts:
Part 1: The sign, positive or negative. 1 for neg, 0 for pos.
Part 2: The exponent. This is complex, I'll explain in a sec.
Part 3: The "mantissa." This is the actual number we want.
Choose a standard size for a number, and break it up into 3 parts:
Part 1: The sign, positive or negative. 1 for neg, 0 for pos.
Part 2: The exponent. This is complex, I'll explain in a sec.
Part 3: The "mantissa." This is the actual number we want.
Basically, the system relies on you choosing a common "bias" in advance. This bias is some number X, and shifts the number over X times to the right. For example, if our bias was 4, and our number was 10110, we would get 1.0110, cause we shifted it over 4 times.
The exponent, part 2, is just a number we add or subtract from our bias, and gives us more fine tune control over whether its a fraction or a whole number!
That's the whole system, pretty nifty right?
There's also standards for more or less accuracy for different scenarios.
That's the whole system, pretty nifty right?
There's also standards for more or less accuracy for different scenarios.
We have single precision (64 bits) and double precision (128) bits.
The number of bits are all multiples of 2, which lines up both with our base and how computer storage works!
And that's the TL;DR on IEEE floating points.
The number of bits are all multiples of 2, which lines up both with our base and how computer storage works!
And that's the TL;DR on IEEE floating points.
Actually final note if you made it this far:
Think about sign!
We use +/- when doing signs in decimal, but in base 2 we use 1's or 2's compliment for signs, which keeps us only to the 1 and 0 symbols!
Think about sign!
We use +/- when doing signs in decimal, but in base 2 we use 1's or 2's compliment for signs, which keeps us only to the 1 and 0 symbols!
TL;DR on those who do not know
Both 1's and 2's compliment work by assuming that if the first digit is a 0, it's positive, and if the first digit is a 1, it's negative.
For example, 010 is a positive number, whereas 110 is a negative number!
Both 1's and 2's compliment work by assuming that if the first digit is a 0, it's positive, and if the first digit is a 1, it's negative.
For example, 010 is a positive number, whereas 110 is a negative number!
Here's how each one works:
1's compliment is super simple. Basically, if you have a 1 up front, you flip every digit to get the "real" value.
For example, 110 becomes 001, which is 1, aka negative 1.
If you wanted to know what -4 was, you'd flip
0100 (+4) to get 1011!
1's compliment is super simple. Basically, if you have a 1 up front, you flip every digit to get the "real" value.
For example, 110 becomes 001, which is 1, aka negative 1.
If you wanted to know what -4 was, you'd flip
0100 (+4) to get 1011!