{
  "artifactId": "artifact.library.mathlib.kruskal-katona-theorem.v001",
  "candidateOnly": false,
  "category": "Combinatorics",
  "claimBoundary": "This page indexes Mathlib’s colex-initial-segment form of the Kruskal–Katona theorem for finite families of subsets of Fin n. The comparison family 𝒜 is r-uniform, 𝒞 is a colex initial segment of the r-subsets, and #𝒞 may be smaller than #𝒜. The selected endpoint compares only the cardinalities of their immediate one-element-deletion shadows. It is not the later iterated-shadow theorem, the Lovász/binomial formulation, an equality-case classification, a uniqueness theorem, or an algorithm.",
  "collectionSlug": "landmark-theorems-in-mathlib",
  "exactFormalStatement": "theorem Finset.kruskal_katona {n r : ℕ} {𝒜 𝒞 : Finset (Finset (Fin n))} (h𝒜r : (𝒜 : Set (Finset (Fin n))).Sized r) (h𝒞𝒜 : #𝒞 ≤ #𝒜) (h𝒞 : Finset.Colex.IsInitSeg 𝒞 r) : #(∂ 𝒞) ≤ #(∂ 𝒜)",
  "family": "Extremal set theory",
  "id": "library.mathlib.kruskal-katona-theorem.v001",
  "links": {
    "collection": "/collections/landmark-theorems-in-mathlib/",
    "collectionData": "/data/collections/mathlib-landmarks.json",
    "entry": "/library-theorems/kruskal-katona-theorem/",
    "entryData": "/data/library-theorems/kruskal-katona-theorem.json",
    "evidence": "/proofs/artifact.library.mathlib.kruskal-katona-theorem.v001.html",
    "evidenceData": "/data/proofs/artifact.library.mathlib.kruskal-katona-theorem.v001.evidence.json",
    "source": "/sources/upstream/kruskal-katona-theorem/"
  },
  "landmark": {
    "completeFormalType": "theorem Finset.kruskal_katona {n r : ℕ} {𝒜 𝒞 : Finset (Finset (Fin n))} (h𝒜r : (𝒜 : Set (Finset (Fin n))).Sized r) (h𝒞𝒜 : #𝒞 ≤ #𝒜) (h𝒞 : Finset.Colex.IsInitSeg 𝒞 r) : #(∂ 𝒞) ≤ #(∂ 𝒜)",
    "concepts": [
      "extremal set theory",
      "uniform set families",
      "colex order",
      "immediate shadows",
      "set-family compression"
    ],
    "plainLanguage": "Take a finite family 𝒜 whose sets all have the same size, and a colex initial segment 𝒞 with no more members. Delete one element from every member and keep the distinct results. The colex family produces no more distinct one-step deletions than 𝒜 does.",
    "poster": {
      "alt": "An ivory extremal-set-theory poster compares an r-uniform family with a colex initial segment, places the inequalities |C| at most |A| and |shadow(C)| at most |shadow(A)| in the central theorem panel, and follows a four-stage compression route to the exact one-step scope.",
      "byteSize": 2250534,
      "caption": "Among the compared finite r-uniform families, a colex initial segment of no greater cardinality has no larger immediate shadow.",
      "description": "Unlabelled three-bead family tiles and two-bead shadow tiles introduce one-element deletion without pretending to enumerate the general theorem. The dominant panel separates the size premise from the immediate-shadow conclusion. The source-bound ribbon then matches cardinality, compresses without growing the shadow, decreases a terminating family measure, and identifies the fully compressed endpoint with the colex initial segment.",
      "derivatives": [
        {
          "byteSize": 107776,
          "height": 960,
          "mediaType": "image/webp",
          "publicPath": "/assets/library-theorems/kruskal-katona-theorem/theorem-poster-v1-640.webp",
          "sha256": "sha256:01ab9a9a52f1ef2ffae4c3daf98a9645e8f048813e145a271e23898364fa8d00",
          "width": 640
        },
        {
          "byteSize": 203260,
          "height": 1536,
          "mediaType": "image/webp",
          "publicPath": "/assets/library-theorems/kruskal-katona-theorem/theorem-poster-v1-1024.webp",
          "sha256": "sha256:e5927c94964513a6a63c076890fbdfbfac2721dc362fb0ef440e5600f26e2cfa",
          "width": 1024
        }
      ],
      "generatedAt": "2026-07-25T16:32:45-04:00",
      "height": 1536,
      "mediaType": "image/png",
      "modelRequested": "gpt-image-2",
      "publicPath": "/assets/library-theorems/kruskal-katona-theorem/theorem-poster-v1.png",
      "sha256": "sha256:2ddaeef3c7116d8bfe94234002484f6b56eb6064b50b2aa17813b5a81564fd4d",
      "title": "Kruskal–Katona Theorem at a glance",
      "width": 1024,
      "kind": "theorem_poster",
      "transcript": "EXTREMAL SET THEORY · SHADOWS\nKRUSKAL–KATONA THEOREM\nC: colex initial segment of r-sets\nA: r-uniform\nshadow(C)\nshadow(A)\nA: r-uniform\nC: colex initial segment of r-sets\n|C| ≤ |A|\n|shadow(C)| ≤ |shadow(A)|\nCOLEX HAS THE SMALLER IMMEDIATE SHADOW\nMATCH SIZE\nCOMPRESS\nMEASURE DECREASES\nIDENTIFY COLEX\nEXACT SCOPE\nOne-step shadow comparison only.\nNo iterated, binomial, or equality-case claim."
    },
    "visual": {
      "alt": "Two finite families of four three-element color-coded sets pass through the immediate-shadow operation; the colex example yields six distinct two-element sets while the comparison family yields nine.",
      "byteSize": 2142427,
      "caption": "In this finite model, the four-set colex initial segment has six immediate-shadow members, no more than the comparison family’s nine.",
      "description": "The left family is the first four colex triples on four consistently colored elements, whose deduplicated immediate shadow contains all six pairs. The right family uses four triples on five colors and has nine distinct deletion pairs. Each operator icon removes one active bead; the faded ghost is an action cue, not another set member. The displayed 6 ≤ 9 comparison illustrates the exact theorem direction without introducing the iterated or binomial formulations.",
      "derivatives": [
        {
          "byteSize": 34932,
          "height": 427,
          "mediaType": "image/webp",
          "publicPath": "/assets/library-theorems/kruskal-katona-theorem/theorem-schematic-v1-640.webp",
          "sha256": "sha256:c43a3554f4291cec6fe87179148b88e05a0fb2d1e78730c668380c2ecc63c378",
          "width": 640
        },
        {
          "byteSize": 86978,
          "height": 800,
          "mediaType": "image/webp",
          "publicPath": "/assets/library-theorems/kruskal-katona-theorem/theorem-schematic-v1-1200.webp",
          "sha256": "sha256:b3d012142e05993f39da777def4167c29a04761d642819df0f53becc07ba64cd",
          "width": 1200
        }
      ],
      "generatedAt": "2026-07-25T16:32:45-04:00",
      "height": 1024,
      "mediaType": "image/png",
      "modelRequested": "gpt-image-2",
      "publicPath": "/assets/library-theorems/kruskal-katona-theorem/theorem-schematic-v1.png",
      "sha256": "sha256:91287ed00dfd898123dcfbca0510539f617e54abd4c714317f10b64ffa724ac8",
      "title": "Colex compresses the immediate shadow",
      "width": 1536
    },
    "walkthrough": null,
    "whyLandmark": "Kruskal–Katona is a foundational sharp extremal theorem for uniform set families. It identifies colex initial segments as canonical shadow minimizers and its Mathlib source exposes a particularly teachable route through compressions, a strictly decreasing family measure, and a terminal colex family."
  },
  "nonClaims": [
    "ProofAtlas did not originate the Kruskal–Katona theorem or Mathlib’s declaration.",
    "The selected declaration compares immediate shadows, not iterated shadows.",
    "It is not the Lovász or closed binomial-expansion formulation.",
    "It does not classify equality cases or assert a unique minimizing family.",
    "The generated explanation and visuals are not proof evidence."
  ],
  "publicExportEligible": true,
  "relationship": "upstream_direct",
  "schemaVersion": "library-theorem-entry-data.v1",
  "statementId": "statement.library.mathlib.kruskal-katona-theorem.v001",
  "statusAxes": {
    "acceptedAtlasResult": "Not recorded for the preferred artifact",
    "locallyReproduced": "Exact upstream declaration replayed",
    "reviewedPage": "Current public presentation reviewed",
    "upstreamIndexed": "Pinned source bytes verified locally"
  },
  "summary": "A colex initial segment of r-subsets has no larger immediate shadow than any r-uniform comparison family with at least as many members.",
  "targetId": "target.library.mathlib.kruskal-katona-theorem.v001",
  "title": "Kruskal–Katona Theorem",
  "upstreamOrigin": {
    "declarationName": "Finset.kruskal_katona",
    "immutableSourceUrl": "https://github.com/leanprover-community/mathlib4/blob/5e932f97dd25535344f80f9dd8da3aab83df0fe6/Mathlib/Combinatorics/SetFamily/KruskalKatona.lean#L270",
    "packageName": "mathlib",
    "repositoryUrl": "https://github.com/leanprover-community/mathlib4",
    "sourceArtifactHash": "sha256:c6351d7ee422db9eed8f45335f4128eb3a66fe09997d12abc15eba38e9863f1c",
    "sourceByteLength": 19772,
    "sourceCommit": "5e932f97dd25535344f80f9dd8da3aab83df0fe6",
    "sourceFile": "Mathlib/Combinatorics/SetFamily/KruskalKatona.lean",
    "sourceLine": 270,
    "verificationKind": "git_worktree"
  },
  "publicPresentationReview": {
    "status": "reviewed"
  }
}
