algorithms have been developed over the past two decades [@Metwally2008; @Ting2014] until a theoretically optimal algorithm was finally found [@Kane2010]. Although this algorithm achieves the optimal space complexity of $\symBigO(\symError^{-2}+\log \symCardinality)$ [@Alon1999; @Indyk2003], it is not very efficient in practice [@Ting2014].

More practicable and already widely used in many applications is the algorithm [@Flajolet2007] with a near-optimal space complexity $\symBigO(\symError^{-2} \log\log\symCardinality +\log \symCardinality)$. A big advantage of the algorithm is that corresponding sketches can be easily merged, which is a requirement for distributed environments. Unfortunately, the originally proposed estimation method has some problems to guarantee the same accuracy over the full cardinality range. Therefore, a couple of variants have been developed to correct the original estimate by empirical means [@Heule2013; @Rhodes2015; @Sanfilippo2014].

An estimator for sketches, that does not rely on empirical data and that significantly improves the estimation error, is the historic inverse probability estimator [@Ting2014; @Cohen2015]. It trades memory efficiency for mergeability. The estimator needs to be continuously updated while inserting elements and the estimate depends on the insertion order. Moreover, the estimator cannot be further used after merging two sketches, which limits its application to single data streams. If this restriction is acceptable, the self-learning bitmap [@Chen2011], 