clopen.solutions
OP-00040 Open

The clique number of Paley graphs

Submit a result

For a prime $p \equiv 1 \pmod 4$ let $G_p$ be the Paley graph on $\mathbb{Z}_p$, in which $i \sim j$ when $i - j$ is a nonzero quadratic residue, and let $\omega$ denote the clique number. A random graph of the same degree has logarithmic clique number. Known bounds are $\omega(G_p) \le \sqrt p$, from a spectral argument or the Lovász number, and $\omega(G_p) \le (1 + o(1))\sqrt{p/2}$ (Hanson and Petridis).

Problem. Prove or disprove that $\omega(G_p) = O(\operatorname{polylog} p)$.

Source: A well-known conjecture; Open Problem 8.4 of Bandeira's Ten Lectures and Forty-Two Open Problems (2016). Conjecture 25 of Randomstrasse101, in Bandeira's “On the clique number of the Paley Graph” (2025); Entry 12 of arXiv:2603.29571.

The statement is adapted from randomstrasse101.math.ethz.ch, whose text is available under CC BY 4.0.

Classification

Primary
NT — Number Theory
Secondary
CO
Keywords
clique number, Paley graph, pseudorandom graphs, Randomstrasse101
Literature checked
Oct. 2, 2026 by clemens-admin

References

@misc{randomstrasse2025,
  author = {Bandeira, Afonso S. and Dmitriev, Daniil and Lucca, Kevin and Nizi{\'c}-Nikolac, Petar and R{\"o}dder, Almut},
  title = {{Randomstrasse101}: Open Problems of 2025},
  year = {2026},
  eprint = {2603.29571},
  archivePrefix = {arXiv}
}

@article{hanson2021paley,
  author = {Hanson, Brandon and Petridis, Giorgis},
  title = {Refined estimates concerning sumsets contained in the roots of unity},
  journal = {Proceedings of the London Mathematical Society},
  volume = {122},
  number = {3},
  pages = {353--358},
  year = {2021},
  doi = {10.1112/plms.12322}
}

@misc{kunisky2023paley,
  author = {Kunisky, Dmitriy},
  title = {Spectral pseudorandomness and the road to improved clique number bounds for {P}aley graphs},
  year = {2023},
  eprint = {2303.16475},
  archivePrefix = {arXiv}
}

@misc{bandeira2016fortytwo,
  author = {Bandeira, Afonso S.},
  title = {Ten Lectures and Forty-Two Open Problems in the Mathematics of Data Science},
  year = {2016},
  url = {https://people.math.ethz.ch/~abandeira/TenLecturesFortyTwoProblems.pdf}
}

Canonical Lean statement

A submission resolves this problem by proving the constant Problem_OP_00040.

/-- OP-00040: The clique number of Paley graphs -/
def Problem_OP_00040 : Prop :=
  ∃ (C : ℝ) (k : ℕ), ∀ p : ℕ, p.Prime → p % 4 = 1 →
  ((SimpleGraph.fromRel fun (x y : ZMod p) => IsSquare (x - y)).cliqueNum : ℝ) ≤
    C * Real.log p ^ k

Authored by —; reviewed by clemens-admin.

Available to match against in: Lean v4.33.1 with Mathlib v4.33.1.

Resolving this problem in Lean

Add the problems package as a dependency, import this problem's module, and prove the constant. Any published revision works.

In lakefile.toml:

[[require]]
name = "RegistryProblems"
git = "https://github.com/cthalhammer/registry-problems"
rev = "753bebc58e3fee845f4fffec7d24e7c8cc2a689a"

In your proof:

import RegistryProblems.OP_00040

theorem resolution : RegistryProblems.Problem_OP_00040 := by
  sorry

In preprint.toml, mapping the claim to the declaration that establishes it:

[[statements]]
label = "Theorem 1"
lean = "resolution"
latex = "..."
problem = "OP-00040"
claim = "full"

To disprove it instead, prove the negation and claim "disproof", or "counterexample" if the proof exhibits one:

theorem disproof : ¬ RegistryProblems.Problem_OP_00040 := by
  sorry

You can also write the statement out in full; the verifier checks it matches up to definitional equality. Partial results and reductions are not matched against this statement.

Citing this problem

This identifier is permanent. It will not change if the problem is solved, reclassified or withdrawn.

OP-00040, "The clique number of Paley graphs", clopen.solutions.