Skip to content

feat(Combinatorics): designs exist - #521

Open
alreadydone wants to merge 8 commits into
leanprover:mainfrom
alreadydone:DesignsExist
Open

feat(Combinatorics): designs exist#521
alreadydone wants to merge 8 commits into
leanprover:mainfrom
alreadydone:DesignsExist

Conversation

@alreadydone

Copy link
Copy Markdown
Contributor

No description provided.

`Design` takes `blocks : Set (Set X)`, so designs here are simple. When
`r = q` a block of size `q` containing an `r`-set `s` must equal `s`, so
`{b ∈ blocks | s ⊆ b}.encard ≤ 1` and no design with `lam ≥ 2` exists,
while `DivisibilityCondition n q q lam` holds vacuously because every
factor is `(q - i).choose (q - i) = 1`. That makes `keevash` and
`keevash_resolvable` false at `q = r`, e.g. `q = r = 1`, `lam = 2`.

Both sources state the theorem for `q ≥ r ≥ 1` but also define a design
as a set of blocks, so they have the same corner case; it is read out
informally. Use the strict inequality, matching `keevash_sah_sawhney`
below. `keevash_large_set` is unaffected: at `q = r` its extra hypothesis
reads `lam ∣ (n - r).choose 0 = 1`.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011hxUxCg6joVz4hMa3m5Zh5
@kim-em

kim-em commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

Pushed r < q on keevash and keevash_resolvable. At q = r the divisibility condition is vacuous (every factor is (q-i).choose (q-i) = 1), but blocks : Set (Set X) means no design with lam ≥ 2 exists, so both were false: e.g. q = r = 1, lam = 2. keevash_large_set is fine as is.

Main now requires `group`, `status`, `visible`, `statement_revision` and
`tags` in every problem manifest (EvalTools/Markers.lean, added in
07848f4). Without them `validate-manifest` fails with
"missing required key: group".

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011hxUxCg6joVz4hMa3m5Zh5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants