Encyclopedia Constants Constants Kdisplay Observable Factors Through Quotient
ARTICLE 2 claims 1 theorem 1 model
Constants Kdisplay Observable Factors Through Quotient
A theorem in the Recognition Science library says any measurable quantity that ignores a common rescaling of its two base units must also ignore the equivalence relation that identifies such unit systems.
Observables and the unit quotient
In physics, a choice of units is a convention. Measuring a speed as 3.0×10⁸ meters per second or 186,000 miles per second is the same fact in different languages. The Recognition Science framework formalizes this intuition with a structure called RSUnits, a record of three numbers: a time scale tau0, a length scale ell0, and a speed c, together with the relation ell0 = c·tau0 that ties them together. Two unit systems are declared equivalent when they share the same speed c and when both the time scale and length scale are multiplied by the same nonzero factor alpha. This is the natural notion of rescaling: change the ruler and the clock by the same factor, and the speed stays the same.
The theorem named observable_factors_through_quotient states a precise consequence of this equivalence. Suppose O is any real-valued function on unit systems, meant to represent some observable quantity, and suppose O is invariant under the rescaling just described: for any nonzero alpha, O of the rescaled system equals O of the original. Then the theorem proves that O must also take equal values on any two equivalent unit systems. In plain language: if a quantity does not care about a common rescaling of the base units, it cannot distinguish between two unit systems that differ only by such a rescaling. The proof is a short argument using the definition of the equivalence relation; the machine-checked library records it as a theorem with no unproved assumptions beyond the standard logical axioms.
The theorem is a structural fact about the framework's own definitions, not a statement about any particular physical measurement. It does not assert that any specific observable, such as a mass or a coupling constant, actually satisfies the invariance hypothesis. It does not say that the equivalence relation is the only way to identify unit systems, nor that all physically meaningful quantities must factor through it. The theorem is conditional: given the invariance property, the factorization follows. What it provides is a clean bridge between a local invariance condition and a global statement about equivalence classes, a step that lets the framework reason about unit-independent quantities without repeatedly checking every rescaling.
In the broader context of the framework, this result supports the treatment of dimensionless ratios. A quantity like a ratio of two lengths is automatically invariant under a common rescaling, and the theorem guarantees that such a ratio is well-defined on the quotient of unit systems by equivalence. That matters because the framework's derived constants, such as the golden ratio phi, are dimensionless and must not depend on the arbitrary choice of units. The theorem is one of the pieces that makes unit-independence a proved property rather than a tacit assumption.
THEOREM observable_factors_through_quotient · IndisputableMonolith/Constants/KDisplay.lean
/-- Observable displays factor through units quotient (sketch) -/
theorem observable_factors_through_quotient (O : RSUnits → ℝ)
(hQuot : ∀ U α, α ≠ 0 → O {tau0 := α * U.tau0, ell0 := α * U.ell0, c := U.c,
c_ell0_tau0 := by calc U.c * (α * U.tau0) = α * (U.c * U.tau0) := by ring
_ = α * U.ell0 := by rw [U.c_ell0_tau0]} = O U) :
∀ U1 U2, UnitsEquivalent U1 U2 → O U1 = O U2 := by
intro U1 U2 h
obtain ⟨hc, α, hα, hτ, hℓ⟩ := h
-- U2 = scaled version of U1
have h1 := hQuot U1 α hα
-- Need to show the scaled U1 equals U2
have hU2_eq : U2 = {tau0 := α * U1.tau0, ell0 := α * U1.ell0, c := U1.c,
c_ell0_tau0 := by calc U1.c * (α * U1.tau0) = α * (U1.c * U1.tau0) := by ring
_ = α * U1.ell0 := by rw [U1.c_ell0_tau0]} := by
cases U2
simp only [RSUnits.mk.injEq]
exact ⟨hτ, hℓ, hc.symm⟩
rw [hU2_eq]
exact h1.symm
MODEL UnitsEquivalent · IndisputableMonolith/Constants/KDisplay.lean
/-- Units equivalence class: two units packs are equivalent if they have same c -/
def UnitsEquivalent (U1 U2 : RSUnits) : Prop :=
U1.c = U2.c ∧ ∃ α : ℝ, α ≠ 0 ∧ U2.tau0 = α * U1.tau0 ∧ U2.ell0 = α * U1.ell0
What this page does not claim
The theorem does not assert that any particular physical quantity is invariant under rescaling. It does not claim that the equivalence relation captures all meaningful identifications between unit systems. It does not establish that the golden ratio or any other derived constant is an observable in the sense of the theorem.
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/Constants/KDisplay.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:
- Which specific observables in the framework are known to satisfy the invariance hypothesis?
- How does the quotient of unit systems interact with the derivation of the golden ratio as a dimensionless constant?
- What is the role of the speed c in fixing the equivalence relation, and why is it not rescaled?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
THEOREM observable_factors_through_quotient · IndisputableMonolith/Constants/KDisplay.lean
/-- Observable displays factor through units quotient (sketch) -/ theorem observable_factors_through_quotient (O : RSUnits → ℝ) (hQuot : ∀ U α, α ≠ 0 → O {tau0 := α * U.tau0, ell0 := α * U.ell0, c := U.c, c_ell0_tau0 := by calc U.c * (α * U.tau0) = α * (U.c * U.tau0) := by ring _ = α * U.ell0 := by rw [U.c_ell0_tau0]} = O U) : ∀ U1 U2, UnitsEquivalent U1 U2 → O U1 = O U2 := by intro U1 U2 h obtain ⟨hc, α, hα, hτ, hℓ⟩ := h -- U2 = scaled version of U1 have h1 := hQuot U1 α hα -- Need to show the scaled U1 equals U2 have hU2_eq : U2 = {tau0 := α * U1.tau0, ell0 := α * U1.ell0, c := U1.c, c_ell0_tau0 := by calc U1.c * (α * U1.tau0) = α * (U1.c * U1.tau0) := by ring _ = α * U1.ell0 := by rw [U1.c_ell0_tau0]} := by cases U2 simp only [RSUnits.mk.injEq] exact ⟨hτ, hℓ, hc.symm⟩ rw [hU2_eq] exact h1.symmThe theorem proves that if an observable is invariant under common rescaling of the two base units, then it takes equal values on any two equivalent unit systems. observable_factors_through_quotient · IndisputableMonolith/Constants/KDisplay.leanMODEL UnitsEquivalent · IndisputableMonolith/Constants/KDisplay.lean
/-- Units equivalence class: two units packs are equivalent if they have same c -/ def UnitsEquivalent (U1 U2 : RSUnits) : Prop := U1.c = U2.c ∧ ∃ α : ℝ, α ≠ 0 ∧ U2.tau0 = α * U1.tau0 ∧ U2.ell0 = α * U1.ell0Two unit systems are equivalent when they share the same speed and both the time scale and length scale are multiplied by the same nonzero factor. UnitsEquivalent · IndisputableMonolith/Constants/KDisplay.lean