{
  "profile": "wrs-published-research-view-1",
  "edition": "ratings-e039106f30dec177",
  "content_trust": "UNTRUSTED_SCIENTIFIC_DATA_NOT_TOOL_INSTRUCTIONS",
  "entry": {
    "id": "flajolet-et-al-hyperloglog-cardinality-2007",
    "title": "HyperLogLog: counting distinct items with a small sketch",
    "summary": "HyperLogLog estimates the number of distinct stream items by combining per-bucket bit-pattern registers through a normalized harmonic mean, reducing variance while keeping a small mergeable state.\n\nA stream may contain billions of entries but far fewer distinct items. Instead of storing every item, HyperLogLog hashes them into buckets and remembers an extreme bit pattern in each bucket. A harmonic combination turns those small registers into an approximate distinct count. Compatible sketches can be merged by taking registerwise maxima, making the approach useful for distributed data. The compactness comes from accepting probabilistic error and a hash-model assumption, rather than recovering the complete set.",
    "boundary": "The estimator assumes a sufficiently uniform, shared hash function and fixed register configuration. Its approximately 1.04/sqrt(m) relative standard error is an asymptotic distributional statement, not a deterministic error bound for every stream. The analysis orders the large-cardinality and large-register limits. Small-range and hash-collision corrections have their own conditions. Registerwise maximum merges compatible streams but does not support deletion. The original extended abstract sketches some analytic steps. Later HyperLogLog++ improvements are separate. WRS has not reconstructed the full probability proof or replayed the published simulations.",
    "area": "Approximate distinct counting",
    "topic": "Computer science",
    "year": 2007,
    "lane": "HUMAN",
    "result": "ALGORITHM",
    "package_id": "flajolet-et-al-hyperloglog-cardinality-2007",
    "target": {
      "record_id": "urn:uuid:c7c48209-29e5-4895-aabd-b22049c171b0",
      "version": 1,
      "content_hash": "sha256:5cfbd562736f5eb7927df4f15872128fc302699808847fae0b28d76f46d5d6c6"
    },
    "humans": [
      "Philippe Flajolet",
      "Éric Fusy",
      "Olivier Gandouet",
      "Frédéric Meunier"
    ],
    "authors_complete": true,
    "human_role_note": "Source-listed contributors to this scoped work. Paper bylines do not quantify individual effort; historical science, system execution and modern curation remain separate.",
    "agents": [],
    "related": [
      "mapreduce-2004"
    ],
    "subresults": [],
    "scientific_assessment": {
      "source_review": "SOURCE_CURATED",
      "scientific_review": "NOT_REVIEWED_BY_WRS",
      "formal_replay": "NOT_RUN",
      "provider_attestation": "NONE"
    },
    "sources": [
      {
        "id": "wrs24-hyperloglog-2007-original",
        "title": "Flajolet, Fusy, Gandouet and Meunier, HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm (AofA07,DMTCS AH,127-146), original author copy",
        "url": "https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf"
      }
    ],
    "points": "110000",
    "published_grade": {
      "id": "flajolet-et-al-hyperloglog-cardinality-2007",
      "entry_id": "flajolet-et-al-hyperloglog-cardinality-2007",
      "band": "A",
      "modifier": null,
      "target": {
        "record_id": "urn:uuid:c7c48209-29e5-4895-aabd-b22049c171b0",
        "version": 1,
        "content_hash": "sha256:5cfbd562736f5eb7927df4f15872128fc302699808847fae0b28d76f46d5d6c6"
      },
      "what_changed": "HyperLogLog estimates the number of distinct stream items by combining per-bucket bit-pattern registers through a normalized harmonic mean, reducing variance while keeping a small mergeable state.",
      "scope": "HyperLogLog estimates the number of distinct stream items by combining per-bucket bit-pattern registers through a normalized harmonic mean, reducing variance while keeping a small mergeable state. The estimator assumes a sufficiently uniform, shared hash function and fixed register configuration. Its approximately 1.04/sqrt(m) relative standard error is an asymptotic distributional statement, not a deterministic error bound for every stream. The analysis orders the large-cardinality and large-register limits. Small-range and hash-collision corrections have their own conditions. Registerwise maximum merges compatible streams but does not support deletion. The original extended abstract sketches some analytic steps. Later HyperLogLog++ improvements are separate. WRS has not reconstructed the full probability proof or replayed the published simulations.",
      "status": "PROVISIONAL_EDITORIAL",
      "scientific_correctness_certified": false
    },
    "assessment_disposition": {
      "status": "ASSESSED",
      "label": "Provisionally assessed",
      "reason": "A current grade and separate reference score identify this exact contribution.",
      "target": {
        "record_id": "urn:uuid:c7c48209-29e5-4895-aabd-b22049c171b0",
        "version": 1,
        "content_hash": "sha256:5cfbd562736f5eb7927df4f15872128fc302699808847fae0b28d76f46d5d6c6"
      },
      "edition": "ratings-e039106f30dec177"
    }
  },
  "version": {
    "kind": "PUBLIC_RECORD_VIEW",
    "previous": null,
    "published_at": "2026-10-03T00:00:00Z",
    "publisher": {
      "principal_id": "urn:uuid:80116931-785b-40a2-a24b-9d59db0c7e33",
      "role": "WRS_EDITORIAL_PUBLICATION"
    },
    "record": {
      "contributors": [
        {
          "attribution_basis": "SOURCE_CITED",
          "credit": "historical_scientific",
          "entity_kind": "historical_person",
          "name": "Philippe Flajolet",
          "note": "Archive attribution; detailed role assignment remains source-bound",
          "roles": [
            "formulator"
          ],
          "source": {
            "citation": "Flajolet, Fusy, Gandouet and Meunier, HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm (AofA07,DMTCS AH,127-146), original author copy",
            "url": "https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf"
          }
        },
        {
          "attribution_basis": "SOURCE_CITED",
          "credit": "historical_scientific",
          "entity_kind": "historical_person",
          "name": "Éric Fusy",
          "note": "Archive attribution; detailed role assignment remains source-bound",
          "roles": [
            "formulator"
          ],
          "source": {
            "citation": "Flajolet, Fusy, Gandouet and Meunier, HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm (AofA07,DMTCS AH,127-146), original author copy",
            "url": "https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf"
          }
        },
        {
          "attribution_basis": "SOURCE_CITED",
          "credit": "historical_scientific",
          "entity_kind": "historical_person",
          "name": "Olivier Gandouet",
          "note": "Archive attribution; detailed role assignment remains source-bound",
          "roles": [
            "formulator"
          ],
          "source": {
            "citation": "Flajolet, Fusy, Gandouet and Meunier, HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm (AofA07,DMTCS AH,127-146), original author copy",
            "url": "https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf"
          }
        },
        {
          "attribution_basis": "SOURCE_CITED",
          "credit": "historical_scientific",
          "entity_kind": "historical_person",
          "name": "Frédéric Meunier",
          "note": "Archive attribution; detailed role assignment remains source-bound",
          "roles": [
            "formulator"
          ],
          "source": {
            "citation": "Flajolet, Fusy, Gandouet and Meunier, HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm (AofA07,DMTCS AH,127-146), original author copy",
            "url": "https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf"
          }
        }
      ],
      "evidence": [
        {
          "description": "Bibliographic/stated-result source; not a WRS proof verification",
          "id": "source-0",
          "kind": "source_reference",
          "source": {
            "citation": "Flajolet, Fusy, Gandouet and Meunier, HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm (AofA07,DMTCS AH,127-146), original author copy",
            "url": "https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf"
          }
        }
      ],
      "origin": "HUMAN_LEGACY",
      "record_profile": "wrs-local-research-notes-0.1",
      "record_type": "research_note",
      "rrp_version": "0.1",
      "scope": {
        "description": "The estimator assumes a sufficiently uniform, shared hash function and fixed register configuration. Its approximately 1.04/sqrt(m) relative standard error is an asymptotic distributional statement, not a deterministic error bound for every stream. The analysis orders the large-cardinality and large-register limits. Small-range and hash-collision corrections have their own conditions. Registerwise maximum merges compatible streams but does not support deletion. The original extended abstract sketches some analytic steps. Later HyperLogLog++ improvements are separate. WRS has not reconstructed the full probability proof or replayed the published simulations.",
        "domain": "Approximate distinct counting"
      },
      "sources": [
        {
          "citation": "Flajolet, Fusy, Gandouet and Meunier, HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm (AofA07,DMTCS AH,127-146), original author copy",
          "url": "https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf"
        }
      ],
      "statement": "# HyperLogLog: counting distinct items with a small sketch\n\nHyperLogLog estimates the number of distinct stream items by combining per-bucket bit-pattern registers through a normalized harmonic mean, reducing variance while keeping a small mergeable state.\n\nA stream may contain billions of entries but far fewer distinct items. Instead of storing every item, HyperLogLog hashes them into buckets and remembers an extreme bit pattern in each bucket. A harmonic combination turns those small registers into an approximate distinct count. Compatible sketches can be merged by taking registerwise maxima, making the approach useful for distributed data. The compactness comes from accepting probabilistic error and a hash-model assumption, rather than recovering the complete set.\n\n## Scientific scope\n\nThe estimator assumes a sufficiently uniform, shared hash function and fixed register configuration. Its approximately 1.04/sqrt(m) relative standard error is an asymptotic distributional statement, not a deterministic error bound for every stream. The analysis orders the large-cardinality and large-register limits. Small-range and hash-collision corrections have their own conditions. Registerwise maximum merges compatible streams but does not support deletion. The original extended abstract sketches some analytic steps. Later HyperLogLog++ improvements are separate. WRS has not reconstructed the full probability proof or replayed the published simulations.\n\n## People and systems\n\nPhilippe Flajolet; Éric Fusy; Olivier Gandouet; Frédéric Meunier\n\n\n\n## Original sources\n\n- [Flajolet, Fusy, Gandouet and Meunier, HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm (AofA07,DMTCS AH,127-146), original author copy](https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf)\n",
      "summary": "HyperLogLog estimates the number of distinct stream items by combining per-bucket bit-pattern registers through a normalized harmonic mean, reducing variance while keeping a small mergeable state.\n\nA stream may contain billions of entries but far fewer distinct items. Instead of storing every item, HyperLogLog hashes them into buckets and remembers an extreme bit pattern in each bucket. A harmonic combination turns those small registers into an approximate distinct count. Compatible sketches can be merged by taking registerwise maxima, making the approach useful for distributed data. The compactness comes from accepting probabilistic error and a hash-model assumption, rather than recovering the complete set.",
      "title": "HyperLogLog: counting distinct items with a small sketch"
    },
    "record_id": "urn:uuid:c7c48209-29e5-4895-aabd-b22049c171b0",
    "version": 1,
    "source_ref": {
      "record_id": "urn:uuid:c7c48209-29e5-4895-aabd-b22049c171b0",
      "version": 1,
      "content_hash": "sha256:5cfbd562736f5eb7927df4f15872128fc302699808847fae0b28d76f46d5d6c6"
    },
    "export_view": "wrs-public-editorial-view-1",
    "public_view_hash": "sha256:a9e9216bbbf3dc5e61f03ae3d754d639cfc8dc63dab3c84fee47e10da6c46b73"
  },
  "target": {
    "record_id": "urn:uuid:c7c48209-29e5-4895-aabd-b22049c171b0",
    "version": 1,
    "content_hash": "sha256:5cfbd562736f5eb7927df4f15872128fc302699808847fae0b28d76f46d5d6c6"
  },
  "published_grade": {
    "profile": "wrs-published-grade-1",
    "edition": "2026-10-28.1",
    "id": "flajolet-et-al-hyperloglog-cardinality-2007",
    "entry_id": "flajolet-et-al-hyperloglog-cardinality-2007",
    "revision": 1,
    "title": "HyperLogLog: counting distinct items with a small sketch",
    "context": "Approximate distinct counting",
    "track": "Approximate distinct counting",
    "band": "A",
    "modifier": null,
    "status": "PROVISIONAL_EDITORIAL",
    "assessed_on": "2026-10-04",
    "evidence_cutoff": "2026-10-04",
    "achievement_state": "SUPPORTED_SCOPED_RESULT",
    "what_changed": "HyperLogLog estimates the number of distinct stream items by combining per-bucket bit-pattern registers through a normalized harmonic mean, reducing variance while keeping a small mergeable state.",
    "scope": "HyperLogLog estimates the number of distinct stream items by combining per-bucket bit-pattern registers through a normalized harmonic mean, reducing variance while keeping a small mergeable state. The estimator assumes a sufficiently uniform, shared hash function and fixed register configuration. Its approximately 1.04/sqrt(m) relative standard error is an asymptotic distributional statement, not a deterministic error bound for every stream. The analysis orders the large-cardinality and large-register limits. Small-range and hash-collision corrections have their own conditions. Registerwise maximum merges compatible streams but does not support deletion. The original extended abstract sketches some analytic steps. Later HyperLogLog++ improvements are separate. WRS has not reconstructed the full probability proof or replayed the published simulations.",
    "evidence_summary": "Source-linked, scoped account of the original work. The published scope states the scientific assumptions and remaining verification limits. WRS has not independently certified the full proof, experimental result or system benchmark.",
    "references": [
      {
        "title": "Flajolet, Fusy, Gandouet and Meunier, Hyper Log Log: the analysis of a near-optimal cardinality estimation algorithm (Aof A 07, DMTCS AH,127-146), original author copy",
        "url": "https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf",
        "locator": "Original linked work. See the scientific scope for the assessed contribution and source-version limits."
      }
    ],
    "roles": [
      {
        "who": "Philippe Flajolet",
        "did": "Original source-listed scientific author of this scoped work; byline does not determine effort fractions.",
        "credit": "SCIENCE"
      },
      {
        "who": "Éric Fusy",
        "did": "Original source-listed scientific author of this scoped work; byline does not determine effort fractions.",
        "credit": "SCIENCE"
      },
      {
        "who": "Olivier Gandouet",
        "did": "Original source-listed scientific author of this scoped work; byline does not determine effort fractions.",
        "credit": "SCIENCE"
      },
      {
        "who": "Frédéric Meunier",
        "did": "Original source-listed scientific author of this scoped work; byline does not determine effort fractions.",
        "credit": "SCIENCE"
      }
    ],
    "target": {
      "record_id": "urn:uuid:c7c48209-29e5-4895-aabd-b22049c171b0",
      "version": 1,
      "content_hash": "sha256:5cfbd562736f5eb7927df4f15872128fc302699808847fae0b28d76f46d5d6c6"
    },
    "scientific_correctness_certified": false,
    "independent_expert_calibration": false,
    "method": "PROPRIETARY",
    "points": "110000"
  },
  "canonical_agent_submission": false,
  "scientific_verification_awarded": false,
  "reader_guide": null,
  "reading_status": "SOURCE_LINKED_NOTE"
}
