/-
Copyright 2026 The Formal Conjectures Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-/
import FormalConjecturesUtilErdős Problem 426
[Er76b] Erdős, P.,
[EnEr72] Entringer, R. C. and Erdős, Paul,
[HaSc73] Harary, Frank and Schwenk, Allen J.,
[Br75] Brouwer, A. E.,
[BrCh24] Bradač, D. and Christoph, M.,
open Filter SimpleGraph
namespace Erdos426
Sanity check: the empty graph ⊥ is a unique subgraph of itself. Its only subgraph is ⊥
(everything ≤ ⊥ equals ⊥), which is isomorphic to ⊥ via the identity.
@[category test, AMS 5]
theorem isUniqueSubgraph_bot_bot {V : Type*} : IsUniqueSubgraph (⊥ : SimpleGraph V) ⊥ := V:Type u_1⊢ ⊥.IsUniqueSubgraph ⊥
V:Type u_1⊢ ∀ (y : SimpleGraph V), (fun G' => G' ≤ ⊥ ∧ Nonempty (⊥ ≃g G')) y → y = ⊥
V:Type u_1G':SimpleGraph Vhle:G' ≤ ⊥⊢ G' = ⊥
All goals completed! 🐙
We say $H$ is a unique subgraph of $G$ if there is exactly one way to find $H$ as a subgraph (not necessarily induced) of $G$. Is there a graph on $n$ vertices with $$\gg \frac{2^{\binom{n}{2}}}{n!}$$ many distinct unique subgraphs?
Bradač and Christoph [BrCh24] have proved the answer is no: if $f(n)$ is the maximum number of unique subgraphs in a graph on $n$ vertices then $$f(n) = o\left(\frac{2^{\binom{n}{2}}}{n!}\right).$$
The $\gg$ below is read as: some constant $c>0$ works for arbitrarily large $n$. The negation of the proposition on the right is then exactly $f(n) = o(2^{\binom{n}{2}}/n!)$, the form in which Bradač and Christoph [BrCh24] resolved the problem.
@[category research solved, AMS 5]
theorem erdos_426 : answer(False) ↔
∃ c : ℝ, 0 < c ∧ ∃ᶠ (n : ℕ) in atTop, ∃ H : SimpleGraph (Fin n),
c * ((2 : ℝ) ^ n.choose 2 / n.factorial) ≤ (uniqueSubgraphCount H : ℝ) := ⊢ False ↔ ∃ c, 0 < c ∧ ∃ᶠ (n : ℕ) in atTop, ∃ H, c * (2 ^ n.choose 2 / ↑n.factorial) ≤ ↑H.uniqueSubgraphCount
All goals completed! 🐙
end Erdos426