Documentation

LeanPool.GKPCarry.BinaryReduction

Binary reduction of the GKP conjecture #

Kummer's theorem at p = 2 identifies the two-adic valuation of a central binomial coefficient with binary popcount. Hence every positive non-power of two already satisfies the divisibility-by-four branch of GKP.

The two-adic valuation of Nat.centralBinom n is the binary popcount of n.

Binary popcount at least two forces divisibility by four.

theorem GKPCarry.popcount_le_one_zero_or_pow_two (n : ) (hpop : (Nat.digits 2 n).sum 1) :
n = 0 ∃ (k : ), n = 2 ^ k

A natural number with binary popcount at most one is zero or a power of two.

theorem GKPCarry.popcount_pow_two (k : ) :
(Nat.digits 2 (2 ^ k)).sum = 1

Every power of two has binary popcount one.

theorem GKPCarry.four_dvd_centralBinom_of_not_power_of_two {n : } (hn : 0 < n) (hnp : ¬∃ (k : ), n = 2 ^ k) :

Every positive non-power of two satisfies the divisibility-by-four branch of GKP.

The full GKP conjecture follows from its power-of-two restriction.

The power-of-two restriction follows from the full GKP conjecture.

GKP is equivalent to its restriction to powers of two.