Encyclopedia Foundation Foundation Primitive Recognition Calculus Prcfoundations Parsed Three Foundation
ARTICLE 5 claims 5 theorems
Foundation Primitive Recognition Calculus Prcfoundations Parsed Three Foundation
Set theory, type theory, and category theory each have a built-in way to tell two things apart, and a machine-checked proof shows all three use the same underlying mechanism.
Three foundations, one distinction
Set theory, type theory, and category theory are the three standard frameworks mathematicians build on. Each one has a signature move for distinguishing two objects. Set theory says two sets are equal exactly when they contain the same members. Type theory says a value of a two-valued type is either one option or the other. Category theory says a subobject is classified by a special arrow into a truth-value object. These are the native ways each framework separates one thing from another.
A machine-checked library of formal theorems proves that all three distinction mechanisms line up. The proof, called three_foundations_own_distinction, shows three facts at once: set equality matches member-for-member identity, every two-valued term is false or true, and the subobject classifier maps the top object to true. Each of these is the foundation's own way of telling its two primitives apart. The library also proves that each of the three frameworks, parsed into a common interface, admits an embedding of the primitive recognition calculus core, and that none of the three is degenerate, meaning each one genuinely distinguishes its objects rather than collapsing them together.
The result matters because it shows the three foundations are not three separate universes with three separate logics. They are three different surface grammars for the same underlying act of distinction. A statement proved in one framework can be carried into the others through the shared embedding. The proof extends beyond finite sets as well: full ZFC with the axiom of infinity modeled, meaning an infinite set exists closed under successor, also realizes the same core.
What the declaration does not claim is equally precise. It does not claim that the three foundations are identical, only that their distinction mechanisms agree on the core. It does not claim that every theorem of one framework transfers to another, only that the primitive recognition core embeds. And it does not claim that the frameworks themselves are constructed from the core, only that each one, with its own native distinction mechanism, realizes the same delta core when parsed into the common interface.
THEOREM three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- **The substantive distinction mechanism of each foundation is proved.** Set
theory's extensionality, type theory's canonicity, category theory's subobject
classification, each is the foundation's own way of telling its two primitives
apart, and each yields the δ distinction. -/
theorem three_foundations_own_distinction :
(∀ m n : ℕ, m = n ↔ ∀ i, (SetTheoryParse.Mem i m ↔ SetTheoryParse.Mem i n))
∧ (∀ b : TypeTheoryParse.Two, b = false ∨ b = true)
∧ CategoryTheoryParse.subobjectClassification (fun _ => True) = True :=
⟨SetTheoryParse.ext_iff, TypeTheoryParse.canonicity,
CategoryTheoryParse.classifies_top⟩
THEOREM three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- **The substantive distinction mechanism of each foundation is proved.** Set
theory's extensionality, type theory's canonicity, category theory's subobject
classification, each is the foundation's own way of telling its two primitives
apart, and each yields the δ distinction. -/
theorem three_foundations_own_distinction :
(∀ m n : ℕ, m = n ↔ ∀ i, (SetTheoryParse.Mem i m ↔ SetTheoryParse.Mem i n))
∧ (∀ b : TypeTheoryParse.Two, b = false ∨ b = true)
∧ CategoryTheoryParse.subobjectClassification (fun _ => True) = True :=
⟨SetTheoryParse.ext_iff, TypeTheoryParse.canonicity,
CategoryTheoryParse.classifies_top⟩
THEOREM three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- **The substantive distinction mechanism of each foundation is proved.** Set
theory's extensionality, type theory's canonicity, category theory's subobject
classification, each is the foundation's own way of telling its two primitives
apart, and each yields the δ distinction. -/
theorem three_foundations_own_distinction :
(∀ m n : ℕ, m = n ↔ ∀ i, (SetTheoryParse.Mem i m ↔ SetTheoryParse.Mem i n))
∧ (∀ b : TypeTheoryParse.Two, b = false ∨ b = true)
∧ CategoryTheoryParse.subobjectClassification (fun _ => True) = True :=
⟨SetTheoryParse.ext_iff, TypeTheoryParse.canonicity,
CategoryTheoryParse.classifies_top⟩
THEOREM three_foundations_realize_delta · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- **The three named foundations each realize the δ core.** Set theory, type
theory, and category theory, parsed into the `FormalSystem` interface via their own
distinction mechanisms, each admit a PRC embedding. -/
theorem three_foundations_realize_delta :
Nonempty (PRCEmbeddingInto SetTheoryParse.hfSystem)
∧ Nonempty (PRCEmbeddingInto TypeTheoryParse.ttSystem)
∧ Nonempty (PRCEmbeddingInto CategoryTheoryParse.toposSystem) :=
⟨SetTheoryParse.hfSystem_embeds_delta,
TypeTheoryParse.ttSystem_embeds_delta,
CategoryTheoryParse.toposSystem_embeds_delta⟩
THEOREM three_foundations_not_degenerate · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- The three named foundations all fall on the δ side of the distinction
dichotomy: none is degenerate. -/
theorem three_foundations_not_degenerate :
¬ DistinctionDichotomy.Degenerate SetTheoryParse.hfSystem
∧ ¬ DistinctionDichotomy.Degenerate TypeTheoryParse.ttSystem
∧ ¬ DistinctionDichotomy.Degenerate CategoryTheoryParse.toposSystem :=
⟨SetTheoryParse.hfSystem_not_degenerate,
TypeTheoryParse.ttSystem_not_degenerate,
CategoryTheoryParse.toposSystem_not_degenerate⟩
What this page does not claim
The three foundations are identical or interchangeable in all respects. Every theorem proved in one framework automatically holds in the others. The frameworks themselves are constructed from the primitive recognition calculus.
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/PRCFoundationsParsed.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 exactly is the delta core that all three frameworks embed?
- How does the primitive recognition calculus relate to the cost function J(x)?
- What does the embedding allow one to transfer between set theory, type theory, and category theory?
- Does the full ZFC result change anything about the finite set theory parse?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
THEOREM three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- **The substantive distinction mechanism of each foundation is proved.** Set theory's extensionality, type theory's canonicity, category theory's subobject classification, each is the foundation's own way of telling its two primitives apart, and each yields the δ distinction. -/ theorem three_foundations_own_distinction : (∀ m n : ℕ, m = n ↔ ∀ i, (SetTheoryParse.Mem i m ↔ SetTheoryParse.Mem i n)) ∧ (∀ b : TypeTheoryParse.Two, b = false ∨ b = true) ∧ CategoryTheoryParse.subobjectClassification (fun _ => True) = True := ⟨SetTheoryParse.ext_iff, TypeTheoryParse.canonicity, CategoryTheoryParse.classifies_top⟩Set theory says two sets are equal exactly when they contain the same members. three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.leanTHEOREM three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- **The substantive distinction mechanism of each foundation is proved.** Set theory's extensionality, type theory's canonicity, category theory's subobject classification, each is the foundation's own way of telling its two primitives apart, and each yields the δ distinction. -/ theorem three_foundations_own_distinction : (∀ m n : ℕ, m = n ↔ ∀ i, (SetTheoryParse.Mem i m ↔ SetTheoryParse.Mem i n)) ∧ (∀ b : TypeTheoryParse.Two, b = false ∨ b = true) ∧ CategoryTheoryParse.subobjectClassification (fun _ => True) = True := ⟨SetTheoryParse.ext_iff, TypeTheoryParse.canonicity, CategoryTheoryParse.classifies_top⟩Type theory says a value of a two-valued type is either one option or the other. three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.leanTHEOREM three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- **The substantive distinction mechanism of each foundation is proved.** Set theory's extensionality, type theory's canonicity, category theory's subobject classification, each is the foundation's own way of telling its two primitives apart, and each yields the δ distinction. -/ theorem three_foundations_own_distinction : (∀ m n : ℕ, m = n ↔ ∀ i, (SetTheoryParse.Mem i m ↔ SetTheoryParse.Mem i n)) ∧ (∀ b : TypeTheoryParse.Two, b = false ∨ b = true) ∧ CategoryTheoryParse.subobjectClassification (fun _ => True) = True := ⟨SetTheoryParse.ext_iff, TypeTheoryParse.canonicity, CategoryTheoryParse.classifies_top⟩Category theory says a subobject is classified by a special arrow into a truth-value object. three_foundations_own_distinction · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.leanTHEOREM three_foundations_realize_delta · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- **The three named foundations each realize the δ core.** Set theory, type theory, and category theory, parsed into the `FormalSystem` interface via their own distinction mechanisms, each admit a PRC embedding. -/ theorem three_foundations_realize_delta : Nonempty (PRCEmbeddingInto SetTheoryParse.hfSystem) ∧ Nonempty (PRCEmbeddingInto TypeTheoryParse.ttSystem) ∧ Nonempty (PRCEmbeddingInto CategoryTheoryParse.toposSystem) := ⟨SetTheoryParse.hfSystem_embeds_delta, TypeTheoryParse.ttSystem_embeds_delta, CategoryTheoryParse.toposSystem_embeds_delta⟩Each of the three frameworks admits an embedding of the primitive recognition calculus core. three_foundations_realize_delta · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.leanTHEOREM three_foundations_not_degenerate · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean
/-- The three named foundations all fall on the δ side of the distinction dichotomy: none is degenerate. -/ theorem three_foundations_not_degenerate : ¬ DistinctionDichotomy.Degenerate SetTheoryParse.hfSystem ∧ ¬ DistinctionDichotomy.Degenerate TypeTheoryParse.ttSystem ∧ ¬ DistinctionDichotomy.Degenerate CategoryTheoryParse.toposSystem := ⟨SetTheoryParse.hfSystem_not_degenerate, TypeTheoryParse.ttSystem_not_degenerate, CategoryTheoryParse.toposSystem_not_degenerate⟩None of the three frameworks is degenerate. three_foundations_not_degenerate · IndisputableMonolith/Foundation/PrimitiveRecognitionCalculus/PRCFoundationsParsed.lean