6

Information Geometry and Cumulant Tower

Key Theorems

curvatureK_eq_bridge_times_fisherprovedK = B × I
theorem curvatureK_eq_bridge_times_fisher {J : ℕ} {ρ : ℝ} (hρ : ρ ≠ 0)
    {c : ℝ} (hc : c ≠ 0) (hJ : (↑J : ℝ) ≠ 0) :
    curvatureK J ρ =
    bridgeRatio ρ * (↑J - 1) * c ^ 2 * escortFisherEigenvalue J ρ c := by
  simp only [curvatureK, bridgeRatio, escortFisherEigenvalue]
  field_simp
welfare_eq_bregmanprovedWelfare = Bregman divergence
theorem welfare_eq_bregman (z : ℝ) :
    welfareDistanceFn z =
    bregmanDiv (-Real.log z) (-Real.log 1) (-1) z 1 := by
  simp only [welfareDistanceFn, bregmanDiv, Real.log_one, neg_zero]
  ring
hierarchical_klprovedKL decomposes across hierarchy
theorem hierarchical_kl {N : ℕ} (z : Fin N → ℝ) (hz : ∀ n, 0 < z n)
    (treeCoeff : Fin N → ℝ) :
    ∑ n : Fin N, treeCoeff n * welfareDistanceFn (z n) =
    ∑ n : Fin N, treeCoeff n * klDivExp (1 / z n) 1 := by
  congr 1; ext n
  rw [welfare_eq_kl (hz n)]
fisherRaoDistance_selfprovedd(p,p) = 0
theorem fisherRaoDistance_self {J : ℕ} (s : Fin J → ℝ)
    (hs : ∀ j, 0 ≤ s j)
    (hsum : ∑ j : Fin J, s j = 1) :
    bhattacharyyaCoeff s s = 1 := by
  simp only [bhattacharyyaCoeff]
  simp_rw [Real.sqrt_mul_self (hs _)]
  exact hsum
fisherRao_distance_invarianceprovedReparametrization invariance
theorem fisherRao_distance_invariance {J : ℕ} (s0 s1 : Fin J → ℝ) :
    fisherRaoDistance s0 s1 = Real.arccos (bhattacharyyaCoeff s0 s1) := rfl
escortCumulant2_eq_varianceprovedκ₂ = escort variance (Fisher info)
theorem escortCumulant2_eq_variance [NeZero J]
    (x : Fin J → ℝ) (_hx : ∀ j, 0 < x j) (ρ : ℝ) :
    escortCumulant2 x ρ =
    escortVariance x ρ (fun j => Real.log (x j)) := by
  unfold escortCumulant2 escortVariance escortRawMoment
    escortPartitionZn escortExpectation escortProbability
  simp only [pow_one]
  simp_rw [div_mul_eq_mul_div, ← Finset.sum_div]
cumulant3_is_derivative_of_varianceprovedκ₃ = dκ₂/dρ (prudence)
theorem cumulant3_is_derivative_of_variance [NeZero J]
    (x : Fin J → ℝ) (hx : ∀ j, 0 < x j) (ρ : ℝ) :
    HasDerivAt (fun p => escortCumulant2 x p)
      (escortCumulant3 x ρ) ρ := by
  unfold escortCumulant2 escortCumulant3
  -- Get the moment recursion for M_2 and M_1
  have hM2 := escortRawMoment_hasDerivAt x hx ρ 2
  have hM1 := escortRawMoment_hasDerivAt x hx ρ 1
  -- Derivative of M_1^2 via chain rule
  have hM1sq := hM1.pow 2
  -- Combine: d/drho (M_2 - M_1^2) = dM_2 - d(M_1^2)
  have h := hM2.sub hM1sq
  refine h.congr_deriv ?_
  simp only [Nat.cast_ofNat]
  ring
escortCumulant2_zero_at_symmetryprovedAll cumulants vanish at symmetry
theorem escortCumulant2_zero_at_symmetry [NeZero J]
    {c : ℝ} (hc : 0 < c) (ρ : ℝ) :
    escortCumulant2 (fun _ : Fin J => c) ρ = 0 := by
  simp only [escortCumulant2, escortRawMoment_at_symmetry hc]
  ring
prudence_lockingprovedRisk aversion + prudence locked to ρ
theorem prudence_locking [NeZero J]
    (x : Fin J → ℝ) (hx : ∀ j, 0 < x j) (ρ : ℝ) :
    -- (i) kappa_3 is the derivative of kappa_2
    HasDerivAt (fun p => escortCumulant2 x p) (escortCumulant3 x ρ) ρ ∧
    -- (ii) Both vanish at symmetry
    (∀ c : ℝ, 0 < c →
      escortCumulant2 (fun _ : Fin J => c) ρ = 0 ∧
      escortCumulant3 (fun _ : Fin J => c) ρ = 0) :=
  ⟨cumulant3_is_derivative_of_variance x hx ρ,
   fun _ hc => ⟨escortCumulant2_zero_at_symmetry hc ρ,
                 escortCumulant3_zero_at_symmetry hc ρ⟩⟩
crisis_correlation_dualprovedPrices cor→1, quantities cor→−1/(J−1)
theorem crisis_correlation_dual {J : ℕ} (hJ : 2 ≤ J) :
    -- (i) Price limit: r = 0 gives cor = 1
    compoundSymmetryCorr 0 J = 1-- (ii) Quantity floor: cor > -1/(J-1) for all finite r
    (∀ r : ℝ, 0 ≤ r → -1 / (↑J - 1) < compoundSymmetryCorr r J) ∧
    -- (iii) Linear bound: beta = 1
    (∀ r : ℝ, 0 ≤ r → 1 - compoundSymmetryCorr r J ≤ ↑J * r) :=
  ⟨compoundSymmetryCorr_zero J,
   fun _ hr => correlation_above_floor hJ hr,
   fun _ hr => gap_from_one_le hJ hr⟩
All 103 declarations in this section