{
  "status": "research",
  "advantages": [],
  "limitations": [
    {
      "text": "An incomplete decode is not evidence that two sets are equal.",
      "citationIds": [
        "iblt2011"
      ]
    }
  ],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-16",
  "slug": "invertible-bloom-lookup-table",
  "term": "Invertible Bloom lookup table",
  "aliases": [
    "IBLT"
  ],
  "definition": "An invertible Bloom lookup table is a randomized data structure that supports updates and can list encoded entries with high probability under its sizing assumptions.",
  "note": "Unlike a membership-only filter, an IBLT can recover entries by repeatedly removing decodable cells. Listing can stop with an incomplete result; the configured threshold is not an unconditional guarantee. [iblt2011] Different constructions trade memory, randomness and decoding cost differently. [stacked2024]",
  "related": [
    "bloom-filter",
    "set-reconciliation",
    "rateless-iblt"
  ],
  "citations": [
    {
      "id": "iblt2011",
      "title": "Michael T. Goodrich and Michael Mitzenmacher. Invertible Bloom Lookup Tables. arXiv:1101.2245v3 (2015 revision; first submitted 2011), sections 1.3 and 2.",
      "url": "https://arxiv.org/abs/1101.2245v3",
      "accessed": "2026-10-16"
    },
    {
      "id": "stacked2024",
      "title": "Nils Fleischhacker, Kasper Green Larsen, Maciej Obremski and Mark Simkin. Invertible Bloom Lookup Tables with Less Memory and Randomness. ESA 2024. DOI: 10.4230/LIPIcs.ESA.2024.54.",
      "url": "https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ESA.2024.54",
      "accessed": "2026-10-16"
    },
    {
      "id": "hesela-repair",
      "title": "Hesela: Replica repair, set reconciliation and record identity",
      "url": "https://hesela.com/analyses/replica-repair-coverage/#set-reconciliation",
      "accessed": "2026-10-16"
    }
  ]
}
