Proof of Theorem 3.5, p. 9 — a uniformly random A : {0,1}ⁿ → {0,1}ⁿ misses 1ⁿ with probability ((2ⁿ−1)/2ⁿ)^{2ⁿ} ≥ 1/4
ProvedBBBV.RandomOracle.prob_noInverse_gecountingp2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1probabilityrandom-function
Let and let be chosen uniformly at random among all functions . The probability that has no preimage under (that is, ) is
This is the mass of the class in the proof of Theorem 3.5: the final failure probability is half of it.
Formalization Note The probability is the fraction of functions with the property. The paper writes "at least (for sufficiently large)"; the bound holds for every , with equality at , and is stated so.
Preamble
import Mathlib import Definitions.Def_BBBV_RandomOracle_QueryModel
Formal statement
namespace BBBV.RandomOracle
open Classical in
theorem prob_noInverse_ge {n : ℕ} (hn : 1 ≤ n) :
((Finset.univ.filter fun A : Str n → Str n => NoInverse A).card : ℝ) /
(Fintype.card (Str n → Str n) : ℝ) = (((2 : ℝ) ^ n - 1) / 2 ^ n) ^ (2 ^ n) ∧
(1 / 4 : ℝ) ≤ (((2 : ℝ) ^ n - 1) / 2 ^ n) ^ (2 ^ n) := by sorry
end BBBV.RandomOracle
Source
Bennett, Bernstein, Brassard and Vazirani, Strengths and weaknesses of quantum computing, arXiv:quant-ph/9701001v1, p. 9, proof of Theorem 3.5, third paragraph (the class 𝒜)
Human review
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.