text‹From the notes of A. S. Kechris, page 6, and from Andrzej Mostowski, \emph{Constructible Sets with Applications}, North-Holland, 1969, page 23.›
subsection‹Basic Definitions›
text‹First part: the cumulative hierarchy defining the class ‹M›. To avoid handling multiple arguments, we assume that ‹Mset(l)›is closed under ordered pairing provided ‹l›is limit. Possibly this could be avoided: the induction hypothesis 🍋‹Cl_reflects› (in locale ‹ex_reflection›) could be weakened to 🍋‹∀y∈Mset(a). ∀z∈Mset(a). P(⟨y,z⟩) ⟷ Q(a,⟨y,z⟩)›, removing most uses of 🍋‹Pair_in_Mset›. But there isn't much point in doing so, since ultimately the ‹ex_reflection›proof is packaged up using the predicate ‹Reflects›. › locale reflection = fixes Mset and M and Reflects assumes Mset_mono_le : "mono_le_subset(Mset)" and Mset_cont : "cont_Ord(Mset)" and Pair_in_Mset : "[x ∈ Mset(a); y ∈ Mset(a); Limit(a)] ==>⟨x,y⟩∈ Mset(a)" defines"M(x) ≡∃a. Ord(a) ∧ x ∈ Mset(a)" and"Reflects(Cl,P,Q) ≡ Closed_Unbounded(Cl) ∧ (∀a. Cl(a) ⟶ (∀x∈Mset(a). P(x) ⟷ Q(a,x)))" fixes F0 🍋‹ordinal for a specific value 🍋‹y›\› fixes FF 🍋‹sup over the whole level, 🍋‹y∈Mset(a)›\› fixes ClEx 🍋‹Reflecting ordinals for the formula 🍋‹∃z. P›\› defines"F0(P,y) ≡ μ b. (∃z. M(z) ∧ P(⟨y,z⟩)) ⟶ (∃z∈Mset(b). P(⟨y,z⟩))" and"FF(P) ≡ λa. ∪y∈Mset(a). F0(P,y)" and"ClEx(P,a) ≡ Limit(a) ∧ normalize(FF(P),a) = a"
begin
lemma Mset_mono: "i≤j ==> Mset(i) ⊆ Mset(j)" using Mset_mono_le by (simp add: mono_le_subset_def leI)
text‹Awkward: we need a version of ‹ClEx_def›as an equality at the level of classes, which do not really exist› lemma ClEx_eq: "ClEx(P) ≡ λa. Limit(a) ∧ normalize(FF(P),a) = a" by (simp add: ClEx_def [symmetric])
text‹No point considering bounded quantifiers, where reflection is trivial.›
subsection‹Simple Examples of Reflection›
text‹Example 1: reflecting a simple formula. The reflecting class is first given as the variable ‹?Cl›and later retrieved from the final proof state.›
schematic_goal "Reflects(?Cl, λx. ∃y. M(y) ∧ x ∈ y, λa x. ∃y∈Mset(a). x ∈ y)" by fast
text‹Problem here: there needs to be a conjunction (class intersection) in the class of reflecting ordinals. The 🍋‹Ord(a)›is redundant, though harmless.› lemma "Reflects(λa. Ord(a) ∧ ClEx(λx. fst(x) ∈ snd(x), a), λx. ∃y. M(y) ∧ x ∈ y, λa x. ∃y∈Mset(a). x ∈ y)" by fast
text‹Example 2›
schematic_goal "Reflects(?Cl, λx. ∃y. M(y) ∧ (∀z. M(z) ⟶ z ⊆ x ⟶ z ∈ y), λa x. ∃y∈Mset(a). ∀z∈Mset(a). z ⊆ x ⟶ z ∈ y)" by fast
text‹Example 2'. We give the reflecting class explicitly.› lemma "Reflects (λa. (Ord(a) ∧ ClEx(λx. ¬ (snd(x) ⊆ fst(fst(x)) ⟶ snd(x) ∈ snd(fst(x))), a)) ∧ ClEx(λx. ∀z. M(z) ⟶ z ⊆ fst(x) ⟶ z ∈ snd(x), a), λx. ∃y. M(y) ∧ (∀z. M(z) ⟶ z ⊆ x ⟶ z ∈ y), λa x. ∃y∈Mset(a). ∀z∈Mset(a). z ⊆ x ⟶ z ∈ y)" by fast
text‹Example 2''. We expand the subset relation.›
schematic_goal "Reflects(?Cl, λx. ∃y. M(y) ∧ (∀z. M(z) ⟶ (∀w. M(w) ⟶ w∈z ⟶ w∈x) ⟶ z∈y), λa x. ∃y∈Mset(a). ∀z∈Mset(a). (∀w∈Mset(a). w∈z ⟶ w∈x) ⟶ z∈y)" by fast
text‹Example 2'''. Single-step version, to reveal the reflecting class.›
schematic_goal "Reflects(?Cl, λx. ∃y. M(y) ∧ (∀z. M(z) ⟶ z ⊆ x ⟶ z ∈ y), λa x. ∃y∈Mset(a). ∀z∈Mset(a). z ⊆ x ⟶ z ∈ y)" apply (rule Ex_reflection) txt‹ @{goals[display,indent=0,margin=60]} › apply (rule All_reflection) txt‹ @{goals[display,indent=0,margin=60]} › apply (rule Triv_reflection) txt‹ @{goals[display,indent=0,margin=60]} › done
text‹Example 3. Warning: the following examples make sense only if 🍋‹P›is quantifier-free, since it is not being relativized.›
schematic_goal "Reflects(?Cl, λx. ∃y. M(y) ∧ (∀z. M(z) ⟶ z ∈ y ⟷ z ∈ x ∧ P(z)), λa x. ∃y∈Mset(a). ∀z∈Mset(a). z ∈ y ⟷ z ∈ x ∧ P(z))" by fast
text‹Example 3'›
schematic_goal "Reflects(?Cl, λx. ∃y. M(y) ∧ y = Collect(x,P), λa x. ∃y∈Mset(a). y = Collect(x,P))" by fast
text‹Example 3''›
schematic_goal "Reflects(?Cl, λx. ∃y. M(y) ∧ y = Replace(x,P), λa x. ∃y∈Mset(a). y = Replace(x,P))" by fast
text‹Example 4: Axiom of Choice. Possibly wrong, since ‹Π›needs to be relativized.›
schematic_goal "Reflects(?Cl, λA. 0∉A ⟶ (∃f. M(f) ∧ f ∈ (∏X ∈ A. X)), λa A. 0∉A ⟶ (∃f∈Mset(a). f ∈ (∏X ∈ A. X)))" by fast
end
end
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.15 Sekunden
(vorverarbeitet am 2026-04-30)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.