The lines of the Lean statement that state the theorem, then the definitions in the file that it uses.
Local definitions the statement names, followed through the definitions they name in turn. The match is by name in the source text, so a name reached only through notation can be missed; the full file is below.
abbreviation OAI.GAD.Basis line 13
abbrev Basis (n : ℕ) := Fin n → Fin 2
abbreviation OAI.GAD.QMatrix line 14
abbrev QMatrix (n : ℕ) := Matrix (Basis n) (Basis n) ℂ
definition OAI.GAD.entropy line 17
def entropy {ι : Type u} [Fintype ι] [DecidableEq ι] (P : Matrix ι ι ℂ) : ℝ := (Matrix.trace (cfc Real.negMulLog P)).re
definition OAI.GAD.IsState line 20
def IsState {ι : Type u} [Fintype ι] [DecidableEq ι] (P : Matrix ι ι ℂ) : Prop := P.PosSemidef ∧ Matrix.trace P = 1
definition OAI.GAD.kraus line 24
def kraus (γ ν : ℝ) (r : Fin 4) : Matrix (Fin 2) (Fin 2) ℂ := if r = 0 then !![(Real.sqrt (1 - ν) : ℂ), 0; 0, (Real.sqrt (1 - ν) * Real.sqrt (1 - γ) : ℂ)] else if r = 1 then !![0, (Real.sqrt (γ * (1 - ν)) : ℂ); 0, 0] else if r = 2 then !![(Real.sqrt ν * Real.sqrt (1 - γ) : ℂ), 0; 0, (Real.sqrt ν : ℂ)] else !![0, 0; (Real.sqrt (γ * ν) : ℂ), 0]
definition OAI.GAD.tensorKraus line 36
def tensorKraus (γ ν : ℝ) (n : ℕ) (r : Fin n → Fin 4) : QMatrix n := fun i j ↦ ∏ k, kraus γ ν (r k) (i k) (j k)
definition OAI.GAD.channel line 40
def channel (γ ν : ℝ) (n : ℕ) (P : QMatrix n) : QMatrix n := ∑ r : Fin n → Fin 4, tensorKraus γ ν n r * P * (tensorKraus γ ν n r).conjTranspose
structure OAI.GAD.Ensemble line 45
structure Ensemble (n : ℕ) where size : ℕ weight : Fin size → ℝ weight_nonneg : ∀ a, 0 ≤ weight a weight_sum : ∑ a, weight a = 1 signal : Fin size → QMatrix n signal_state : ∀ a, IsState (signal a)
definition OAI.GAD.ensembleValue line 53
def ensembleValue (γ ν : ℝ) {n : ℕ} (E : Ensemble n) : ℝ := (entropy (∑ a, (E.weight a : ℂ) • channel γ ν n (E.signal a)) - ∑ a, E.weight a * entropy (channel γ ν n (E.signal a))) / Real.log 2
definition OAI.GAD.holevo line 58
def holevo (γ ν : ℝ) (n : ℕ) : ℝ := sSup (Set.range (ensembleValue γ ν : Ensemble n → ℝ))
structure OAI.GAD.Code line 62
structure Code (n : ℕ) where messages : ℕ messages_pos : 0 < messages encoding : Fin messages → QMatrix n encoding_state : ∀ a, IsState (encoding a) decoding : Fin messages → QMatrix n decoding_pos : ∀ a, (decoding a).PosSemidef decoding_sum : ∑ a, decoding a = 1
definition OAI.GAD.averageError line 71
def averageError (γ ν : ℝ) {n : ℕ} (C : Code n) : ℝ := 1 - (∑ a, (Matrix.trace (C.decoding a * channel γ ν n (C.encoding a))).re) / (C.messages : ℝ)
definition OAI.GAD.Achievable line 77
def Achievable (γ ν R : ℝ) : Prop := ∃ C : (n : ℕ) → Code n, Tendsto (fun n ↦ averageError γ ν (C n)) atTop (nhds 0) ∧ ∀ ε : ℝ, 0 < ε → ∀ᶠ n : ℕ in atTop, R - ε ≤ Real.log ((C n).messages : ℝ) / Real.log 2 / (n : ℝ)
definition OAI.GAD.capacity line 84
def capacity (γ ν : ℝ) : ℝ := sSup {R : ℝ | Achievable γ ν R}
definition OAI.GAD.g line 86
def g (u : ℝ) : ℝ := Real.binEntropy ((1 + Real.sqrt (1 - 4 * u)) / 2)
definition OAI.GAD.v line 88
def v (γ ν p : ℝ) : ℝ := γ * ν * (1 - ν) + γ * (1 - γ) * (p - ν) ^ 2
definition OAI.GAD.objective line 90
def objective (γ ν p : ℝ) : ℝ := Real.binEntropy ((1 - γ) * p + γ * ν) - g (v γ ν p)
definition OAI.GAD.Maximizes line 93
def Maximizes (γ ν p : ℝ) : Prop := p ∈ Set.Icc (0 : ℝ) 1 ∧ ∀ q ∈ Set.Icc (0 : ℝ) 1, objective γ ν q ≤ objective γ ν p
definition OAI.GAD.phaseSignal line 97
def phaseSignal (p : ℝ) (s b : Fin 2) : ℂ := if b = 0 then (Real.sqrt (1 - p) : ℂ) else if s = 0 then (Real.sqrt p : ℂ) else -(Real.sqrt p : ℂ)
definition OAI.GAD.phaseProduct line 101
def phaseProduct (p : ℝ) {n : ℕ} (s : Basis n) (i : Basis n) : ℂ := ∏ k, phaseSignal p (s k) (i k)
definition OAI.GAD.phaseState line 104
def phaseState (p : ℝ) {n : ℕ} (s : Basis n) : QMatrix n := fun i j ↦ phaseProduct p s i * star (phaseProduct p s j)
definition OAI.GAD.phaseValue line 108
def phaseValue (γ ν p : ℝ) (n : ℕ) : ℝ := (entropy (∑ s : Basis n, (((2 : ℝ) ^ n)⁻¹ : ℂ) • channel γ ν n (phaseState p s)) - ∑ s : Basis n, ((2 : ℝ) ^ n)⁻¹ * entropy (channel γ ν n (phaseState p s))) / Real.log 2