Checking an Erdős conjecture on every tree, three sizes further than before
An Erdős conjecture: in every tree, and every forest, the number of ways to pick k vertices with no two joined rises, then falls, as k grows. I checked every tree three sizes past the old limit; it held.
A tree is a network of dots (vertices) and lines, all connected, with no cycles. The conjecture is due to Alavi, Malde, Schwenk and Erdős. Every tree of each size was built and tested. That is a computer check of trees of those sizes; it does not prove the conjecture, and it does not cover forests.
Choose a field to open a short section, written for people who work in it, on what this result means there. The rest of the page does not change.
I extended the check of a conjecture of Alavi, Malde, Schwenk and Erdős from every tree with up to ▲ vertices to every tree with up to . The three new sizes hold about ▲ trees, about ▲ times as many as all the smaller sizes together, and every one has a unimodal independence sequence (the counts rise, then fall). (A ▲ after a number links to a note about it at the bottom of the page.) The rest of this page explains the test, how the check was done, and where it stops short of a proof.
Draw a tree: a set of dots, called vertices, joined by lines, all in one piece, with no loops. A tree's size is its number of vertices. Now count the ways to pick dots so that no two picked dots are joined by a line. There is one way to pick no dots at all. Count the ways to pick one dot, then two, then three, and so on, and write the counts in a row. For a straight path of five dots, there are 5 ways to pick one, 6 ways to pick two, and 1 way to pick three (both ends and the middle), so the row is 1, 5, 6, 1: it goes up, then down.
In 1987, Alavi, Malde, Schwenk and Erdős conjectured that this happens for every tree, and every forest (a collection of trees): once the row starts going down, it never goes back up. It may stay level for a while. A row like that is called unimodal (it has one peak). This is problem 993 on erdosproblems.com, the public list of Erdős problems, and it was open when this check finished, on August 4, 2026. (Status as of November 7, 2026: two proof claims were listed on erdosproblems.com, on ▲ and ▲; the first covers only forests above some size, the second every forest. In October a Lean version of the second claim's revised proof, a version that a computer checks step by step, was accepted by both proof checkers of Palomar, a public registry of such proofs. Lean confirms that the argument proves its formal statement; that statement was taken from a public library of formal problem statements, where a reviewer not involved in the proof had approved it. Neither paper has been refereed, and neither cites this check. teorth/erdosproblems, the community database of Erdős problems on GitHub that Terence Tao maintains, still records the problem as open, with the label "falsifiable" (its term for open, with a single counterexample enough to disprove it); it may not have been updated. erdosproblems.com itself stopped showing whether problems are open or solved on October 6, 2026. If the all-forests proof holds, this check is an independent computation that agrees with it on every tree up to its size. The details are under What happened next, at the end.)
A conjecture about every tree cannot be settled by checking trees one by one, since there are infinitely many. It can be checked for every tree up to a given size, which shows where a counterexample could still be hiding. Earlier computations had checked every tree with up to 29 vertices: the forum user JakeMallen reported it on the problem's forum on January 7, 2026, and Brett Reynolds posted code and results for the same range there on March 12, 2026 (GitHub repository BrettRey/erdos-problem-993), with a preprint on Zenodo that month. I took the check to 32 vertices. My own runs scanned the sizes ; the other sizes up to 29 rest on those earlier checks. Trees are counted by shape (unlabeled: two trees that differ only in how the dots are numbered count once). The conjecture held for every tree checked, including all trees with 32 vertices.
Animation, no sound. An empty grid of small squares appears. First about 9 squares fill in grey: these are all the trees with 1 to 29 vertices, which earlier computations checked. Then, in the accent colour, about 15 squares fill in for the trees with 30 vertices, about 40 for 31 vertices and about 110 for 32 vertices, each size a little darker than the one before. A counter above the grid climbs to 165,134,111,053, the exact number of trees with 30, 31 or 32 vertices, and a green check mark appears with the words no counterexample. One square stands for about one billion trees.
How fast the number of trees grows
Each extra vertex means about two and three-quarter times as many trees as the size before:
| Vertices | Trees |
|---|---|
| 29 (the old limit) | |
| 30 | |
| 31 | |
| 32 |
So the largest size alone had about twenty times as many trees as the old limit. All the sizes up to the old limit together hold trees; the three new sizes hold about ▲, about ▲ times as many.
How the check was done
Who did what: when I asked for open problems that one computer could make progress on, Claude agents (Anthropic) working under my direction put this one on a shortlist, and I asked them to take the check past the old limit. The agents chose the method, wrote the program, ran it, and compared its tree counts with the OEIS list described below; they also drafted the forum comments and the pull request text. I read the results and the drafts, posted the forum comments from my own account, and had the pull request text checked again before approving it.
The program generated every tree of each size with nauty, a standard graph-generation package, worked out each tree's row of counts exactly, and checked that the row never rises again after falling. The largest size was split into 16 parts, each taking a share of the trees; the parts ran side by side on one computer, and together they took about ▲ hours of wall-clock time. Any tree that broke the pattern would have been printed. None was.
Two checks back up the claim that every tree was covered. First, before going past the old limit, the program rescanned every tree with 28 and with ▲ vertices, using code written separately from Brett Reynolds's: its tree counts matched his published counts exactly, and, as in his run, no tree broke the pattern. Second, at every size, the number of trees the program produced matched the known number of trees of that size, which is recorded in the OEIS (the Online Encyclopedia of Integer Sequences) as . That match would catch a generator that lost or added trees overall. It could not, on its own, catch one tree skipped and another repeated in its place; nauty's generator is built to produce each tree exactly once, and the count match confirms the totals. The separate rescan covered only sizes 28 and 29. For 30, 31 and 32 vertices, the new sizes, the results rest on this one program and on its exact match with the OEIS tree counts.
There was one false alarm along the way. In July 2026, during the 30-vertex run, a search of the program's output for the word VIOLATION matched the program's own all-clear line ("no VIOLATION lines above"), and it took twenty minutes to confirm there was no counterexample. Since then, searches match only lines that begin with that word.
What it shows, and where it is posted
This does not prove the conjecture. It shows that any tree that breaks the pattern has more than vertices, so a search for one can start above that size. It does not settle forests, which the conjecture also covers: a forest's row of counts is the product of its trees' rows, multiplied as polynomials are (each entry is a sum of products; for two separate dots, 1, 1 times 1, 1 gives 1, 2, 1), and multiplying rows that each have a single peak can produce one that does not, so a forest could in principle fail even if every tree passes.
I posted the results as comments in the problem's forum on erdosproblems.com, in two steps. (On October 6, 2026, the site paused new comments and proof claims on its problems; the existing ones, these included, stay up as an archive.) The first comment, dated on the forum, covered every tree with 30 and 31 vertices; the run for 32 vertices had not started yet. That run finished on August 4, and the second comment, with the result for 32 vertices, is dated on the forum. The code, the count for each size and instructions to reproduce the run are in a public repository archived with a DOI (a permanent, citable identifier).
For specialists
Erdős Problem #993, posed by Alavi, Malde, Schwenk and Erdős (The vertex independence sequence of a graph is not constrained, Congressus Numerantium 58, 1987), conjectures that the independence sequence of every tree (and forest) is unimodal. This check covers trees only; unimodality is not preserved under products of polynomials, so forests on the same number of vertices are not implied. Products of log-concave sequences stay log-concave (Hoggar, 1974), so a forest can fail only if one of its trees is not log-concave, and such trees exist. Trees were generated with nauty's gentreeg and streamed as edge lists. For each tree, the independence polynomial was computed exactly with the standard in/out subtree dynamic program, using 64-bit integer coefficients; a tree on 32 vertices has at most 2^31 + 1 independent sets, the number for the star (Prodinger and Tichy, 1982, showed that the star has the most among trees of a given size), so no coefficient can overflow. The scanned sequence includes the constant term, and the scan flags only a strict increase after a strict decrease, so plateaus are allowed. Large orders were split into 16 parts using gentreeg's residue classes. At every order the number of trees scanned matches . Before extending, this independent implementation rescanned n = 28 and n = 29: the tree counts match Reynolds's exactly, with no failures. This is an exhaustive check up to the stated order and not a proof; it says nothing about larger orders, which only a proof can cover.
For readers in software:how the software was built, and which parts you could reuse
If you check every case of something and the total number of cases is already known, compare your count with that total and fail the run when they differ. Printing the count to a log is not enough. A generator that drops or duplicates cases on balance still reports zero failures, and comparing the count with the known total is the check that catches it. It will not catch a drop and a duplicate that cancel, so it works best alongside a generator designed to produce each case once.
Notes on the numbers marked ▲
- Largest tree size, in vertices, at which every tree had been checked before my work: 29. Earlier checks reached this size: the forum user JakeMallen reported it on the problem's forum in January 2026, and Brett Reynolds posted code and a preprint in March 2026. My check starts where theirs ended.
- Approximate wall-clock hours for the n = 32 run, one machine, sixteen parts: 23. An approximate figure, as its source states it.
- Free trees with 30, 31 or 32 vertices, the sizes first checked in this work, rounded to billions: 165 billion. Rounded to the nearest billion; the exact count is 165,134,111,053.
- How many times as many trees the three new sizes hold as all smaller sizes together: 19. Rounded from 18.999. This compares the three new sizes with all the trees up to 29 vertices together. The 32-vertex size alone has about 20 times as many trees as the 29-vertex size.
- Date the first proof claim for problem 993 was listed on erdosproblems.com: September 21, 2026. A listed claim, covering forests above an unspecified size only; a forum participant re-ran its Lean version. The second claim covers every forest. teorth/erdosproblems, the community database of Erdős problems on GitHub, still records the problem as open; erdosproblems.com stopped showing problem statuses, and paused new proof claims, on October 6, 2026.
- Date the second proof claim for problem 993 was listed on erdosproblems.com: September 27, 2026. A listed claim, not yet refereed. A Lean version of its revised proof (Li, Vallier and Zhang; a later version of arXiv:2610.07943) was registered on Palomar, a public registry of computer-checked proofs, on October 11, 2026, and accepted by both of its proof checkers. teorth/erdosproblems, the community database of Erdős problems on GitHub, still records the problem as open; erdosproblems.com stopped showing problem statuses, and paused new proof claims, on October 6, 2026. The claim was made by university authors using OpenAI's model, not by OpenAI.
These notes appear in every version of this page.
How this was checked
Every case was checked
Every tree at each size I ran was checked, none sampled, and the sizes I did not run are covered by the earlier checks. Any tree that broke the pattern would have been printed, and none was.
Aug 4, 2026
Reproduced known values first
At every size, the number of trees checked matched the known count in the OEIS exactly, so no trees were lost or added overall; the generator is designed to produce each tree once. Before going past the old limit, the program, written separately from Brett Reynolds's code, rescanned every tree at the earlier computation's two largest sizes: its tree counts matched his published counts exactly, and, as in his run, no tree broke the pattern.
Aug 4, 2026
Revision history
- 2026-11-07 · corrected
The status line said the problem is still listed as open on erdosproblems.com. That site stopped showing whether problems are open or solved in October, so the line now says that no proof has been confirmed and that the community database of Erdős problems on GitHub still records the problem as open. The page also notes that the site paused new comments and proof claims.
- 2026-11-07 · status-change
The status line said no proof had been confirmed. In October a Lean version of the all-forests proof claim was accepted by both proof checkers of the Palomar registry, so the line now says that, and that neither paper has been refereed and the GitHub database still records the problem as open.
- 2026-11-06 · corrected
The opening now says vertices, with the dots explained once, and states the test the trees pass. The page now says which sizes my own runs covered, and that the smaller sizes rest on the earlier checks, so it no longer reads as if my runs alone covered every tree up to the new limit. It adds how many trees the three new sizes hold, and the dates of the two later proof claims. A sentence about the false alarm had lost its first words and is whole again.
- 2026-11-05 · revised
Added a row under the title linking to the GitHub commit with the final run and to my pull request to the Erdős problems database, with the dates it was opened and merged in Pacific time.
- 2026-10-29 · corrected
The page credited the earlier record to a paper from April; it was set earlier, by the forum user JakeMallen on the problem's forum in January and by Brett Reynolds's code and preprint in March, and the paper only cites it. The body still said the merged database change cites this check; it adds the OEIS tree-count link, and the pull request's description cites the check. The page said nobody has proved the conjecture; it now notes the two proof claims posted in September and that the problem is still listed as open.
- 2026-10-29 · corrected
The page said each extra dot means a bit under three times as many trees; at these sizes it is about two and three-quarter times, which is what the table shows. It now also names who posted the two September proof claims.
- 2026-10-29 · revised
The page now says who did what (what I asked for and did, what the Claude agents did), says that the separate rescan covered only the two largest sizes of the earlier check, gives the forum comments and the end of the run in date order, and explains the ▲ mark where it first appears. The opening no longer tells the later proof claims; a short dated status line points to them.
- 2026-10-27 · corrected
The summary said this check is linked from Terence Tao's database of Erdős problems. The database links the OEIS tree-count sequence, added by my pull request; the summary now says that.
- 2026-10-27 · revised
Wording tightened and the sentence on the merged pull request moved to its own page; the page now says the conjecture also covers forests and this check covers trees only, credits the earlier computation to B. Reynolds, and points to the proof claims posted later.
- 2026-10-22 · revised
The check box no longer says the count match shows each tree was produced once; it shows none were lost or added overall.
- 2026-09-16 · corrected
The Erdős tree check's title and claim now name the independent-set sequence (the counts of ways to pick dots with no line between them), the one the problem is about.
How to cite this
Tyler Satchel Orden (2026). Checking an Erdős conjecture on every tree, three sizes further than before. Cyborg Mathematics. https://cyborgmathematics.com/results/tree-level-sequence-unimodality (updated November 7, 2026)
This page has no DOI of its own. Cite the URL and the date; the revision history above keeps a dated citation meaningful.
BibTeX
@misc{orden2026treelevelsequenceunimodality,
author = {Tyler Satchel Orden},
title = {Checking an Erdős conjecture on every tree, three sizes further than before},
year = {2026},
howpublished = {Cyborg Mathematics},
url = {https://cyborgmathematics.com/results/tree-level-sequence-unimodality}
}See also
- Checking an Erdős conjecture on every tree up to a size rules out small counterexamples but does not prove it. What such a check shows and how it is made.Why checking a math conjecture on every case up to a size is not a proof
- A dropped digit sat in an OEIS entry for years until a Claude agent spotted it. What that means for anyone who copies values from reference tables.What a long-standing error in a math database means for anyone who copies reference values
- A network puzzle: pick as few points as possible so that every point is picked or linked to a picked one. A search I ran with Claude found a smaller set than any published.A new best-known dominating set for the twelfth Fibonacci cube, and a month-long run with no answer
- Every run first had to reproduce the expert's published tables exactly. That let him check the new work on his own machines instead of taking my word for it.Extending an expert's tables for unsolved take-away games in a way he could check himself