Documentation

Atlas.ProbabilisticMethodsInCombinatorics.code.TournamentHamiltonPaths

A tournament on $n$ vertices: an irreflexive, complete, asymmetric directed-edge relation on $\mathrm{Fin}\, n$, equipped with a decidability instance.

Instances For

    Number of Hamilton paths of $T$: permutations $\sigma$ of $\mathrm{Fin}\, n$ such that every consecutive edge $\sigma(i) \to \sigma(i+1)$ lies in $T$.

    Instances For

      Number of Hamilton cycles of $T$: permutations $\sigma$ of $\mathrm{Fin}(n+1)$ such that every cyclic edge $\sigma(i) \to \sigma(i+1)$ lies in $T$; zero if $n = 0$.

      Instances For

        Trivial bound: the number of Hamilton paths is at most $n!$, the total number of permutations of $\mathrm{Fin}\, n$.

        Adjacency matrix of a tournament as a real $0/1$-matrix: entry $(i, j)$ is $1$ if $T$ has the edge $i \to j$, else $0$.

        Instances For

          Every entry of the tournament's adjacency matrix is $0$ or $1$.

          noncomputable def TournamentHamiltonPaths.toSuccPerm {n : } (σ : Equiv.Perm (Fin (n + 1))) :
          Equiv.Perm (Fin (n + 1))

          Successor permutation derived from $\sigma$: the conjugate $\sigma \circ (+1) \circ \sigma^{-1}$, which sends $\sigma(j)$ to $\sigma(j + 1)$.

          Instances For
            theorem TournamentHamiltonPaths.successor_relation {n : } (σ : Equiv.Perm (Fin (n + 1))) (j : Fin (n + 1)) :
            σ (j + 1) = (toSuccPerm σ) (σ j)

            Successor relation: $\sigma(j + 1) = (\mathrm{toSuccPerm}\,\sigma)(\sigma(j))$.

            theorem TournamentHamiltonPaths.toSuccPerm_valid {n : } (T : Tournament (n + 1)) (σ : Equiv.Perm (Fin (n + 1))) ( : ∀ (i : Fin (n + 1)), T.edge (σ i) (σ (i + 1))) (v : Fin (n + 1)) :
            T.edge v ((toSuccPerm σ) v)

            If $\sigma$ encodes a Hamilton cycle of $T$, then for every vertex $v$ the directed edge $v \to (\mathrm{toSuccPerm}\,\sigma)(v)$ lies in $T$.

            theorem TournamentHamiltonPaths.fiber_eq_of_eq_at_zero {n : } (σ₁ σ₂ : Equiv.Perm (Fin (n + 1))) (heq : toSuccPerm σ₁ = toSuccPerm σ₂) (h0 : σ₁ 0 = σ₂ 0) :
            σ₁ = σ₂

            Two permutations with the same successor permutation and the same value at $0$ must be equal: induct on the index using the successor relation.

            theorem TournamentHamiltonPaths.permanent_ge_card_row {m : } (A : Matrix (Fin m) (Fin m) ) (hA : ∀ (i j : Fin m), A i j = 0 A i j = 1) (S : Finset (Equiv.Perm (Fin m))) (hS : σS, ∀ (i : Fin m), A (σ i) i = 1) :

            Permanent lower bound: if $S$ is a set of permutations $\sigma$ with $A_{\sigma(i), i} = 1$ for all $i$, then $\mathrm{perm}(A) \ge |S|$.

            theorem TournamentHamiltonPaths.adjMatrix_entry_one_iff {m : } (T : Tournament m) (i j : Fin m) :
            T.adjMatrix i j = 1 T.edge i j

            Adjacency-matrix entry is $1$ iff the corresponding tournament edge exists.

            Key counting bound: the number of Hamilton cycles is at most $(n + 1) \cdot \mathrm{perm}(A_T)$, where $A_T$ is the adjacency matrix of $T$.

            theorem TournamentHamiltonPaths.tournament_permanent_optimization_bound {n : } (T : Tournament (n + 1)) :
            ↑(n + 1) * T.adjMatrix.permanent (Real.pi / 2 + 1) * ↑(n + 1) * (n + 1).factorial / 2 ^ (n + 1)

            Permanent optimization bound for tournament adjacency matrices: combining Brégman's inequality with smoothing/Stirling, $(n + 1) \cdot \mathrm{perm}(A_T) \le \sqrt{\pi/2 + 1} \cdot \sqrt{n+1} \cdot (n+1)! / 2^{n+1}$.

            theorem TournamentHamiltonPaths.hamilton_cycles_upper_bound :
            ∃ (C : ), 0 < C ∀ (n : ) (T : Tournament n), T.numHamiltonCycles C * n * n.factorial / 2 ^ n

            Alon's Hamilton-cycle bound: there exists $C > 0$ such that every $n$-vertex tournament has at most $C \sqrt{n} \cdot n! / 2^n$ Hamilton cycles.

            Averaging step: for $n \ge 2$ there exists a one-vertex extension $T'$ of $T$ such that $\mathrm{numHamiltonPaths}(T) \le 4 \cdot \mathrm{numHamiltonCycles}(T')$.

            theorem TournamentHamiltonPaths.alon_hamilton_paths_bound :
            ∃ (C : ), 0 < C ∀ (n : ), 1 n∀ (T : Tournament n), T.numHamiltonPaths C * n * n * n.factorial / 2 ^ n

            Theorem 10.2.4 (Alon 1990, Hamilton paths). There exists $C > 0$ such that every $n$-vertex tournament has at most $C \cdot n \sqrt{n} \cdot n! / 2^n$ Hamilton paths.