Make Truncation be Rounding

May 22nd, 2016
ideas, math
When I see a number like "183" the first thing I see is a "1". If I'm looking very quickly, perhaps scanning a column of numbers, that might be all I see, and I'll approximate this number as "100" when "200" would be closer. Yes, truncation isn't the same thing as rounding, but wouldn't things be a lot easier if it were? Let's make it be that way.

To interpret a number today, you multiply each column by the size it represents and add them up:

number 100s 10s 1s sum
100 1 0 0 1*100 + 0*10 + 0*1
120 1 2 0 1*100 + 2*10 + 0*1
121 1 2 1 1*100 + 2*10 + 1*1
129 1 2 9 1*100 + 2*10 + 9*1
125 1 2 5 1*100 + 2*10 + 5*1

With this new system, we still do this, but in each column our available options range from -5 to 4 instead of 0 to 9.

number 100s 10s 1s sum
100 1 0 0 1*100 + 0*10 + 0*1
120 1 2 0 1*100 + 2*10 + 0*1
121 1 2 1 1*100 + 2*10 + 1*1
129 1 3 -1 1*100 + 3*10 + -1*1
125 1 3 -5 1*100 + 3*10 + -5*1

Here are a few more examples:

old notation new notation
0 0
4 4
7 1-3
579 1-4-2-1
432 432
1999 200-1

And here's a program to calculate these:

def to_new_notation(x):
  digits = []
  carry = False
  for digit in reversed([
        int(x) for x in str(x)]):
    if carry:
      digit += 1
      carry = False

    if digit >= 5:
      digit -= 10
      carry = True

    digits.append(digit)

  if carry:
    digits.append(1)

  digits.reverse()
  return digits

Update 2016-05-25: Truncation isn't actually rounding in this system unless you allow both 5 and -5 as digits. Thanks to Marius for pointing this out.

Comment via: google plus, facebook, substack

Recent posts on blogs I like:

Polyamory is sticky

Some people are only happy in monogamous relationships.

via Thing of Things October 30, 2026

“We should be more ambitious with the software we build”

Since early this year, Michael Malis (of pgrust) has been showing me interesting things he's done and saying [W]e should be more ambitious1 with the software we build There is, understandably, a lot of skepticism about projects like pgrust because there…

via Posts on October 24, 2026

Was the HuggingFace hacking incident scheming?

In July 2026, internal OpenAI agents hacked HuggingFace (HF) in order to figure out how their evaluation grader works. This involved a thousand agents coordinating on an improvised message board to carry out an elaborate sequence of exploits. A later grou…

via Victoria Krakovna October 18, 2026

more     (via openring)