Encyclopedia Cosmology Cosmology Cosmogenesis Sim Foldl Add Event Length

ARTICLE 2 claims 2 theorems

Cosmology Cosmogenesis Sim Foldl Add Event Length

A machine-checked simulation of the universe's first instants proves a simple bookkeeping fact: every tick of the ledger adds exactly two entries.

The doubling rule

In the framework's ledger, a discrete record of recognition events, each moment of change is posted as a pair of entries. The rule is double-entry: when one agent recognizes another at some ratio, the reciprocal event is recorded at the same time. The declaration foldl_addEvent_length proves that this bookkeeping has a fixed arithmetic consequence: after n ticks, the ledger holds exactly 2n events. Each tick adds two lines, no more and no less.

The proof is a simple induction on the number of ticks. The base case, an empty ledger, has zero entries. Each subsequent tick appends one event and its reciprocal, so the count rises by two. The theorem states this as a general law for any sequence of events, not just the specific cosmogenesis simulation. It is a fact about the data structure, verified in the machine-checked library of formal theorems.

The result matters because it makes the simulation's structure explicit and checkable. The full eight-tick cosmogenesis, the framework's model of the first instants, therefore contains exactly 16 events. This count is not an assumption; it follows from the double-entry rule. The declaration cosmogenesis_length applies the general doubling law to the specific eight-tick sequence and confirms the total.

What the theorem does not claim is just as important. It says nothing about the ratios of the events, their meaning, or the physical content of the simulation. It does not assert that the events are distinct, that the ledger is closed, or that any particular agent appears. It is purely a statement about list length under a specific construction rule. The conservation law, proved separately, is a different result about the product of ratios, not about counting.

THEOREM foldl_addEvent_length · IndisputableMonolith/Cosmology/CosmogenesisSim.lean
/-- A ledger built by `n` paired postings from empty has `2n` events. -/
theorem foldl_addEvent_length (f : ℕ → QEvent) (n : ℕ) :
    ((List.range n).foldl (fun L t => addEvent L (f t)) []).length = 2 * n := by
  induction n with
  | zero => simp
  | succ k ih =>
      rw [List.range_succ, List.foldl_append]
      simp only [List.foldl_cons, List.foldl_nil]
      rw [addEvent_length, ih]
      ring
THEOREM cosmogenesis_length · IndisputableMonolith/Cosmology/CosmogenesisSim.lean
/-- The cosmogenesis posts sixteen events (eight ticks, each paired). -/
theorem cosmogenesis_length (seed : ℚ) : (cosmogenesis seed).length = 16 := by
  have h : (cosmogenesis seed).length = 2 * 8 := foldl_addEvent_length (cosmoEvent seed) 8
  omega

What this page does not claim

The theorem says nothing about the ratios or meaning of the events. It does not assert the events are distinct or that the ledger is closed.

Verify this page

Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:

$ lake env lean IndisputableMonolith/Cosmology/CosmogenesisSim.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)

A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.

Derived articles

This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:

MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND