Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Caccetta–Häggkvist conjecture

Open
TenChallenges.challenge_03

by utkuokur · Nov 4, 2026 · Mathlib 0df444a (Lean v4.33.1)

caccetta-haggkvistdigraphsten-challenges

The Caccetta–Häggkvist conjecture. For every r≥1r\ge 1r≥1, every loopless digraph on n≥1n\ge 1n≥1 vertices in which every vertex has out-degree at least rrr contains a directed cycle of length at most ⌈n/r⌉\lceil n/r\rceil⌈n/r⌉:

∀r≥1  ∀D: δ+(D)≥r  ⟹  girth(D)≤⌈n/r⌉.\forall r\ge 1\ \ \forall D:\ \delta^+(D)\ge r \implies \text{girth}(D)\le\lceil n/r\rceil .∀r≥1  ∀D: δ+(D)≥r⟹girth(D)≤⌈n/r⌉.

The circulant digraph on Z/n\mathbb Z/nZ/n with arcs v→v+1,…,v+rv\to v+1,\dots,v+rv→v+1,…,v+r shows that the bound cannot be improved. The conjecture is proved for r≤5r\le 5r≤5 and open for r≥6r\ge 6r≥6.

Formalization Note. The statement is ∀ r, statement_03 r, where statement_03 r unfolds to CaccettaHaggkvistFor r; the case r=0r=0r=0 is vacuous.

Preamble
import Definitions.Def_TenChallenges_Challenge_03
Formal statement
namespace TenChallenges
theorem challenge_03 : ∀ r : ℕ, statement_03 r := by sorry
end TenChallenges
Source
L. Caccetta, R. Häggkvist, On minimal digraphs with given girth, Proc. 9th Southeastern Conf. (1978), Congr. Numer. 21, 181–187 (the conjecture); V. Bajpai, N. Bowler, J. Carmesin, U. Okur, 10 Scalable Challenges in Combinatorics, AI4Math @ CICM 2026, challenge 3 (full form)
Read-back

What the Lean code literally says, in plain math · claude-fable-5-1

The theorem asserts: for every natural number rrr, the proposition statement⁡03(r)\operatorname{statement}_{03}(r)statement03​(r) holds, where statement⁡03(r)\operatorname{statement}_{03}(r)statement03​(r) is by definition exactly CH⁡(r)\operatorname{CH}(r)CH(r) (CaccettaHaggkvistFor r). The declaration carries a placeholder in place of a proof; it states the proposition without proving it. Unfolding everything, the theorem claims:

For every natural number rrr: if 0<r0 < r0<r, then for every type VVV in the lowest type universe, every finiteness structure on VVV (so VVV is a finite type), every witness that VVV is nonempty, and every digraph GGG on VVV -- a digraph being merely a binary relation AdjG\mathrm{Adj}_GAdjG​ on VVV, read "there is an arc from vvv to www", with no axioms -- if

  1. for every vertex vvv, ¬ AdjG(v,v)\neg\, \mathrm{Adj}_G(v,v)¬AdjG​(v,v) (no loops), and
  2. for every vertex vvv,   r≤ncard⁡{ w∈V∣AdjG(v,w) }\; r \le \operatorname{ncard}\{\, w \in V \mid \mathrm{Adj}_G(v,w) \,\}r≤ncard{w∈V∣AdjG​(v,w)}, where ncard⁡\operatorname{ncard}ncard is the natural-number cardinality of a set (its number of elements when finite, junk value 000 when infinite -- which cannot occur here since VVV is finite),

then there exists a natural number ℓ\ellℓ such that

2≤ℓ,ℓ⋅r<∣V∣+r,andHasCycle⁡G(ℓ).2 \le \ell, \qquad \ell \cdot r < |V| + r, \qquad \text{and} \qquad \operatorname{HasCycle}_G(\ell).2≤ℓ,ℓ⋅r<∣V∣+r,andHasCycleG​(ℓ).

Here ∣V∣|V|∣V∣ is the number of elements of VVV, the arithmetic is on natural numbers (multiplication and addition only, so no truncation), and HasCycle⁡G(ℓ)\operatorname{HasCycle}_G(\ell)HasCycleG​(ℓ) means: there is an injective map f:{0,…,ℓ−1}→Vf : \{0, \dots, \ell-1\} \to Vf:{0,…,ℓ−1}→V (the values f0,…,fℓ−1f_0, \dots, f_{\ell-1}f0​,…,fℓ−1​ are pairwise distinct) such that for every i∈{0,…,ℓ−1}i \in \{0, \dots, \ell - 1\}i∈{0,…,ℓ−1} the arc AdjG(fi,fi+1 mod ℓ)\mathrm{Adj}_G(f_i, f_{i+1 \bmod \ell})AdjG​(fi​,fi+1modℓ​) is present -- i.e. ℓ\ellℓ distinct vertices v0→v1→⋯→vℓ−1→v0v_0 \to v_1 \to \cdots \to v_{\ell-1} \to v_0v0​→v1​→⋯→vℓ−1​→v0​ joined by arcs in that direction, with nothing said about other arcs among them.

Since rrr ranges over all natural numbers with no upper bound, this is a single statement covering every r≥1r \ge 1r≥1 simultaneously (the case r=0r = 0r=0 is included but holds trivially, as 0<00 < 00<0 is false). For r≥1r \ge 1r≥1 the inequality ℓr<∣V∣+r\ell r < |V| + rℓr<∣V∣+r is equivalent to (ℓ−1) r<∣V∣(\ell - 1)\, r < |V|(ℓ−1)r<∣V∣, i.e. ℓ≤⌈∣V∣/r⌉\ell \le \lceil |V| / r \rceilℓ≤⌈∣V∣/r⌉. For a given finite VVV with ∣V∣≤r|V| \le r∣V∣≤r, looplessness makes every out-degree at most ∣V∣−1<r|V| - 1 < r∣V∣−1<r, so hypothesis 2 cannot hold and the claim for that VVV is vacuous; the substantive content is for 1≤r<∣V∣1 \le r < |V|1≤r<∣V∣. The clause 2≤ℓ2 \le \ell2≤ℓ excludes the length-000 cycle (which every digraph has vacuously) and the length-111 cycle (a loop, excluded anyway by hypothesis 1); a cycle of length 222 is two distinct vertices with arcs in both directions, and such opposite arcs are not forbidden by any hypothesis. In-degrees are unconstrained, and VVV ranges only over types in the lowest universe, with ∣V∣≥1|V| \ge 1∣V∣≥1 guaranteed by the nonemptiness assumption.

Human review
  • Endorsed by Shuze Chen · Nov 4, 2026

    Confirmed by the moderator at approval.

  • Endorsed by utkuokur · Nov 4, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me