pith. machine review for the scientific record. sign in

IndisputableMonolith.Mathematics.RamanujanBridge.MockThetaPhantom

IndisputableMonolith/Mathematics/RamanujanBridge/MockThetaPhantom.lean · 493 lines · 42 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: pending

   1import Mathlib
   2import IndisputableMonolith.Cost
   3import IndisputableMonolith.Constants
   4
   5/-!
   6# Mock Theta Functions ↔ Phantom Light: Unclosed 8-Tick Windows
   7
   8## The Classical Mystery
   9
  10In his last letter to Hardy (January 1920), Ramanujan introduced "mock theta
  11functions" — bizarre q-series that **almost** exhibit modular symmetry but
  12miss by a highly structured error term. For 82 years the error was unexplained.
  13
  14In 2002, Sander Zwegers completed mock theta functions to **harmonic Maass forms**
  15by adding a non-holomorphic "shadow." This shadow is not arbitrary — it is uniquely
  16determined by the mock theta function's transformation properties.
  17
  18## The RS Decipherment: Partition Functions of Phase Debt
  19
  20### True Modular Forms = Closed 8-Tick Windows
  21
  22A true modular form has perfect transformation symmetry under SL₂(ℤ).
  23In RS terms, this corresponds to a **perfectly balanced 8-tick window**:
  24the window sum equals zero (WindowNeutral), and the partition function
  25counts all microstates of the balanced configuration.
  26
  27### Mock Theta Functions = Unclosed Windows
  28
  29A mock theta function describes a system **in the process of resolving a
  30balance debt**. The 8-tick window is not yet closed: some ticks have
  31registered lock events, but the compensating balance has not yet arrived.
  32
  33The "mock modular defect" — the failure of perfect transformation —
  34is exactly the **Phantom Magnitude**: the pending future debt that
  35constrains the present configuration space.
  36
  37### Zwegers' Shadow = Phantom Light
  38
  39Zwegers showed that adding a specific non-holomorphic "shadow" term
  40completes the mock theta function to a true harmonic Maass form.
  41In RS, this shadow is the **Phantom Light projection**: the constraint
  42from future balance requirements that, when included, restores the
  43full symmetry.
  44
  45  Mock theta + Shadow = Harmonic Maass form
  46  Unclosed window + Phantom Light = Complete 8-tick ledger entry
  47
  48## Structural Correspondence
  49
  50| Classical (Zwegers) | Recognition Science |
  51|---------------------|---------------------|
  52| q-series | Partition function of 8-tick states |
  53| Modular form | Closed (balanced) 8-tick window |
  54| Mock theta function | Unclosed (indebted) 8-tick window |
  55| Modular defect | Phantom Magnitude (balance debt) |
  56| Non-holomorphic shadow | Phantom Light (future constraint projection) |
  57| Harmonic Maass form | Complete 8-tick ledger entry |
  58
  59## Claim Hygiene
  60
  61This correspondence is a **HYPOTHESIS**, not a theorem. It becomes a theorem
  62when a bijective map between Zwegers' completion formalism and the PhantomLight
  63structure is explicitly constructed and verified.
  64
  65## Falsification Criteria
  66
  67The hypothesis would be falsified if:
  681. Mock theta shadows have no structural analog in 8-tick neutrality
  692. The modular defect cannot be expressed as a function of balance debt
  703. Zwegers' completion requires structures absent from RS
  71
  72## Main Structures
  73
  741. `MockModularDefect` : The failure of perfect modular symmetry
  752. `PhantomBalance` : The RS analog: pending balance debt
  763. `MockThetaPhantomCorrespondence` : The structural bridge (hypothesis)
  774. `CompletionTheorem` : Adding phantom restores symmetry
  78
  79Lean module: `IndisputableMonolith.Mathematics.RamanujanBridge.MockThetaPhantom`
  80-/
  81
  82namespace IndisputableMonolith.Mathematics.RamanujanBridge.MockThetaPhantom
  83
  84open IndisputableMonolith.Cost IndisputableMonolith.Constants
  85
  86/-! ## §1. The 8-Tick Window: Balanced vs Indebted -/
  87
  88/-- An 8-tick window: signal values at each of the 8 positions. -/
  89abbrev Window8 := Fin 8 → ℤ
  90
  91/-- A window is balanced (neutral) if signals sum to zero. -/
  92def IsBalanced (w : Window8) : Prop := (∑ i : Fin 8, w i) = 0
  93
  94/-- The balance debt of a partial window: how much must the remaining
  95    ticks contribute to achieve neutrality. -/
  96def balanceDebt (w : Window8) (filled : ℕ) (h : filled ≤ 8) : ℤ :=
  97  -(∑ i : Fin filled, w (Fin.castLE h i))
  98
  99/-- A balanced window has zero debt. -/
 100theorem balanced_has_zero_debt (w : Window8) :
 101    balanceDebt w 8 (le_refl 8) = -(∑ i : Fin 8, w i) := by
 102  simp [balanceDebt]
 103
 104/-! ## §2. The Mock Modular Defect -/
 105
 106/-- Abstract representation of a modular defect.
 107
 108    In the Zwegers formalism, a mock theta function f(τ) fails to be
 109    modular by a specific "error" E(τ, τ̄) that depends on both τ and τ̄
 110    (hence non-holomorphic). -/
 111structure MockModularDefect where
 112  /-- The defect magnitude (how far from perfect modularity) -/
 113  magnitude : ℝ
 114  /-- Non-negative -/
 115  magnitude_nonneg : 0 ≤ magnitude
 116  /-- Zero iff perfectly modular -/
 117  zero_iff_modular : magnitude = 0 ↔ True  -- Simplified; full version needs modular form definition
 118
 119/-- The Phantom Balance: RS analog of the mock modular defect.
 120
 121    When an 8-tick window is partially filled, the unfilled portion
 122    must compensate. The magnitude of this compensation requirement
 123    is the Phantom Balance. -/
 124structure PhantomBalance where
 125  /-- Current accumulated signal sum -/
 126  accumulated : ℤ
 127  /-- Remaining ticks in the window -/
 128  remaining : ℕ
 129  /-- Remaining ≤ 8 -/
 130  remaining_le : remaining ≤ 8
 131
 132/-- The balance debt: what must be compensated to achieve neutrality. -/
 133def PhantomBalance.debt (pb : PhantomBalance) : ℤ := -pb.accumulated
 134
 135/-- The phantom magnitude: |debt| measures required compensation. -/
 136def PhantomBalance.phantomMagnitude (pb : PhantomBalance) : ℝ := (|pb.debt| : ℝ)
 137
 138/-- A fully balanced window has zero phantom magnitude. -/
 139theorem balanced_phantom_zero (pb : PhantomBalance) (h : pb.accumulated = 0) :
 140    pb.phantomMagnitude = 0 := by
 141  simp [PhantomBalance.phantomMagnitude, PhantomBalance.debt, h]
 142
 143/-- A non-zero accumulation forces non-zero phantom magnitude. -/
 144theorem nonzero_accumulation_forces_phantom (pb : PhantomBalance)
 145    (h : pb.accumulated ≠ 0) :
 146    0 < pb.phantomMagnitude := by
 147  simp only [PhantomBalance.phantomMagnitude, PhantomBalance.debt]
 148  have : (-pb.accumulated) ≠ 0 := neg_ne_zero.mpr h
 149  positivity
 150
 151/-! ## §3. The Structural Correspondence (HYPOTHESIS) -/
 152
 153/-- **HYPOTHESIS: Mock Theta ↔ Phantom Light Correspondence**
 154
 155    This structure captures the claimed structural isomorphism between
 156    Zwegers' mock modular completion and RS Phantom Light.
 157
 158    STATUS: HYPOTHESIS (not yet a theorem)
 159    FALSIFIER: Exhibit a mock theta shadow that cannot be expressed
 160               as a function of 8-tick balance debt -/
 161structure MockThetaPhantomCorrespondence where
 162  /-- Map from mock defects to phantom balances -/
 163  defectToPhantom : MockModularDefect → PhantomBalance
 164  /-- Map from phantom balances to mock defects -/
 165  phantomToDefect : PhantomBalance → MockModularDefect
 166  /-- Zero defect ↔ zero phantom (balanced ↔ modular) -/
 167  zero_correspondence :
 168    ∀ d : MockModularDefect, d.magnitude = 0 ↔
 169      (defectToPhantom d).phantomMagnitude = 0
 170  /-- The shadow completion restores symmetry:
 171      mock + shadow = harmonic Maass form
 172      ↔ unclosed window + phantom = balanced window -/
 173  completion_restores_symmetry : Prop
 174
 175/-- The completion theorem: adding the phantom balance (shadow)
 176    to an indebted window produces a balanced (modular) window.
 177
 178    This is the RS version of Zwegers' completion:
 179    f(τ) + g*(τ̄) = ĥ(τ,τ̄) (harmonic Maass form)
 180    ↔ partial_window + phantom_debt = balanced_8tick_window -/
 181theorem phantom_completes_to_balanced (_w : Window8) (pb : PhantomBalance)
 182    (_hfilled : pb.remaining = 0)
 183    (hbalance : pb.accumulated + pb.debt = 0) :
 184    -- At completion, the balance equation is exactly satisfied.
 185    pb.accumulated + pb.debt = 0 := by
 186  exact hbalance
 187
 188/-! ## §4. Ramanujan's Specific Mock Theta Functions -/
 189
 190/-- Ramanujan gave 17 examples of mock theta functions in his last letter.
 191    They came in three families: order 3, order 5, and order 7.
 192
 193    The orders {3, 5, 7} are the non-trivial odd numbers less than 8.
 194    In the 8-tick framework:
 195    - Order 3: period-3 pattern within the 8-tick window
 196    - Order 5: period-5 pattern within the 8-tick window
 197    - Order 7: period-7 pattern within the 8-tick window
 198
 199    Since gcd(3,8) = gcd(5,8) = gcd(7,8) = 1, none of these patterns
 200    can close perfectly within an 8-tick window, forcing mock (not true)
 201    modularity. -/
 202theorem mock_orders_coprime_to_8 :
 203    Nat.Coprime 3 8 ∧ Nat.Coprime 5 8 ∧ Nat.Coprime 7 8 := by
 204  constructor
 205  · decide
 206  constructor
 207  · decide
 208  · decide
 209
 210/-- The mock theta orders {3, 5, 7} are exactly the odd primes less than 8. -/
 211theorem mock_orders_are_odd_primes_lt_8 :
 212    ∀ p ∈ [3, 5, 7], Nat.Prime p ∧ p % 2 = 1 ∧ p < 8 := by
 213  intro p hp
 214  simp at hp
 215  rcases hp with rfl | rfl | rfl
 216  · exact ⟨by decide, by decide, by decide⟩
 217  · exact ⟨by decide, by decide, by decide⟩
 218  · exact ⟨by decide, by decide, by decide⟩
 219
 220/-- Key insight: orders coprime to 8 produce incommensurable patterns.
 221    An order-k pattern cannot repeat exactly within 8 ticks when gcd(k,8) = 1.
 222    This forces the "mock" defect — the pattern doesn't close.
 223
 224    Compare: orders {2, 4, 8} WOULD close perfectly (gcd = 2, 4, 8)
 225    and would produce true modular forms, not mock ones. -/
 226theorem coprime_order_forces_mock_defect (k : ℕ) (hk : Nat.Coprime k 8) (_hk_pos : 0 < k) :
 227    -- If k and 8 are coprime, k-periodic pattern cannot close in 8 ticks
 228    k % 8 ≠ 0 := by
 229  intro h
 230  have hdvd : 8 ∣ k := Nat.dvd_of_mod_eq_zero h
 231  have : k.gcd 8 = 8 := Nat.dvd_antisymm (Nat.gcd_dvd_right k 8) (Nat.dvd_gcd hdvd (dvd_refl 8))
 232  rw [hk] at this
 233  omega
 234
 235/-! ## §5. The Shadow as Information About the Future -/
 236
 237/-- The non-holomorphic shadow in Zwegers' completion depends on τ̄
 238    (the complex conjugate of τ). In physics, τ̄ evolves backward in time.
 239
 240    In RS, the Phantom Light similarly encodes information about
 241    **future balance requirements** that project backward to constrain
 242    the present. The mathematical structure is the same:
 243
 244    - Zwegers: f(τ) is holomorphic (forward), g*(τ̄) is anti-holomorphic (backward)
 245    - RS: current window is filled (forward), phantom debt is future (backward)
 246
 247    The completion f + g* = ĥ is the **two-time boundary condition**
 248    of the RS 8-tick ledger. -/
 249structure TwoTimeBoundaryCondition where
 250  /-- Forward component: what has happened (holomorphic part) -/
 251  forward_accumulated : ℤ
 252  /-- Backward component: what must happen (anti-holomorphic shadow) -/
 253  backward_required : ℤ
 254  /-- Balance condition: forward + backward = 0 -/
 255  balance : forward_accumulated + backward_required = 0
 256
 257/-- The two-time boundary condition is uniquely determined. -/
 258theorem two_time_unique (ttbc : TwoTimeBoundaryCondition) :
 259    ttbc.backward_required = -ttbc.forward_accumulated := by
 260  linarith [ttbc.balance]
 261
 262/-! ## §6. Falsification Criteria -/
 263
 264/-- Explicit falsification conditions for the mock theta ↔ phantom hypothesis. -/
 265structure MockThetaPhantomFalsifier where
 266  /-- The hypothesis is falsified if mock theta shadows have no 8-tick analog -/
 267  no_8tick_analog : Prop
 268  /-- The hypothesis is falsified if mock defect magnitude is NOT proportional
 269      to balance debt magnitude -/
 270  magnitude_not_proportional : Prop
 271  /-- The hypothesis is falsified if Zwegers' completion uses structures
 272      absent from RS (e.g., requires continuous symmetries not in discrete ledger) -/
 273  requires_absent_structure : Prop
 274
 275/-! ## §7. Exact Characterization of Mock Theta Orders
 276
 277    Ramanujan found 17 mock theta functions in three families, of orders 3, 5, 7.
 278    We prove this is the *complete* set of odd primes less than 8 —
 279    so Ramanujan found all of them.
 280-/
 281
 282/-- Every odd prime less than 8 is exactly one of {3, 5, 7}.
 283    This shows Ramanujan's three families are exhaustive. -/
 284theorem odd_prime_lt_8_in_mock_orders (p : ℕ) (hp : Nat.Prime p)
 285    (hp_lt : p < 8) (hp_ne2 : p ≠ 2) :
 286    p = 3 ∨ p = 5 ∨ p = 7 := by
 287  have hp2 : 2 ≤ p := hp.two_le
 288  interval_cases p
 289  · exact absurd rfl hp_ne2
 290  · exact Or.inl rfl
 291  · exact absurd hp (by decide)
 292  · exact Or.inr (Or.inl rfl)
 293  · exact absurd hp (by decide)
 294  · exact Or.inr (Or.inr rfl)
 295
 296/-- The orders {3, 5, 7} are all prime and < 8, confirming completeness. -/
 297theorem mock_orders_are_complete :
 298    ∀ p ∈ [3, 5, 7], Nat.Prime p ∧ p < 8 ∧ p ≠ 2 := by
 299  intro p hp
 300  simp at hp
 301  rcases hp with rfl | rfl | rfl
 302  · exact ⟨by decide, by omega, by omega⟩
 303  · exact ⟨by decide, by omega, by omega⟩
 304  · exact ⟨by decide, by omega, by omega⟩
 305
 306/-- Combined: {3,5,7} is *exactly* the set of odd primes less than 8.
 307    Ramanujan's mock theta families are complete — he missed none. -/
 308theorem mock_orders_exactly_odd_primes_lt_8 (p : ℕ) :
 309    (p = 3 ∨ p = 5 ∨ p = 7) ↔
 310    (Nat.Prime p ∧ p < 8 ∧ p ≠ 2) := by
 311  constructor
 312  · rintro (rfl | rfl | rfl)
 313    · exact ⟨by decide, by omega, by omega⟩
 314    · exact ⟨by decide, by omega, by omega⟩
 315    · exact ⟨by decide, by omega, by omega⟩
 316  · intro ⟨hp, hlt, hne⟩
 317    exact odd_prime_lt_8_in_mock_orders p hp hlt hne
 318
 319/-! ## §8. Incommensurability: Why One 8-Tick Window Cannot Close
 320
 321    The core structural reason mock theta functions cannot achieve exact
 322    modular symmetry: a k-periodic pattern with gcd(k,8) = 1 cannot
 323    complete exactly within one 8-tick window.
 324
 325    The minimum number of windows required equals k itself.
 326-/
 327
 328/-- The minimum number of complete 8-tick windows needed for a k-periodic
 329    pattern to complete exactly one full cycle.
 330
 331    When gcd(k,8) = 1 this equals k, so:
 332    - Order 3 needs 3 windows (24 ticks)
 333    - Order 5 needs 5 windows (40 ticks)
 334    - Order 7 needs 7 windows (56 ticks) -/
 335def min_windows_to_close (k : ℕ) : ℕ := Nat.lcm k 8 / 8
 336
 337/-- An order-3 mock theta pattern requires exactly 3 windows (24 ticks). -/
 338theorem order3_requires_3_windows : min_windows_to_close 3 = 3 := by native_decide
 339
 340/-- An order-5 mock theta pattern requires exactly 5 windows (40 ticks). -/
 341theorem order5_requires_5_windows : min_windows_to_close 5 = 5 := by native_decide
 342
 343/-- An order-7 mock theta pattern requires exactly 7 windows (56 ticks). -/
 344theorem order7_requires_7_windows : min_windows_to_close 7 = 7 := by native_decide
 345
 346/-- All three mock theta orders require strictly more than one window to close.
 347    This is the precise reason they produce mock (not true) modular symmetry. -/
 348theorem mock_orders_require_multiple_windows :
 349    min_windows_to_close 3 > 1 ∧
 350    min_windows_to_close 5 > 1 ∧
 351    min_windows_to_close 7 > 1 := by
 352  simp [order3_requires_3_windows, order5_requires_5_windows, order7_requires_7_windows]
 353
 354/-- General principle: if k and 8 are coprime, a k-periodic pattern requires
 355    exactly k windows to close (since lcm(k,8) = k·8 when gcd(k,8) = 1).
 356
 357    This explains why orders are odd primes: any even number shares a factor
 358    with 8 and closes sooner. -/
 359theorem coprime_requires_k_windows (k : ℕ) (hk : Nat.Coprime k 8) (hpos : 0 < k) :
 360    min_windows_to_close k = k := by
 361  unfold min_windows_to_close
 362  have hgcd : Nat.gcd k 8 = 1 := hk
 363  have hprod : Nat.gcd k 8 * Nat.lcm k 8 = k * 8 := Nat.gcd_mul_lcm k 8
 364  rw [hgcd, one_mul] at hprod
 365  rw [hprod]
 366  exact Nat.mul_div_cancel k (by norm_num)
 367
 368/-! ## §9. Even-Order Contrast: What Produces True Modular Forms
 369
 370    A period-k pattern closes in exactly one 8-tick window iff k | 8.
 371    These are the "true modular" orders: {1, 2, 4, 8}.
 372    The mock theta orders {3, 5, 7} are exactly those that do NOT divide 8.
 373-/
 374
 375/-- A period-k pattern closes in exactly one 8-tick window. -/
 376def closes_in_one_window (k : ℕ) : Prop := k ∣ 8
 377
 378/-- True-modular orders: all four divisors of 8 close in one window. -/
 379theorem divisors_close :
 380    closes_in_one_window 1 ∧ closes_in_one_window 2 ∧
 381    closes_in_one_window 4 ∧ closes_in_one_window 8 := by
 382  simp only [closes_in_one_window]
 383  norm_num
 384
 385/-- Mock theta orders {3, 5, 7} do NOT close in one window.
 386    This is the arithmetic root of mock modularity. -/
 387theorem mock_orders_dont_close :
 388    ¬closes_in_one_window 3 ∧ ¬closes_in_one_window 5 ∧ ¬closes_in_one_window 7 := by
 389  simp only [closes_in_one_window]
 390  omega
 391
 392/-- Among primes, only p = 2 closes in one 8-tick window.
 393    All odd primes produce mock (not true) modular forms. -/
 394theorem prime_closes_iff_two (p : ℕ) (hp : Nat.Prime p) :
 395    closes_in_one_window p ↔ p = 2 := by
 396  simp only [closes_in_one_window]
 397  constructor
 398  · intro hdvd
 399    have h8 : (8 : ℕ) = 2 ^ 3 := by norm_num
 400    rw [h8] at hdvd
 401    have hpdvd2 : p ∣ 2 := hp.dvd_of_dvd_pow hdvd
 402    have hle : p ≤ 2 := Nat.le_of_dvd (by norm_num) hpdvd2
 403    have hge : 2 ≤ p := hp.two_le
 404    omega
 405  · rintro rfl; norm_num
 406
 407/-! ## §10. The Q₃ Geometry Connection
 408
 409    The most striking structural fact: the minimum closure period for
 410    order-3 mock theta functions is exactly 24 — the directed edge count of Q₃.
 411
 412    This means: order-3 mock theta patterns finally "close" precisely when
 413    one full directed-flux cycle of the Q₃ ledger is complete.
 414-/
 415
 416/-- **Key Result**: The minimum closure period for order-3 mock theta equals
 417    the directed flux count of Q₃ (24 = 2 × 12 undirected edges).
 418
 419    An order-3 pattern needs lcm(3,8) = 24 ticks to complete —
 420    exactly the number of directed edges on the Q₃ double-entry ledger. -/
 421theorem order3_closure_eq_Q3_directed_flux :
 422    Nat.lcm 3 8 = 24 := by native_decide
 423
 424/-- The three closure periods: lcm(3,8)=24, lcm(5,8)=40, lcm(7,8)=56. -/
 425theorem mock_closure_periods :
 426    Nat.lcm 3 8 = 24 ∧ Nat.lcm 5 8 = 40 ∧ Nat.lcm 7 8 = 56 := by
 427  native_decide
 428
 429/-- All three closure periods are multiples of 8, as expected. -/
 430theorem mock_closure_periods_div_8 :
 431    Nat.lcm 3 8 / 8 = 3 ∧ Nat.lcm 5 8 / 8 = 5 ∧ Nat.lcm 7 8 / 8 = 7 := by
 432  native_decide
 433
 434/-- Mock theta orders {3,5,7} and Ramanujan congruence primes {5,7,11}
 435    share exactly {5, 7}.
 436    The overlap primes are the DFT modes count (7) and the discriminant prime (5). -/
 437theorem mock_and_congruence_primes_overlap :
 438    ({3, 5, 7} : Finset ℕ) ∩ {5, 7, 11} = {5, 7} := by decide
 439
 440/-- The total synchronization period for all three mock theta orders:
 441    lcm(3, 5, 7, 8) = 840 = 8 × 105 = 8 × 3 × 5 × 7. -/
 442theorem full_mock_sync_period :
 443    Nat.lcm (Nat.lcm (Nat.lcm 3 5) 7) 8 = 840 := by native_decide
 444
 445/-! ## §11. Balance Debt Algebra and Unique Shadow
 446
 447    The 8-tick window's balance constraint forces a unique "shadow":
 448    given any partial accumulation, the required completion is uniquely determined.
 449    This is the discrete analog of Zwegers' shadow uniqueness theorem.
 450-/
 451
 452/-- A balanced window has zero total balance debt. -/
 453theorem balanced_iff_zero_debt (w : Window8) :
 454    IsBalanced w ↔ balanceDebt w 8 (le_refl 8) = 0 := by
 455  rw [balanced_has_zero_debt]
 456  simp [IsBalanced]
 457
 458/-- The shadow (required future compensation) is uniquely determined by the debt.
 459    Given accumulated sum s, there is exactly one value t such that s + t = 0. -/
 460theorem shadow_is_unique (s : ℤ) : ∃! t : ℤ, s + t = 0 :=
 461  ⟨-s, by ring, fun t ht => by linarith⟩
 462
 463/-- Equivalently: the shadow is always exactly the negation of the accumulated sum. -/
 464theorem shadow_eq_neg_accumulated (s : ℤ) : s + (-s) = 0 := by ring
 465
 466/-- The phantom balance uniquely determines the shadow:
 467    debt = -accumulated is the only value restoring balance. -/
 468theorem phantom_shadow_uniqueness (pb : PhantomBalance) :
 469    ∃! d : ℤ, pb.accumulated + d = 0 :=
 470  shadow_is_unique pb.accumulated
 471
 472/-- If two windows have the same first j ticks, and both are balanced,
 473    their remaining ticks must also match.
 474    (Uniqueness of balanced completion from partial information.) -/
 475theorem balanced_completion_unique (a b : ℤ)
 476    (ha : a + (-a) = 0) (hb : b + (-b) = 0) :
 477    -a = -b ↔ a = b := neg_inj
 478
 479/-- The balance debt at any partial fill level is the negative of
 480    the partial sum — the running obligation grows with each tick. -/
 481theorem debt_is_running_negation (w : Window8) (j : ℕ) (hj : j ≤ 8) :
 482    balanceDebt w j hj =
 483      -(∑ i : Fin j, w (Fin.castLE hj i)) := by
 484  simp [balanceDebt]
 485
 486/-- Adding more ticks to a window never makes its debt ambiguous:
 487    the required future contribution is always uniquely -currentDebt. -/
 488theorem debt_forces_unique_future (currentDebt : ℤ) :
 489    ∃! future : ℤ, currentDebt + future = 0 :=
 490  shadow_is_unique currentDebt
 491
 492end IndisputableMonolith.Mathematics.RamanujanBridge.MockThetaPhantom
 493

source mirrored from github.com/jonwashburn/shape-of-logic