zlacker

The largest number representable in 64 bits

submitted by tromp+(OP) on 2026-02-02 18:31:36 | 119 points 85 comments
[view article] [source] [go to bottom]

NOTE: showing posts with links only show all posts
2. cortes+Ad[view] [source] 2026-02-02 19:41:03
>>tromp+(OP)
This feels like the computer science version of this article: https://www.scottaaronson.com/writings/bignumbers.html
6. kstrau+Ug[view] [source] 2026-02-02 19:54:47
>>tromp+(OP)
What's the biggest up-arrow notation number you can spell with 64 bits?

https://mathworld.wolfram.com/KnuthUp-ArrowNotation.html

◧◩
9. tromp+Nk[view] [source] [discussion] 2026-02-02 20:09:22
>>Sharli+ae
Following BLC8's bytewise encoding convention of [1], w218's binary encoding 0100 0101 1010 1000 0110 0110 0000 0001 0101 1011 1011 0000 0011 1001 1101 0 gets padded with 3 arbitrary least significant bits, say 000, and becomes 45A8_6601_5BB0_39C0 in hexadecimal.

[1] https://www.ioccc.org/2012/tromp/

◧◩
20. jerf+Uv[view] [source] [discussion] 2026-02-02 20:56:34
>>dmitry+Cp
That is not a number, that is infinity.

The (implicit) rules of the game require the number to be finite. The reason for this is not that infinity is not obviously "the largest" but that the game of "write infinity in the smallest number of {resource}" is trivial and uninteresting. (At least for any even remotely sensible encoding scheme. Malbolge[1] experts may chime up as to how easy it is to write infinity in that language.) So if you like, pretend we played that game already and we've moved on to this one. "Write infinity" is at best a warmup for this game.

(I'm not going to put up another reply for this, but the several people posting "ah, I will cleverly just declare 'the biggest number someone else encodes + 1'" are just posting infinity too. The argument is somewhat longer, but not that difficult.)

[1]: https://esolangs.org/wiki/Malbolge

◧◩
24. Veserv+Ey[view] [source] [discussion] 2026-02-02 21:11:00
>>o_nate+cx
To be pedantic, that is a instance of the Berry paradox [1] and no you can not [2] as that would be a violation of Godel's incompleteness theorems.

edit: To clarify further, you could create a new formal language L+ that axiomatically defines 0 as "largest number according to L", but that would no longer be L, it would be L+. For any given language with rules at this level of power you could not make that statement without creating a new language with even more powerful rules i.e. each specific set of rules is capped, you need to add more rules to increase that cap, but that is a different language.

[1] https://en.wikipedia.org/wiki/Berry_paradox

[2] https://terrytao.wordpress.com/2010/11/02/the-no-self-defeat...

◧◩◪
40. tromp+PL[view] [source] [discussion] 2026-02-02 22:04:54
>>hcs+wE
> that headline doesn't even include "program" (or "compute").

Neither does Scott's article titled "Who Can Name the Bigger Number?" [1]

The title is just a way to invite the reader to find out why the answer isn't simply 2^64-1.

[1] >>9058986

44. dang+vS[view] [source] 2026-02-02 22:28:48
>>tromp+(OP)
Related. Others?

The largest number representable in 64 bits - >>38414303 - Nov 2023 (105 comments)

The largest number representable in 64 bits - >>35677148 - April 2023 (42 comments)

(I haven't put 2023 in the current title since the article says it's been significantly expanded since then.)

◧◩◪◨
47. SAI_Pe+K41[view] [source] [discussion] 2026-02-02 23:13:58
>>bmacho+Vp
"Computable" has a well-known standard definition in this context, meaning a computable function[1]. In a given model of computation, a computable function is one for which an algorithm exists which computes the value of the function for every value of its argument. For example, the successor function adds 1 to an input number, and is computable. The halting problem (determine whether a program given in the argument halts) is not computable.

[1] https://en.wikipedia.org/wiki/Computable_function

60. xelxeb+VF1[view] [source] 2026-02-03 03:00:50
>>tromp+(OP)
Busy Beaver gets a lot of love, but the fast growing hierarchy is both constructive and can go way, way, waaaaay beyond current known BB bounds. This makes their size much more viscerally apparent than gesturing vaguely at BB(BB(BB(100))) or whatever, IMHO.

David Metzler has this really cool playlist "Ridiculously Huge Numbers" that digs into the details in an accessible way:

https://www.youtube.com/playlist?list=PL3A50BB9C34AB36B3

By the end, you're thinking about functions that grow so fast TREE is utterly insignificant. Surprisingly, getting there just needs a small bit of machinery beyond Peano Arithmetic [0].

Then you can ponder doing all that but making a tiny tweak by replacing succesorship with BB. Holy cow...

[0]:https://en.wikipedia.org/wiki/Theories_of_iterated_inductive...

◧◩
67. cwillu+w22[view] [source] [discussion] 2026-02-03 06:29:34
>>cortes+Ad
I get what you're trying to say, but the computer science version of that article is very clearly https://www.scottaaronson.com/papers/bb.pdf
◧◩
69. tromp+H92[view] [source] [discussion] 2026-02-03 07:30:58
>>leodav+dx1
Yes, I studied theoretical computer science in University, but I believe the article should be accessible to anyone with a willingness to learn some of the background material. E.g. there are many good introductory texts on the lambda calculus. For a great introduction to the fast growing hierarchy I can recommend David Metzler's Ridiculously Huge Numbers [1] series on youtube.

[1] https://www.youtube.com/playlist?list=PL3A50BB9C34AB36B3

◧◩◪
77. nivert+Zw2[view] [source] [discussion] 2026-02-03 10:31:14
>>pseudo+zr2
That's similar to how kdb+/q represent nulls and infinities

This is certainly pragmatic, although it breaks the math

  q type        size   q literal forms                                   underlying integer value (encoding)
  ----------------------------------------------------------------------------------------------------------
  short (h)     16-bit 0Nh / -0Wh / 0Wh                                  null = -32768; -inf = -32767; +inf = 32767
  int (i)       32-bit 0Ni / -0Wi / 0Wi                                  null = -2147483648; -inf = -2147483647; +inf = 2147483647
  long (j)      64-bit 0N (or 0Nj) / -0W (or -0Wj) / 0W (or 0Wj)          null = -9223372036854775808; -inf = -9223372036854775807; +inf = 9223372036854775807
--

https://code.kx.com/q/basics/datatypes/

https://code.kx.com/q/basics/datatypes/#infinities

◧◩◪
82. nivert+bL3[view] [source] [discussion] 2026-02-03 17:21:05
>>tromp+xz3
1. s/The largest number representable in 64 bits/The widest set of numbers representable in 64 bits/

2. Using a Turing machine to model a von Neumann machine looks exactly like a Rube Goldberg machine. It even resembles it [1].

3. There is no point in talking about a 64-bit limit when the underlying model requires an infinite amount of RAM (tape).

4. > A Rube Goldberg machine is one intentionally designed to perform a simple task in a comically overcomplicated way

People usually don't realize they've built a Rube Goldberg machine...

5. > Programs like Melo and w128

My point is that just as you pre-defined the program you're going to use, you can pre-define the largest integer. That's 1 bit of entropy. I was working on a project with custom 5-bit floating-point numbers implemented in hardware, and they had pre-defined parts of the mantissa. So the actual bits are just part of the information.

---

1. https://en.wikipedia.org/wiki/Turing_machine#/media/File:Tur...

[go to top]