{
  "slug": "cache-inclusion-property",
  "term": "Cache inclusion property",
  "aliases": [
    "Stack property",
    "Stack inclusion property"
  ],
  "definition": "The cache inclusion property requires the resident set at a smaller capacity to be contained in that at a larger capacity after each shared request prefix under the same replacement policy.",
  "note": "Fully associative, equal-size demand LRU has this property, so a hit at the smaller capacity remains a hit at the larger one. This is a capacity-comparison property, not a claim that a physical multi-level cache hierarchy is inclusive. [counter-stacks]\n\nPassing a finite trace sweep does not prove the property for an arbitrary policy. [hesela]",
  "related": [
    "lru-replacement",
    "fifo-replacement",
    "belady-anomaly"
  ],
  "citations": [
    {
      "id": "counter-stacks",
      "title": "Wires et al. Characterizing Storage Workloads with Counter Stacks. OSDI 2014 author slides, pages 20-22: inclusion and LRU stack algorithms.",
      "url": "https://www.usenix.org/sites/default/files/conference/protected-files/osdi14_slides_wires.pdf",
      "accessed": "2026-10-17"
    },
    {
      "id": "hesela",
      "title": "Hesela: finite cache-capacity replay, with full traces and assumptions.",
      "url": "https://hesela.com/analyses/sieve-cache-eviction-traces/#capacity",
      "accessed": "2026-10-17"
    }
  ],
  "status": "research",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-17"
}
