

New partition function record: p(10^20) computed - edmccard
http://fredrikj.net/blog/2014/03/new-partition-function-record/

======
wbhart
It is estimated that in its existence the observable universe has performed no
more than 10^120 operations on no more than 10^90 bits. Thus I believe the
universe itself does not have the computational capacity to compute each one
of the partitions of 10^5. As we are part of the universe, neither do we.

Edit: just to be clear, I'm referring to the obviously comedic comments about
the Hungarian Pengo, not the computation that Fredrik reports having
completed. Apparently the Pengo project is not only ill-advised, but actually
impossible.

~~~
duskwuff
You seem to be assuming that, to calculate the partitions of a number, it is
necessary to actually enumerate every one of those partitions. This is not
true.

~~~
wbhart
I'm assuming nothing of the sort. I said to compute "each one of" the
partitions, which is a totally different problem to counting them.

------
jjgreen
Numberwang, classy.

~~~
sp332
Reference:
[http://www.youtube.com/watch?v=qjOZtWZ56lc](http://www.youtube.com/watch?v=qjOZtWZ56lc)

------
3rd3
Is there a simple/intuitive explanation why there is no simple closed form for
p(n)?

~~~
monochromatic
In general, it is only by coincidence when something _does_ have a nice closed
form.

~~~
3rd3
But finding all partitions seems like a simple combinatorial problem at first
sight.

~~~
Someone
Firstly, "closed form" is not objectively defined. Do you include infinite
sums? Bernoulli numbers? Euler's constant? etc
([http://www.ams.org/notices/201301/rnoti-p50.pdf](http://www.ams.org/notices/201301/rnoti-p50.pdf)).
If you wanted to, you could call p(n) a closed form for p(n).

You cannot call that cheating. In the past, we similarly introduced n!, n^n,
and n!!!!!!!!!n and, going further back, even n*n and n+n as shorthands for
more cumbersome expressions (n^2 is sum(1,n;n))

So, I think you aren't asking for a closed form, but for an easy way to
compute p(n). p(n) is trivially defined recursively (a way is with a helper
function p(n,m) for the number of partitions of n where each number in the
partition is at least equal to m). The only difference is that that trivial
definition has an enormous branching factor.

That's where number theorists come in. They manage to replace that rapidly
branching method with easier ones, where it often isn't clear that

For example, see
[https://oeis.org/wiki/Partition_function#Partition_function_...](https://oeis.org/wiki/Partition_function#Partition_function_formula).
It states p(n) equals an infinite sum of some seemingly hideous function
containing derivatives, sinh, square roots, etc. Evaluating that does not
involve branching, though. That can make it much faster to approximate such a
function by 'only' iterating until you know you are within 0.5 of the real
answer. That must be an integer, so if you are within 0.5, rounding gives you
the correct answer. That's what this computation did, too, for a different
formula.

------
ahassan
Does anyone know what he used to generate the equations in HTML? Most of the
tools I've used simply convert LaTeX equations to an image.

~~~
bbatsell
MathJax:

[http://www.mathjax.org/](http://www.mathjax.org/)

~~~
ReidZB
This is also what the math-related Stack Exchange sites use. (Ex: Math SE,
Crypto SE, Physics SE, ...). For example, see the home page of the Math SE:
[http://math.stackexchange.com/](http://math.stackexchange.com/)

------
csense
The real story here is the Arb software the creator's developed for arbitrary-
precision computations with rigorous error bounds.

------
coldcode
Anything limited by a data type requiring billions of digits is
indistinguishable from magic.

