Encyclopedia Cosmology Cosmology Domain Coarsening Runs Eq
ARTICLE 2 claims 2 theorems
Cosmology Domain Coarsening Runs Eq
A machine-checked theorem shows that the cost of tracking a changing field depends on its boundaries, not its size.
The coarsening theorem
In the Recognition Science framework, a physical field is represented as a sequence of discrete values, each carrying a recognition charge. The framework's engine processes this field by grouping adjacent positions with equal charge into a single locked domain, a coarse super-region. The declaration runs_eq is a formal theorem, proved in the framework's machine-checked library of formal theorems, about the relationship between the number of these super-regions and the number of boundaries between them.
The theorem states that for any nonempty sequence, the number of maximal equal-charge runs (the super-regions the engine carries) is exactly the number of boundaries (adjacent positions with different charges) plus one. In symbols, runs (a :: l) = boundaries (a :: l) + 1. The proof is a simple induction on the list, and the result holds for any type of charge with decidable equality. The practical content is that the carried cost is set by the distinctions, never by the volume: a field of length N made of two constant blocks, with one boundary, is carried as two super-regions no matter how large N is.
This coarsening is lossless, meaning no information is discarded. The theorem also implies that the number of runs never exceeds the length of the field, with equality only when every adjacent pair is a distinction. When composed with the framework's cadence bound, which limits how many distinctions can change per cycle, and its open-system dynamics, the result forms the formal core of a claim about engine cost being sub-extensive in volume: the carried count tracks the interface, not the linearly growing world.
What runs_eq does not claim is any physical law about how the field evolves. It is a combinatorial identity about a list, not a statement about the dynamics of recognition charges. The theorem does not say how fast boundaries move, how many distinctions exist in a given physical situation, or that the engine's cost is always small. Those are separate claims, some proved elsewhere in the framework and some left open. The theorem also does not assert that the coarsest representation is unique, only that its size equals the number of distinctions plus one.
THEOREM runs_eq · IndisputableMonolith/Cosmology/DomainCoarsening.lean
/-- **The coarsest lossless representation has size = forced distinctions + 1.** For every nonempty
charge field, the number of coarse super-regions the engine carries (`runs`) is exactly the number of
forced distinctions (`boundaries`) plus one. The right side depends only on the distinctions, not on
the run lengths, so two constant blocks of any size are carried as two super-regions. -/
theorem runs_eq (a : α) (l : List α) : runs (a :: l) = boundaries (a :: l) + 1 := by
induction l generalizing a with
| nil => simp
| cons b l ih =>
show (if a = b then 0 else 1) + runs (b :: l)
= ((if a = b then 0 else 1) + boundaries (b :: l)) + 1
rw [ih b]
by_cases h : a = b
· simp only [if_pos h]; omega
· simp only [if_neg h]; omega
THEOREM runs_le_length · IndisputableMonolith/Cosmology/DomainCoarsening.lean
/-- The carried super-region count never exceeds the volume: a field of length `n+1` is carried as at
most `n+1` super-regions, with equality only when every adjacent pair is a distinction. -/
theorem runs_le_length (l : List α) : runs l ≤ l.length := by
match l with
| [] => simp
| [a] => simp
| a :: b :: t =>
have ih := runs_le_length (b :: t)
show (if a = b then 0 else 1) + runs (b :: t) ≤ (a :: b :: t).length
rw [show (a :: b :: t).length = (b :: t).length + 1 from rfl]
by_cases h : a = b
· rw [if_pos h]; omega
· rw [if_neg h]; omega
What this page does not claim
The theorem does not describe how the charge field evolves over time. The theorem does not assert that the coarsest representation is unique. The theorem does not say how many boundaries exist in any particular physical situation.
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/DomainCoarsening.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:
- What physical dynamics govern how the number of boundaries changes over time?
- How does the coarsening theorem compose with the cadence bound to produce a sub-extensive cost claim?
- What is the precise statement of the open-system dynamics that makes the interface grow diffusively?
- Can the coarsening result be extended to fields with more than one dimension?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
THEOREM runs_eq · IndisputableMonolith/Cosmology/DomainCoarsening.lean
/-- **The coarsest lossless representation has size = forced distinctions + 1.** For every nonempty charge field, the number of coarse super-regions the engine carries (`runs`) is exactly the number of forced distinctions (`boundaries`) plus one. The right side depends only on the distinctions, not on the run lengths, so two constant blocks of any size are carried as two super-regions. -/ theorem runs_eq (a : α) (l : List α) : runs (a :: l) = boundaries (a :: l) + 1 := by induction l generalizing a with | nil => simp | cons b l ih => show (if a = b then 0 else 1) + runs (b :: l) = ((if a = b then 0 else 1) + boundaries (b :: l)) + 1 rw [ih b] by_cases h : a = b · simp only [if_pos h]; omega · simp only [if_neg h]; omegaThe theorem states that for any nonempty sequence, the number of maximal equal-charge runs (the super-regions the engine carries) is exactly the number of boundaries (adjacent positions with different charges) plus one. runs_eq · IndisputableMonolith/Cosmology/DomainCoarsening.leanTHEOREM runs_le_length · IndisputableMonolith/Cosmology/DomainCoarsening.lean
/-- The carried super-region count never exceeds the volume: a field of length `n+1` is carried as at most `n+1` super-regions, with equality only when every adjacent pair is a distinction. -/ theorem runs_le_length (l : List α) : runs l ≤ l.length := by match l with | [] => simp | [a] => simp | a :: b :: t => have ih := runs_le_length (b :: t) show (if a = b then 0 else 1) + runs (b :: t) ≤ (a :: b :: t).length rw [show (a :: b :: t).length = (b :: t).length + 1 from rfl] by_cases h : a = b · rw [if_pos h]; omega · rw [if_neg h]; omegaThe theorem also implies that the number of runs never exceeds the length of the field, with equality only when every adjacent pair is a distinction. runs_le_length · IndisputableMonolith/Cosmology/DomainCoarsening.lean