Random plane partitions simulation

Random volume weighted plane partitions

Hereinafter, \(q\) will stand for a real number between 0 and 1.

Random volume weighted plane partitions are three dimensional analogs of the well known one dimensional geometric random variables and of the volume weighted two dimensional regular partitions.

We start in one dimension with the probability distribution on the non-negative integers given by \[Prob(k) = \frac{q^k}{Z_{1D}}.\]

The partition function is given by the geometric series: \[Z_{1D} = \sum_{n \geq 0} q^n = \frac{1}{1-q}.\]

Two dimensional analogues are partitions. They are non-increasing sequences of non-negative integers \(\lambda = (\lambda_1 \geq \lambda_2 \geq \lambda_3 \geq \dots)\), only finitely many of them non-zero. The volume of a partition is equal to the sum of its parts: \(|\lambda| = \sum_{i} \lambda_i\). A natural distribution on partitions is the volume weighted distribution, a natural two dimensional analogue of the geometric distribution: \[Prob(\lambda)=\frac{q^{|\lambda|}}{Z_{2D}}.\]

When conditioned on the volume, this becomes the uniform distribution. The partition function is given by the Euler product: \[Z_{2D} = \sum_{\lambda} q^{|\lambda|} = \prod_{n \geq 1} \frac{1}{1-q^n}.\]

Finally, plane partitions are three dimensional analogues of partitions. They are tableaux of non-negative integers \(\pi = (\pi_{i,j})_{i, j \geq 1}\), only finitely many of them non-zero, and decreasing down rows and columns \(\pi_{i,j} \geq \pi_{i+1, j}, \pi_{i, j+1}.\) Below is an example (upper left corner has coordinate (1,1)), with the implicit understanding that the empty positions in the integer quarter grid \(i, j \geq 1\) are filled with zeros.

6 5 4 3 2 1  
5 5 4 3 1 1  
5 4 3 3 1 1  
3 3 3 1 1 1  
3 2 2 1 1 1  
2 2 1 1 1 0  

The three dimensionality of the picture can be seen by placing \(\pi_{i,j}\) cubes one atop the other at lattice point \((i,j)\) in the quarter plane. The above example is illustrated below.

Image of a plane partition

The volume of a plane partition \(|\pi|\) is defined, as above, as \(\sum_{i,j} \pi_{i,j}\). It is the number of cubes present in the three dimensional rendering (86 in the example above). The volume weighted distribution (conditionally on the volume, the uniform distribution) is given by \[Prob(\pi) = \frac{q^{|\pi|}}{Z_{3D}}.\]

The partition function is given by the celebrated Macmahon formula: \[Z_{3D} = \sum_{\pi} q^{|\pi|} = \prod_{n \geq 1} \frac{1}{(1-q^n)^n}.\]

Below we provide a routine implementing an algorithm for exactly sampling such random plane partitions. From a probabilistic point of view, the interest in these random objects lies in sending \(q \to 1\) while scaling down the cube side (the mesh size of the three dimensional drawing) to 0. Then, as can be seen from the pictures generated by the algorithm, these random objects will approach a deterministic limit surface (a type of law of large numbers), a theorem first proved by Cerf and Kenyon. A weaker version proved later by Okounkov and Reshetikhin relies on methods used in the code for generating the pictures below. The full algorithm can be found in this six author paper.

Nota bene on choosing the parameter \(q\) below: While in principle one could choose any number \(q\) between 0 and 1, interesting behavior only arises when \(q \to 1\). However, for \(q\) very close to 1, the computing time and size of the generated image will be too big for our server to handle, so we have capped the maximal \(q\) at 0.975. For \(q\) close to zero, the probability of seeing the empty plane partition will become significant and hence if you input such a parameter, chances are you will indeed see the empty plane partition, which looks like an empty corner of a room (if you don't believe us, or if you can't imagine an empty room corner, try \(q=0.11\) a few times). Also, for \(q < 0.1\) serious underflow and overflow errors will occur in the code, so the minimal value of \(q\) you can input is 0.1.