\lim_{\symNumReg\rightarrow\infty} \symAlpha_\symNumReg = \frac{1}{2\log 2}$ in practice, because the additional bias is negligible compared to the overall estimation error.

To investigate the estimation error of the raw estimator and other estimation approaches discussed in the following, we filled sketches with up to 50 billion unique elements. To speed up computation we assumed a uniform hash function whose values can be simulated by random numbers. We used the Mersenne Twister random number generator with a state size of bits from the C++ standard library.

\[fig:raw\_estimate\] shows the distribution of the relative error of the raw estimator as function of the true cardinality for $\symPrecision=12$ and $\symRegRange=20$. Corrections for small and large cardinalities have been proposed to reduce the obvious bias. For small cardinalities the sketch can be interpreted as bit array by distinguishing between registers with zero and nonzero values. This allows using the linear counting cardinality estimator [@Whang1990] $$\label{equ:linear_counting_estimator}
\symCardinalityEstimate_\text{small} = \symNumReg \log(\symNumReg/\symCountVariate_0).$$ The corresponding estimation error is small for small cardinalities and is shown in \[fig:small\_range\_estimate\]. It was proposed to use this estimator as long as $\symCardinalityRawEstimate \leq \frac{5}{2}\symNumReg$ where the factor $\frac{5}{2}$ was empirically determined [@Flajolet2007]. For large cardinalities in the order of $2^{\symPrecision+\symRegRange}$, for which a lot 