this post was submitted on 28 Oct 2025
5 points (100.0% liked)

math

217 readers
1 users here now

founded 2 years ago
MODERATORS
 

cross-posted from: https://sh.itjust.works/post/48633930

Normally, we use a place-value system. This uses exponentials and multiplication.

1234
^^^^
||||
|||└ 4 * 10^0 = 4
||└ 3 * 10^1 = 30
|└ 2 * 10^2 = 200
1 * 10^3 = 1000

1000 + 200 + 30 + 4 = 1234

More generally, let d be the value of the digit, and n be the digit's position. So the value of the digit is d * 10^n^ if you're using base 10; or d * B^n^ where B is the base.

1234
^^^^
||||
|||└ d = 4, n = 0
||└ d = 3, n = 1
|└ d = 2, n = 2
d = 1, n = 3

What I came up with was a base system that was polynomial, and a system that was purely exponential, no multiplication.

In the polynomial system, each digit is d^n^. We will start n at 1.

polynomial:
1234
^^^^
||||
|||└ 4^1 = 4 in Place-Value Decimal (PVD)
||└ 3^2 = 9 PVD
|└ 2^3 = 8 PVD
1^4 = 1 PVD

1234 poly = 1 + 8 + 9 + 4 PVD = 22 PVD

This runs into some weird stuff, for example:

  • Small digits in high positions can have a lower magnitude than large digits in low positions
  • 1 in any place will always equal 1
  • Numbers with differing digits being equal!
202 poly = 31 poly
PVD: 2^3 + 2^1 = 3^2 + 1^1
8 + 2 = 9 + 1 = 10

In the purely exponential system, each digit is n^d^. This is a bit more similar to place value, and it is kind of like a mixed-base system.

1234
^^^^
||||
|||└ 1^4 = 1
||└ 2^3 = 8
|└ 3^2 = 9
4^1 = 4

1234 exp = 4 + 8 + 9 + 1 PVD = 22 PVD

However it still runs into some of the same problems as the polynomial one.

  • Small digits in high positions can have a lower magnitude than large digits in low positions (especially if the digit is 1)
  • The digit in the ones place will always equal 1
  • Numbers with differing digits can still be equal
200 exp = 31 exp
PVD: 3^2 = 2^3 + 1^1
9 = 8 + 1

So there you have it. Is it useful? Probably not. Is it interesting? Of course!

top 1 comments
sorted by: hot top controversial new old
[–] L0rdMathias@sh.itjust.works 2 points 1 month ago* (last edited 1 month ago)

Fun stuff and interesting discoveries. The double mapping is the Achilles heel. I do wonder if one could create a counting system that occasionally drops down before counting back up while also ensuring each number is unique.

I once did a similar thing with primes where each increasing digit had a character limit of the next ascending primes. So it starts with binary, then ternary for the next digit, qinary for the third digit, and so on. 123 would actually be illegal notation since we can't exceed 2 in the binary digit, so we need to carry them over and reformat it to 131, which also breaks the ternary digit, so that also carries over to 201, which would be the decimal number thirteen (2x3x2+0x2+1x1).

0, 1, 10, 11, 20, 21, 100, 101, 110, 111, 120, 121, 200, 201, 210, 211, 220, 221, 300, 301, 310, 311, 320, 321, 400, 401, 410, 411, 420, 421, 1000, etc.

Could probably combine the ideas in some way to get the rollercoaster counting of polycount while retaining unique mapping via primes.

Edit: man I should really just use the code blocks for formatting...