Îõ³h$©      (c) Edward Kmett 2013-2015BSD3Edward Kmett  experimental non-portableNone./ÉÙ   (c) Edward Kmett 2013-2015BSD3Edward Kmett  experimental non-portableNone.8>?ÀÁÂÄÉÊÎÔÙj  hyperloglogInitialize a new counter:ÈrunHyperLogLog (mempty :: HyperLogLog 3) == V.fromList [0,0,0,0,0,0,0,0]True4Please note how you specify a counter size with the nã invocation. Sizes of up to 16 are valid, with 7 being a likely good minimum for decent accuracy.?Let's count a list of unique items and get the latest estimate:3size (foldr insert mempty [1..10] :: HyperLogLog 4)ÄApproximate {_confidence = 0.9972, _lo = 2, _estimate = 9, _hi = 17} Note how Á can be used to add new observations to the approximate counter. hyperloglog If two types p and q; reify the same configuration, then we can coerce between   p and   q(. We do this by building a hole in the nominal& role for the configuration parameter. hyperloglogÜInsert a value that has already been hashed by whatever user defined hash function you want. hyperloglogApproximate size of our set   (c) Edward Kmett 2013-2015BSD3Edward Kmett  experimental non-portableNone÷        !"'hyperloglog-0.4.5-4LN4YxdLyRwIHroKUQdQiData.HyperLogLog.ConfigData.HyperLogLog.TypeData.HyperLogLogRanklim32 numBuckets smallRange interRangerawFactalpha bucketMask calcBucketcalcRankHasHyperLogLog hyperLogLog HyperLogLogrunHyperLogLog coerceConfiginsert insertHashsizeintersectionSizecast$fMonoidHyperLogLog$fSemigroupHyperLogLog$fBinaryHyperLogLog$fSerialHyperLogLog$fSerializeHyperLogLog$fHasHyperLogLogkHyperLogLogp$fEqHyperLogLog$fShowHyperLogLog$fGenericHyperLogLog$fNFDataHyperLogLog