of the Indian buffet that includes two extra parameters beyond the single *mass parameter* $\bpmass$ ($\bpmass > 0$) originally specified by @griffiths:2006:infinite; in particular, we include a *concentration parameter* $\bpconc$ ($\bpconc > 0$) and a *discount parameter* $\bpdisc$ ($\bpdisc \in [0,1)$). We abbreviate this three-parameter IBP as “3IBP.” The single-parameter IBP may be recovered by setting $\bpconc = 1$ and $\alpha = 0$.

We start with a single customer, who enters the buffet and chooses $K^{+}_{1} \sim \pois(\bpmass)$ dishes. None of the dishes have been sampled by any other customers since no other customers have yet entered the restaurant. An order-of-appearance labeling gives the dishes labels $1,\ldots,K^{+}_{1}$ if $K^{+}_{1} > 0$.

Recursively, the $n$th customer chooses which dishes to sample in two phases. First, for each dish $k$ that has previously been sampled by any customer in $1,\ldots,n-1$, customer $n$ samples dish $k$ with probability $$\frac{M_{n-1,k} - \bpdisc}{\bpconc + n - 1},$$ for $M_{n,k}$ equal to the number of customers indexed $1,\ldots,n$ who have tried dish $k$. As each dish represents a feature, sampling a dish represents that the customer index $n$ belongs to that feature. And $M_{n,k}$ is the size of the feature labeled $k$ in the feature allocation 