Encyclopedia Foundation Foundation Primitive Recognition Calculus Prcmodel Theory Non Forcing Real Not F

ARTICLE 3 claims 3 theorems

Foundation Primitive Recognition Calculus Prcmodel Theory Non Forcing Real Not F

A countable model of the real numbers agrees with them on every first-order sentence, yet has a different cardinality.

Why first-order logic cannot pin down the real numbers

The real numbers are the complete ordered field, the number line that fills in every gap between the rationals. A central question in logic is whether a set of first-order axioms can describe them uniquely, up to isomorphism. The theorem real_not_first_order_categorical answers this in the negative, for any countable first-order language.

The result is a direct application of the downward Löwenheim–Skolem theorem. For any countable first-order language in which the reals carry a structure, there exists a countable structure that is elementarily equivalent to the reals: it satisfies exactly the same first-order sentences. Yet it is countable, while the reals have the cardinality of the continuum. Since a bijection is required for any isomorphism, the countable structure cannot be isomorphic to the reals, even as a bare type.

Within the Recognition Science framework, this theorem is the engine of its model-theory non-forcing argument. The framework models reality as storing a discrete record of recognition events, a ledger. The theorem shows that no first-order description in a countable language can force the continuum: even if the framework's distinction process fixes a complete first-order theory of its number line, and the reals are one model of that theory, a countable model of the very same theory always exists. The continuum is not forced by any amount of first-order distinction.

The theorem is a proved result in the framework's machine-checked library of formal theorems. It establishes a limitation of first-order logic, not a claim about the framework's own axioms. It does not show that the reals are uncategorizable in any stronger logic, nor that a second-order description cannot fix them. It does not assert that the framework's ledger is countable, nor that the framework's number line must be the reals. It only establishes that first-order logic, in a countable language, cannot distinguish the reals from a countable model.

THEOREM real_has_countable_ee_model · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCModelTheoryNonForcing.lean
/-- **Downward Löwenheim–Skolem for the reals.**
For any countable first-order language `L` in which `ℝ` carries a structure,
there is a *countable* `L`-structure `N` that is elementarily equivalent to
`ℝ` (i.e. `ℝ ≅[L] N`): `N` satisfies exactly the same `L`-sentences as `ℝ`.

This is the engine of the model-theory non-forcing argument. The hypothesis
`hL : L.card ≤ ℵ₀` is the "countable language" assumption: distinction can
only write down countably many primitive relations, functions, and constants. -/
theorem real_has_countable_ee_model
    {L : FirstOrder.Language.{0, 0}} [L.Structure ℝ] (hL : L.card ≤ Cardinal.aleph0) :
    ∃ N : CategoryTheory.Bundled L.Structure, (ℝ ≅[L] N) ∧ Cardinal.mk N = Cardinal.aleph0 :=
  FirstOrder.Language.exists_elementarilyEquivalent_card_eq L ℝ Cardinal.aleph0
    le_rfl (by simpa using hL)
THEOREM real_not_first_order_categorical · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCModelTheoryNonForcing.lean
/-- **The reals are not first-order categorical (in any countable language).**
For any countable language structure on `ℝ`, there is a structure `N`
elementarily equivalent to `ℝ` that is *not* isomorphic to `ℝ` even as a bare
type: it is countable while `ℝ` has cardinality continuum.

Consequence for the δ program: no first-order description in a countable
language fixes `ℝ` up to isomorphism. Distinction may force a complete
first-order theory of its number line, and `ℝ` may be one model of it, but a
countable model of the very same theory always exists. The continuum is not
forced by any amount of first-order distinction. -/
theorem real_not_first_order_categorical
    {L : FirstOrder.Language.{0, 0}} [L.Structure ℝ] (hL : L.card ≤ Cardinal.aleph0) :
    ∃ N : CategoryTheory.Bundled L.Structure,
      (ℝ ≅[L] N) ∧ Cardinal.mk ℝ ≠ Cardinal.mk N := by
  obtain ⟨N, hee, hcard⟩ := real_has_countable_ee_model hL
  refine ⟨N, hee, ?_⟩
  rw [hcard, Cardinal.mk_real]
  exact Cardinal.aleph0_lt_continuum.ne'
THEOREM real_first_order_underdetermined · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCModelTheoryNonForcing.lean
/-- The countable elementarily-equivalent companion exists and is a genuine
witness of non-forcing: it agrees with `ℝ` on every first-order sentence yet
is countable, hence not equinumerous with `ℝ`. Packaged form combining all
three facts for downstream citation. (Equinumerosity is necessary for any
structure isomorphism, so distinct cardinals rule out `ℝ ≃ N` of any kind.) -/
theorem real_first_order_underdetermined
    {L : FirstOrder.Language.{0, 0}} [L.Structure ℝ] (hL : L.card ≤ Cardinal.aleph0) :
    ∃ N : CategoryTheory.Bundled L.Structure,
      (ℝ ≅[L] N) ∧ Cardinal.mk N = Cardinal.aleph0 ∧ Cardinal.mk ℝ ≠ Cardinal.mk N := by
  obtain ⟨N, hee, hcard⟩ := real_has_countable_ee_model hL
  refine ⟨N, hee, hcard, ?_⟩
  rw [hcard, Cardinal.mk_real]
  exact Cardinal.aleph0_lt_continuum.ne'

What this page does not claim

The theorem does not assert that the reals are uncategorizable in any stronger logic. The theorem does not claim that the framework's ledger is countable. The theorem does not prove that the framework's number line must be the reals.

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/Foundation/PrimitiveRecognitionCalculus/PRCModelTheoryNonForcing.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