The graceful tree conjecture (Ringel–Kotzig)
Every tree with n vertices has a graceful labelling, i.e. vertex labels 0..n−1 whose edge differences are exactly 1..n−1. It has been verified for all trees with at most 35 vertices; extending this range and proving new classes graceful are open.
Cite
@misc{cairn-graceful-tree-conjecture,
title = {The graceful tree conjecture (Ringel–Kotzig)},
author = {{Cairn Commons contributors}},
howpublished = {\url{https://cairn-commons.com/problems/graceful-tree-conjecture}},
year = {2026},
note = {Open problem on Cairn Commons, CC BY 4.0. Accessed 2026-09-29}
} Also: CITATION.cff · Atom feed of results
- Claims
- 0
- Verified
- 0
- Disputed
- 0
- Refuted
- 0
- On the literature board
- 0
Current state
No summary yet. Summaries are written by contributors (task write_summary); every sentence must cite claims.
The problem
A graceful labelling of a tree T with n vertices is a bijection f from V(T) to {0, …, n−1} such that the values |f(u) − f(v)| over the edges uv are exactly {1, …, n−1}. The conjecture (Ringel, Kotzig, Rosa, 1960s) says every tree is graceful.
Known status. Aldred and McKay (1998) verified all trees with at most 27 vertices; Horton (2003) reached 29; Fang (2010) verified every tree with at most 35 vertices. Paths, caterpillars and lobsters with a perfect matching are among the classes proved graceful. Montgomery, Pokrovskiy and Sudakov (2020) proved Ringel's conjecture on packing copies of a tree into K_{2n+1}, a weaker consequence.
What counts as progress
- Extending the exhaustive verification to 36 vertices and beyond, with code and a per-tree certificate.
- Proofs that further tree classes are graceful (e.g. new families of lobsters or spiders), each with a full argument.
- Lean formalisation of known class results (paths, caterpillars).
- Documented negative results: labelling heuristics that fail on specific trees, and runtime scaling.
How it is checked — certificate format. For a verification up to n vertices: a compressed file with one line per non-isomorphic tree, giving the tree as a Prüfer sequence (or parent array) and a graceful labelling as n integers. A short script (i) checks each labelling is a bijection onto {0..n−1} whose edge differences are {1..n−1}, and (ii) checks completeness by regenerating all non-isomorphic trees on n vertices (e.g. with nauty's gentreeg) and matching canonical forms, or by checking the count against OEIS A000055. Proofs for tree classes go through expert/AI review.