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.SphericalPerceptron.Time line 11
abbrev Time := unitInterval
abbreviation OAI.SphericalPerceptron.Spin line 13
abbrev Spin (N : ℕ) := EuclideanSpace ℝ (Fin N)
definition OAI.SphericalPerceptron.unitSphereLaw line 15
def unitSphereLaw (N : ℕ) : Measure (Metric.sphere (0 : Spin N) 1) := let s := (volume : Measure (Spin N)).toSphere (s Set.univ)⁻¹ • s
structure OAI.SphericalPerceptron.Trial line 19
structure Trial where toFun : Time → ℝ monotone : Monotone toFun measurable : Measurable toFun nonneg : ∀ t, 0 ≤ toFun t le_one : ∀ t, toFun t ≤ 1
definition OAI.SphericalPerceptron.timeLaw line 28
def timeLaw : Measure Time := Measure.comap Subtype.val volume
definition OAI.SphericalPerceptron.tailIntegral line 30
def tailIntegral (m : Trial) (t : Time) : ℝ := ∫ s in Set.Ici t, m s ∂timeLaw
definition OAI.SphericalPerceptron.entropy line 33
def entropy (m : Trial) : ℝ≥0∞ := (∫⁻ t, (ENNReal.ofReal (tailIntegral m t))⁻¹ - (ENNReal.ofReal (1 - (t : ℝ)))⁻¹ ∂timeLaw) / 2
definition OAI.SphericalPerceptron.finitePointMeasure line 43
def finitePointMeasure {S : Type*} [MeasurableSpace S] (n : ℕ) (x : Fin n → S) : Measure S := ∑ i : Fin n, Measure.dirac (x i)
definition OAI.SphericalPerceptron.finitePoissonLaw line 51
def finitePoissonLaw {S : Type*} [MeasurableSpace S] (r : ℝ≥0) (ν : Measure S) : Measure (Measure S) := Measure.sum fun n : ℕ => poissonMeasure r {n} • (Measure.pi fun _ : Fin n => ν).map (finitePointMeasure n)
definition OAI.SphericalPerceptron.countablePoissonLaw line 77
def countablePoissonLaw {S : Type*} [MeasurableSpace S] (r : ℕ → ℝ≥0) (ν : ℕ → Measure S) : Measure (Measure S) := (Measure.infinitePi fun i => finitePoissonLaw (r i) (ν i)).map Measure.sum
definition OAI.SphericalPerceptron.finiteIntensityMarks line 87
def finiteIntensityMarks {S : Type*} [MeasurableSpace S] [Nonempty S] (κ : Measure S) : Measure S := if κ univ = 0 then Measure.dirac (Classical.choice ‹Nonempty S›) else (κ univ)⁻¹ • κ
definition OAI.SphericalPerceptron.poissonRandomMeasureLaw line 98
def poissonRandomMeasureLaw {S : Type*} [MeasurableSpace S] [Nonempty S] (κ : Measure S) [SFinite κ] : Measure (Measure S) := countablePoissonLaw (fun i => ((sfiniteSeq κ i) univ).toNNReal) (fun i => finiteIntensityMarks (sfiniteSeq κ i))
instance OAI.SphericalPerceptron.poissonRandomMeasureLaw_probability line 103
instance poissonRandomMeasureLaw_probability {S : Type*} [MeasurableSpace S] [Nonempty S] (κ : Measure S) [SFinite κ] : IsProbabilityMeasure (poissonRandomMeasureLaw κ) := by unfold poissonRandomMeasureLaw infer_instance
definition OAI.SphericalPerceptron.stableLogIntensity line 108
def stableLogIntensity (b : ℝ) : Measure ℝ := volume.withDensity (fun x => ENNReal.ofReal (b * Real.exp (-b*x)))
definition OAI.SphericalPerceptron.normalizedMeasure line 115
def normalizedMeasure {S : Type*} [MeasurableSpace S] (μ : Measure S) : Measure S := (μ univ)⁻¹ • μ
definition OAI.SphericalPerceptron.markedStableTotalE line 133
def markedStableTotalE (η : Measure (ℝ × S)) : ℝ≥0∞ := ∫⁻ p, ENNReal.ofReal (Real.exp p.1) ∂η
definition OAI.SphericalPerceptron.markedStableTotal line 139
def markedStableTotal (η : Measure (ℝ × S)) : ℝ := (markedStableTotalE η).toReal
definition OAI.SphericalPerceptron.markedStableMassKernel line 144
def markedStableMassKernel : Kernel (Measure (ℝ × S)) (ℝ × S) where toFun η := normalizedMeasure (η.withDensity (fun p => ENNReal.ofReal (Real.exp p.1))) measurable' := normalizedMeasure_measurable.comp (measurable_measure_withDensity_fixed (by fun_prop))
definition OAI.SphericalPerceptron.markedStableCountKernel line 155
def markedStableCountKernel : Kernel (Measure (ℝ × S)) (ℝ × S) := markedStableMassKernel.withDensity (fun η p => ENNReal.ofReal (markedStableTotal η*Real.exp (-p.1)))
definition OAI.SphericalPerceptron.DecoratedCascade line 160
@[reducible] def DecoratedCascade (S : Type) [MeasurableSpace S] : ℕ → MeasCat | 0 => MeasCat.of Unit | n+1 => MeasCat.of (Measure (ℝ×(S×DecoratedCascade S n)))
definition OAI.SphericalPerceptron.decoratedCascadeLaw line 170
def decoratedCascadeLaw {S : Type} [MeasurableSpace S] [Nonempty S] (ν : ProbabilityMeasure S) : (n : ℕ) → (Fin n → ℝ) → ProbabilityMeasure (DecoratedCascade S n) | 0, _ => ⟨Measure.dirac (),by exact Measure.dirac.isProbabilityMeasure⟩ | n+1, z => ⟨poissonRandomMeasureLaw ((stableLogIntensity (z 0)).prod ((ν : Measure S).prod (decoratedCascadeLaw ν n (fun i => z i.succ)))), by exact poissonRandomMeasureLaw_probability _⟩
definition OAI.SphericalPerceptron.decoratedTerminalTotalE line 177
def decoratedTerminalTotalE {X S : Type} [MeasurableSpace X] [MeasurableSpace S] (step : X×S → X) (H : X → ℝ) : (n : ℕ) → X×DecoratedCascade S n → ℝ≥0∞ | 0, p => ENNReal.ofReal (Real.exp (H p.1)) | n+1, p => ∫⁻ q : ℝ×(S×DecoratedCascade S n), ENNReal.ofReal (Real.exp q.1) * decoratedTerminalTotalE step H n (step (p.1,q.2.1),q.2.2) ∂markedStableCountKernel p.2
definition OAI.SphericalPerceptron.decoratedTerminalTotal line 183
def decoratedTerminalTotal {X S : Type} [MeasurableSpace X] [MeasurableSpace S] (step : X×S → X) (H : X → ℝ) (n : ℕ) (p : X×DecoratedCascade S n) : ℝ := (decoratedTerminalTotalE step H n p).toReal
definition OAI.SphericalPerceptron.gaussianShiftStep line 187
def gaussianShiftStep (σ : ℕ → ℝ) (p : (ℕ → ℝ) × ℝ) : ℕ → ℝ := fun i => p.1 (i+1)+σ i*p.2
32 more definitions are reached the same way; the full file lists them.