HomeHome Intuitionistic Logic Explorer
Theorem List (p. 63 of 130)
< Previous  Next >
Bad symbols? Try the
GIF version.

Mirrors  >  Metamath Home Page  >  ILE Home Page  >  Theorem List Contents  >  Recent Proofs       This page: Page List

Theorem List for Intuitionistic Logic Explorer - 6201-6300   *Has distinct variable group(s)
TypeLabelDescription
Statement
 
Theoremtfrcllemssrecs 6201* Lemma for tfrcl 6213. The union of functions acceptable for tfrcl 6213 is a subset of recs. (Contributed by Jim Kingdon, 25-Mar-2022.)
𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   (𝜑 → Ord 𝑋)       (𝜑 𝐴 ⊆ recs(𝐺))
 
Theoremtfrcllemsucfn 6202* We can extend an acceptable function by one element to produce a function. Lemma for tfrcl 6213. (Contributed by Jim Kingdon, 24-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   (𝜑𝑧𝑋)    &   (𝜑𝑔:𝑧𝑆)    &   (𝜑𝑔𝐴)       (𝜑 → (𝑔 ∪ {⟨𝑧, (𝐺𝑔)⟩}):suc 𝑧𝑆)
 
Theoremtfrcllemsucaccv 6203* Lemma for tfrcl 6213. We can extend an acceptable function by one element to produce an acceptable function. (Contributed by Jim Kingdon, 24-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   (𝜑𝑌𝑋)    &   (𝜑𝑧𝑌)    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝑔:𝑧𝑆)    &   (𝜑𝑔𝐴)       (𝜑 → (𝑔 ∪ {⟨𝑧, (𝐺𝑔)⟩}) ∈ 𝐴)
 
Theoremtfrcllembacc 6204* Lemma for tfrcl 6213. Each element of 𝐵 is an acceptable function. (Contributed by Jim Kingdon, 25-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   𝐵 = { ∣ ∃𝑧𝐷𝑔(𝑔:𝑧𝑆𝑔𝐴 = (𝑔 ∪ {⟨𝑧, (𝐺𝑔)⟩}))}    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝐷𝑋)    &   (𝜑 → ∀𝑧𝐷𝑔(𝑔:𝑧𝑆 ∧ ∀𝑤𝑧 (𝑔𝑤) = (𝐺‘(𝑔𝑤))))       (𝜑𝐵𝐴)
 
Theoremtfrcllembxssdm 6205* Lemma for tfrcl 6213. The union of 𝐵 is defined on all elements of 𝑋. (Contributed by Jim Kingdon, 25-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   𝐵 = { ∣ ∃𝑧𝐷𝑔(𝑔:𝑧𝑆𝑔𝐴 = (𝑔 ∪ {⟨𝑧, (𝐺𝑔)⟩}))}    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝐷𝑋)    &   (𝜑 → ∀𝑧𝐷𝑔(𝑔:𝑧𝑆 ∧ ∀𝑤𝑧 (𝑔𝑤) = (𝐺‘(𝑔𝑤))))       (𝜑𝐷 ⊆ dom 𝐵)
 
Theoremtfrcllembfn 6206* Lemma for tfrcl 6213. The union of 𝐵 is a function defined on 𝑥. (Contributed by Jim Kingdon, 25-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   𝐵 = { ∣ ∃𝑧𝐷𝑔(𝑔:𝑧𝑆𝑔𝐴 = (𝑔 ∪ {⟨𝑧, (𝐺𝑔)⟩}))}    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝐷𝑋)    &   (𝜑 → ∀𝑧𝐷𝑔(𝑔:𝑧𝑆 ∧ ∀𝑤𝑧 (𝑔𝑤) = (𝐺‘(𝑔𝑤))))       (𝜑 𝐵:𝐷𝑆)
 
Theoremtfrcllembex 6207* Lemma for tfrcl 6213. The set 𝐵 exists. (Contributed by Jim Kingdon, 25-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   𝐵 = { ∣ ∃𝑧𝐷𝑔(𝑔:𝑧𝑆𝑔𝐴 = (𝑔 ∪ {⟨𝑧, (𝐺𝑔)⟩}))}    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝐷𝑋)    &   (𝜑 → ∀𝑧𝐷𝑔(𝑔:𝑧𝑆 ∧ ∀𝑤𝑧 (𝑔𝑤) = (𝐺‘(𝑔𝑤))))       (𝜑𝐵 ∈ V)
 
Theoremtfrcllemubacc 6208* Lemma for tfrcl 6213. The union of 𝐵 satisfies the recursion rule. (Contributed by Jim Kingdon, 25-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   𝐵 = { ∣ ∃𝑧𝐷𝑔(𝑔:𝑧𝑆𝑔𝐴 = (𝑔 ∪ {⟨𝑧, (𝐺𝑔)⟩}))}    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝐷𝑋)    &   (𝜑 → ∀𝑧𝐷𝑔(𝑔:𝑧𝑆 ∧ ∀𝑤𝑧 (𝑔𝑤) = (𝐺‘(𝑔𝑤))))       (𝜑 → ∀𝑢𝐷 ( 𝐵𝑢) = (𝐺‘( 𝐵𝑢)))
 
Theoremtfrcllemex 6209* Lemma for tfrcl 6213. (Contributed by Jim Kingdon, 26-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   𝐵 = { ∣ ∃𝑧𝐷𝑔(𝑔:𝑧𝑆𝑔𝐴 = (𝑔 ∪ {⟨𝑧, (𝐺𝑔)⟩}))}    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝐷𝑋)    &   (𝜑 → ∀𝑧𝐷𝑔(𝑔:𝑧𝑆 ∧ ∀𝑤𝑧 (𝑔𝑤) = (𝐺‘(𝑔𝑤))))       (𝜑 → ∃𝑓(𝑓:𝐷𝑆 ∧ ∀𝑢𝐷 (𝑓𝑢) = (𝐺‘(𝑓𝑢))))
 
Theoremtfrcllemaccex 6210* We can define an acceptable function on any element of 𝑋.

As with many of the transfinite recursion theorems, we have hypotheses that state that 𝐹 is a function and that it is defined up to 𝑋. (Contributed by Jim Kingdon, 26-Mar-2022.)

𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)       ((𝜑𝐶𝑋) → ∃𝑔(𝑔:𝐶𝑆 ∧ ∀𝑢𝐶 (𝑔𝑢) = (𝐺‘(𝑔𝑢))))
 
Theoremtfrcllemres 6211* Lemma for tfr1on 6199. Recursion is defined on an ordinal if the characteristic function is defined up to a suitable point. (Contributed by Jim Kingdon, 18-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   𝐴 = {𝑓 ∣ ∃𝑥𝑋 (𝑓:𝑥𝑆 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐺‘(𝑓𝑦)))}    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝑌𝑋)       (𝜑𝑌 ⊆ dom 𝐹)
 
Theoremtfrcldm 6212* Recursion is defined on an ordinal if the characteristic function satisfies a closure hypothesis up to a suitable point. (Contributed by Jim Kingdon, 26-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝑌 𝑋)       (𝜑𝑌 ∈ dom 𝐹)
 
Theoremtfrcl 6213* Closure for transfinite recursion. As with tfr1on 6199, the characteristic function must be defined up to a suitable point, not necessarily on all ordinals. (Contributed by Jim Kingdon, 25-Mar-2022.)
𝐹 = recs(𝐺)    &   (𝜑 → Fun 𝐺)    &   (𝜑 → Ord 𝑋)    &   ((𝜑𝑥𝑋𝑓:𝑥𝑆) → (𝐺𝑓) ∈ 𝑆)    &   ((𝜑𝑥 𝑋) → suc 𝑥𝑋)    &   (𝜑𝑌 𝑋)       (𝜑 → (𝐹𝑌) ∈ 𝑆)
 
Theoremtfri1 6214* Principle of Transfinite Recursion, part 1 of 3. Theorem 7.41(1) of [TakeutiZaring] p. 47, with an additional condition.

The condition is that 𝐺 is defined "everywhere", which is stated here as (𝐺𝑥) ∈ V. Alternately, 𝑥 ∈ On∀𝑓(𝑓 Fn 𝑥𝑓 ∈ dom 𝐺) would suffice.

Given a function 𝐺 satisfying that condition, we define a class 𝐴 of all "acceptable" functions. The final function we're interested in is the union 𝐹 = recs(𝐺) of them. 𝐹 is then said to be defined by transfinite recursion. The purpose of the 3 parts of this theorem is to demonstrate properties of 𝐹. In this first part we show that 𝐹 is a function whose domain is all ordinal numbers. (Contributed by Jim Kingdon, 4-May-2019.) (Revised by Mario Carneiro, 24-May-2019.)

𝐹 = recs(𝐺)    &   (Fun 𝐺 ∧ (𝐺𝑥) ∈ V)       𝐹 Fn On
 
Theoremtfri2 6215* Principle of Transfinite Recursion, part 2 of 3. Theorem 7.41(2) of [TakeutiZaring] p. 47, with an additional condition on the recursion rule 𝐺 ( as described at tfri1 6214). Here we show that the function 𝐹 has the property that for any function 𝐺 satisfying that condition, the "next" value of 𝐹 is 𝐺 recursively applied to all "previous" values of 𝐹. (Contributed by Jim Kingdon, 4-May-2019.)
𝐹 = recs(𝐺)    &   (Fun 𝐺 ∧ (𝐺𝑥) ∈ V)       (𝐴 ∈ On → (𝐹𝐴) = (𝐺‘(𝐹𝐴)))
 
Theoremtfri3 6216* Principle of Transfinite Recursion, part 3 of 3. Theorem 7.41(3) of [TakeutiZaring] p. 47, with an additional condition on the recursion rule 𝐺 ( as described at tfri1 6214). Finally, we show that 𝐹 is unique. We do this by showing that any class 𝐵 with the same properties of 𝐹 that we showed in parts 1 and 2 is identical to 𝐹. (Contributed by Jim Kingdon, 4-May-2019.)
𝐹 = recs(𝐺)    &   (Fun 𝐺 ∧ (𝐺𝑥) ∈ V)       ((𝐵 Fn On ∧ ∀𝑥 ∈ On (𝐵𝑥) = (𝐺‘(𝐵𝑥))) → 𝐵 = 𝐹)
 
Theoremtfrex 6217* The transfinite recursion function is set-like if the input is. (Contributed by Mario Carneiro, 3-Jul-2019.)
𝐹 = recs(𝐺)    &   (𝜑 → ∀𝑥(Fun 𝐺 ∧ (𝐺𝑥) ∈ V))       ((𝜑𝐴𝑉) → (𝐹𝐴) ∈ V)
 
2.6.20  Recursive definition generator
 
Syntaxcrdg 6218 Extend class notation with the recursive definition generator, with characteristic function 𝐹 and initial value 𝐼.
class rec(𝐹, 𝐼)
 
Definitiondf-irdg 6219* Define a recursive definition generator on On (the class of ordinal numbers) with characteristic function 𝐹 and initial value 𝐼. This rather amazing operation allows us to define, with compact direct definitions, functions that are usually defined in textbooks only with indirect self-referencing recursive definitions. A recursive definition requires advanced metalogic to justify - in particular, eliminating a recursive definition is very difficult and often not even shown in textbooks. On the other hand, the elimination of a direct definition is a matter of simple mechanical substitution. The price paid is the daunting complexity of our rec operation (especially when df-recs 6154 that it is built on is also eliminated). But once we get past this hurdle, definitions that would otherwise be recursive become relatively simple. In classical logic it would be easier to divide this definition into cases based on whether the domain of 𝑔 is zero, a successor, or a limit ordinal. Cases do not (in general) work that way in intuitionistic logic, so instead we choose a definition which takes the union of all the results of the characteristic function for ordinals in the domain of 𝑔. This means that this definition has the expected properties for increasing and continuous ordinal functions, which include ordinal addition and multiplication.

For finite recursion we also define df-frec 6240 and for suitable characteristic functions df-frec 6240 yields the same result as rec restricted to ω, as seen at frecrdg 6257.

Note: We introduce rec with the philosophical goal of being able to eliminate all definitions with direct mechanical substitution and to verify easily the soundness of definitions. Metamath itself has no built-in technical limitation that prevents multiple-part recursive definitions in the traditional textbook style. (Contributed by Jim Kingdon, 19-May-2019.)

rec(𝐹, 𝐼) = recs((𝑔 ∈ V ↦ (𝐼 𝑥 ∈ dom 𝑔(𝐹‘(𝑔𝑥)))))
 
Theoremrdgeq1 6220 Equality theorem for the recursive definition generator. (Contributed by NM, 9-Apr-1995.) (Revised by Mario Carneiro, 9-May-2015.)
(𝐹 = 𝐺 → rec(𝐹, 𝐴) = rec(𝐺, 𝐴))
 
Theoremrdgeq2 6221 Equality theorem for the recursive definition generator. (Contributed by NM, 9-Apr-1995.) (Revised by Mario Carneiro, 9-May-2015.)
(𝐴 = 𝐵 → rec(𝐹, 𝐴) = rec(𝐹, 𝐵))
 
Theoremrdgfun 6222 The recursive definition generator is a function. (Contributed by Mario Carneiro, 16-Nov-2014.)
Fun rec(𝐹, 𝐴)
 
Theoremrdgtfr 6223* The recursion rule for the recursive definition generator is defined everywhere. (Contributed by Jim Kingdon, 14-May-2020.)
((∀𝑧(𝐹𝑧) ∈ V ∧ 𝐴𝑉) → (Fun (𝑔 ∈ V ↦ (𝐴 𝑥 ∈ dom 𝑔(𝐹‘(𝑔𝑥)))) ∧ ((𝑔 ∈ V ↦ (𝐴 𝑥 ∈ dom 𝑔(𝐹‘(𝑔𝑥))))‘𝑓) ∈ V))
 
Theoremrdgruledefgg 6224* The recursion rule for the recursive definition generator is defined everywhere. (Contributed by Jim Kingdon, 4-Jul-2019.)
((𝐹 Fn V ∧ 𝐴𝑉) → (Fun (𝑔 ∈ V ↦ (𝐴 𝑥 ∈ dom 𝑔(𝐹‘(𝑔𝑥)))) ∧ ((𝑔 ∈ V ↦ (𝐴 𝑥 ∈ dom 𝑔(𝐹‘(𝑔𝑥))))‘𝑓) ∈ V))
 
Theoremrdgruledefg 6225* The recursion rule for the recursive definition generator is defined everywhere. (Contributed by Jim Kingdon, 4-Jul-2019.)
𝐹 Fn V       (𝐴𝑉 → (Fun (𝑔 ∈ V ↦ (𝐴 𝑥 ∈ dom 𝑔(𝐹‘(𝑔𝑥)))) ∧ ((𝑔 ∈ V ↦ (𝐴 𝑥 ∈ dom 𝑔(𝐹‘(𝑔𝑥))))‘𝑓) ∈ V))
 
Theoremrdgexggg 6226 The recursive definition generator produces a set on a set input. (Contributed by Jim Kingdon, 4-Jul-2019.)
((𝐹 Fn V ∧ 𝐴𝑉𝐵𝑊) → (rec(𝐹, 𝐴)‘𝐵) ∈ V)
 
Theoremrdgexgg 6227 The recursive definition generator produces a set on a set input. (Contributed by Jim Kingdon, 4-Jul-2019.)
𝐹 Fn V       ((𝐴𝑉𝐵𝑊) → (rec(𝐹, 𝐴)‘𝐵) ∈ V)
 
Theoremrdgifnon 6228 The recursive definition generator is a function on ordinal numbers. The 𝐹 Fn V condition states that the characteristic function is defined for all sets (being defined for all ordinals might be enough if being used in a manner similar to rdgon 6235; in cases like df-oadd 6269 either presumably could work). (Contributed by Jim Kingdon, 13-Jul-2019.)
((𝐹 Fn V ∧ 𝐴𝑉) → rec(𝐹, 𝐴) Fn On)
 
Theoremrdgifnon2 6229* The recursive definition generator is a function on ordinal numbers. (Contributed by Jim Kingdon, 14-May-2020.)
((∀𝑧(𝐹𝑧) ∈ V ∧ 𝐴𝑉) → rec(𝐹, 𝐴) Fn On)
 
Theoremrdgivallem 6230* Value of the recursive definition generator. Lemma for rdgival 6231 which simplifies the value further. (Contributed by Jim Kingdon, 13-Jul-2019.) (New usage is discouraged.)
((𝐹 Fn V ∧ 𝐴𝑉𝐵 ∈ On) → (rec(𝐹, 𝐴)‘𝐵) = (𝐴 𝑥𝐵 (𝐹‘((rec(𝐹, 𝐴) ↾ 𝐵)‘𝑥))))
 
Theoremrdgival 6231* Value of the recursive definition generator. (Contributed by Jim Kingdon, 26-Jul-2019.)
((𝐹 Fn V ∧ 𝐴𝑉𝐵 ∈ On) → (rec(𝐹, 𝐴)‘𝐵) = (𝐴 𝑥𝐵 (𝐹‘(rec(𝐹, 𝐴)‘𝑥))))
 
Theoremrdgss 6232 Subset and recursive definition generator. (Contributed by Jim Kingdon, 15-Jul-2019.)
(𝜑𝐹 Fn V)    &   (𝜑𝐼𝑉)    &   (𝜑𝐴 ∈ On)    &   (𝜑𝐵 ∈ On)    &   (𝜑𝐴𝐵)       (𝜑 → (rec(𝐹, 𝐼)‘𝐴) ⊆ (rec(𝐹, 𝐼)‘𝐵))
 
Theoremrdgisuc1 6233* One way of describing the value of the recursive definition generator at a successor. There is no condition on the characteristic function 𝐹 other than 𝐹 Fn V. Given that, the resulting expression encompasses both the expected successor term (𝐹‘(rec(𝐹, 𝐴)‘𝐵)) but also terms that correspond to the initial value 𝐴 and to limit ordinals 𝑥𝐵(𝐹‘(rec(𝐹, 𝐴)‘𝑥)).

If we add conditions on the characteristic function, we can show tighter results such as rdgisucinc 6234. (Contributed by Jim Kingdon, 9-Jun-2019.)

(𝜑𝐹 Fn V)    &   (𝜑𝐴𝑉)    &   (𝜑𝐵 ∈ On)       (𝜑 → (rec(𝐹, 𝐴)‘suc 𝐵) = (𝐴 ∪ ( 𝑥𝐵 (𝐹‘(rec(𝐹, 𝐴)‘𝑥)) ∪ (𝐹‘(rec(𝐹, 𝐴)‘𝐵)))))
 
Theoremrdgisucinc 6234* Value of the recursive definition generator at a successor.

This can be thought of as a generalization of oasuc 6312 and omsuc 6320. (Contributed by Jim Kingdon, 29-Aug-2019.)

(𝜑𝐹 Fn V)    &   (𝜑𝐴𝑉)    &   (𝜑𝐵 ∈ On)    &   (𝜑 → ∀𝑥 𝑥 ⊆ (𝐹𝑥))       (𝜑 → (rec(𝐹, 𝐴)‘suc 𝐵) = (𝐹‘(rec(𝐹, 𝐴)‘𝐵)))
 
Theoremrdgon 6235* Evaluating the recursive definition generator produces an ordinal. There is a hypothesis that the characteristic function produces ordinals on ordinal arguments. (Contributed by Jim Kingdon, 26-Jul-2019.) (Revised by Jim Kingdon, 13-Apr-2022.)
(𝜑𝐴 ∈ On)    &   (𝜑 → ∀𝑥 ∈ On (𝐹𝑥) ∈ On)       ((𝜑𝐵 ∈ On) → (rec(𝐹, 𝐴)‘𝐵) ∈ On)
 
Theoremrdg0 6236 The initial value of the recursive definition generator. (Contributed by NM, 23-Apr-1995.) (Revised by Mario Carneiro, 14-Nov-2014.)
𝐴 ∈ V       (rec(𝐹, 𝐴)‘∅) = 𝐴
 
Theoremrdg0g 6237 The initial value of the recursive definition generator. (Contributed by NM, 25-Apr-1995.)
(𝐴𝐶 → (rec(𝐹, 𝐴)‘∅) = 𝐴)
 
Theoremrdgexg 6238 The recursive definition generator produces a set on a set input. (Contributed by Mario Carneiro, 3-Jul-2019.)
𝐴 ∈ V    &   𝐹 Fn V       (𝐵𝑉 → (rec(𝐹, 𝐴)‘𝐵) ∈ V)
 
2.6.21  Finite recursion
 
Syntaxcfrec 6239 Extend class notation with the finite recursive definition generator, with characteristic function 𝐹 and initial value 𝐼.
class frec(𝐹, 𝐼)
 
Definitiondf-frec 6240* Define a recursive definition generator on ω (the class of finite ordinals) with characteristic function 𝐹 and initial value 𝐼. This rather amazing operation allows us to define, with compact direct definitions, functions that are usually defined in textbooks only with indirect self-referencing recursive definitions. A recursive definition requires advanced metalogic to justify - in particular, eliminating a recursive definition is very difficult and often not even shown in textbooks. On the other hand, the elimination of a direct definition is a matter of simple mechanical substitution. The price paid is the daunting complexity of our frec operation (especially when df-recs 6154 that it is built on is also eliminated). But once we get past this hurdle, definitions that would otherwise be recursive become relatively simple; see frec0g 6246 and frecsuc 6256.

Unlike with transfinite recursion, finite recurson can readily divide definitions and proofs into zero and successor cases, because even without excluded middle we have theorems such as nn0suc 4476. The analogous situation with transfinite recursion - being able to say that an ordinal is zero, successor, or limit - is enabled by excluded middle and thus is not available to us. For the characteristic functions which satisfy the conditions given at frecrdg 6257, this definition and df-irdg 6219 restricted to ω produce the same result.

Note: We introduce frec with the philosophical goal of being able to eliminate all definitions with direct mechanical substitution and to verify easily the soundness of definitions. Metamath itself has no built-in technical limitation that prevents multiple-part recursive definitions in the traditional textbook style. (Contributed by Mario Carneiro and Jim Kingdon, 10-Aug-2019.)

frec(𝐹, 𝐼) = (recs((𝑔 ∈ V ↦ {𝑥 ∣ (∃𝑚 ∈ ω (dom 𝑔 = suc 𝑚𝑥 ∈ (𝐹‘(𝑔𝑚))) ∨ (dom 𝑔 = ∅ ∧ 𝑥𝐼))})) ↾ ω)
 
Theoremfreceq1 6241 Equality theorem for the finite recursive definition generator. (Contributed by Jim Kingdon, 30-May-2020.)
(𝐹 = 𝐺 → frec(𝐹, 𝐴) = frec(𝐺, 𝐴))
 
Theoremfreceq2 6242 Equality theorem for the finite recursive definition generator. (Contributed by Jim Kingdon, 30-May-2020.)
(𝐴 = 𝐵 → frec(𝐹, 𝐴) = frec(𝐹, 𝐵))
 
Theoremfrecex 6243 Finite recursion produces a set. (Contributed by Jim Kingdon, 20-Aug-2021.)
frec(𝐹, 𝐴) ∈ V
 
Theoremfrecfun 6244 Finite recursion produces a function. See also frecfnom 6250 which also states that the domain of that function is ω but which puts conditions on 𝐴 and 𝐹. (Contributed by Jim Kingdon, 13-Feb-2022.)
Fun frec(𝐹, 𝐴)
 
Theoremnffrec 6245 Bound-variable hypothesis builder for the finite recursive definition generator. (Contributed by Jim Kingdon, 30-May-2020.)
𝑥𝐹    &   𝑥𝐴       𝑥frec(𝐹, 𝐴)
 
Theoremfrec0g 6246 The initial value resulting from finite recursive definition generation. (Contributed by Jim Kingdon, 7-May-2020.)
(𝐴𝑉 → (frec(𝐹, 𝐴)‘∅) = 𝐴)
 
Theoremfrecabex 6247* The class abstraction from df-frec 6240 exists. This is a lemma for other finite recursion proofs. (Contributed by Jim Kingdon, 13-May-2020.)
(𝜑𝑆𝑉)    &   (𝜑 → ∀𝑦(𝐹𝑦) ∈ V)    &   (𝜑𝐴𝑊)       (𝜑 → {𝑥 ∣ (∃𝑚 ∈ ω (dom 𝑆 = suc 𝑚𝑥 ∈ (𝐹‘(𝑆𝑚))) ∨ (dom 𝑆 = ∅ ∧ 𝑥𝐴))} ∈ V)
 
Theoremfrecabcl 6248* The class abstraction from df-frec 6240 exists. Unlike frecabex 6247 the function 𝐹 only needs to be defined on 𝑆, not all sets. This is a lemma for other finite recursion proofs. (Contributed by Jim Kingdon, 21-Mar-2022.)
(𝜑𝑁 ∈ ω)    &   (𝜑𝐺:𝑁𝑆)    &   (𝜑 → ∀𝑦𝑆 (𝐹𝑦) ∈ 𝑆)    &   (𝜑𝐴𝑆)       (𝜑 → {𝑥 ∣ (∃𝑚 ∈ ω (dom 𝐺 = suc 𝑚𝑥 ∈ (𝐹‘(𝐺𝑚))) ∨ (dom 𝐺 = ∅ ∧ 𝑥𝐴))} ∈ 𝑆)
 
Theoremfrectfr 6249* Lemma to connect transfinite recursion theorems with finite recursion. That is, given the conditions 𝐹 Fn V and 𝐴𝑉 on frec(𝐹, 𝐴), we want to be able to apply tfri1d 6184 or tfri2d 6185, and this lemma lets us satisfy hypotheses of those theorems.

(Contributed by Jim Kingdon, 15-Aug-2019.)

𝐺 = (𝑔 ∈ V ↦ {𝑥 ∣ (∃𝑚 ∈ ω (dom 𝑔 = suc 𝑚𝑥 ∈ (𝐹‘(𝑔𝑚))) ∨ (dom 𝑔 = ∅ ∧ 𝑥𝐴))})       ((∀𝑧(𝐹𝑧) ∈ V ∧ 𝐴𝑉) → ∀𝑦(Fun 𝐺 ∧ (𝐺𝑦) ∈ V))
 
Theoremfrecfnom 6250* The function generated by finite recursive definition generation is a function on omega. (Contributed by Jim Kingdon, 13-May-2020.)
((∀𝑧(𝐹𝑧) ∈ V ∧ 𝐴𝑉) → frec(𝐹, 𝐴) Fn ω)
 
Theoremfreccllem 6251* Lemma for freccl 6252. Just giving a name to a common expression to simplify the proof. (Contributed by Jim Kingdon, 27-Mar-2022.)
(𝜑𝐴𝑆)    &   ((𝜑𝑧𝑆) → (𝐹𝑧) ∈ 𝑆)    &   (𝜑𝐵 ∈ ω)    &   𝐺 = recs((𝑔 ∈ V ↦ {𝑥 ∣ (∃𝑚 ∈ ω (dom 𝑔 = suc 𝑚𝑥 ∈ (𝐹‘(𝑔𝑚))) ∨ (dom 𝑔 = ∅ ∧ 𝑥𝐴))}))       (𝜑 → (frec(𝐹, 𝐴)‘𝐵) ∈ 𝑆)
 
Theoremfreccl 6252* Closure for finite recursion. (Contributed by Jim Kingdon, 27-Mar-2022.)
(𝜑𝐴𝑆)    &   ((𝜑𝑧𝑆) → (𝐹𝑧) ∈ 𝑆)    &   (𝜑𝐵 ∈ ω)       (𝜑 → (frec(𝐹, 𝐴)‘𝐵) ∈ 𝑆)
 
Theoremfrecfcllem 6253* Lemma for frecfcl 6254. Just giving a name to a common expression to simplify the proof. (Contributed by Jim Kingdon, 30-Mar-2022.)
𝐺 = recs((𝑔 ∈ V ↦ {𝑥 ∣ (∃𝑚 ∈ ω (dom 𝑔 = suc 𝑚𝑥 ∈ (𝐹‘(𝑔𝑚))) ∨ (dom 𝑔 = ∅ ∧ 𝑥𝐴))}))       ((∀𝑧𝑆 (𝐹𝑧) ∈ 𝑆𝐴𝑆) → frec(𝐹, 𝐴):ω⟶𝑆)
 
Theoremfrecfcl 6254* Finite recursion yields a function on the natural numbers. (Contributed by Jim Kingdon, 30-Mar-2022.)
((∀𝑧𝑆 (𝐹𝑧) ∈ 𝑆𝐴𝑆) → frec(𝐹, 𝐴):ω⟶𝑆)
 
Theoremfrecsuclem 6255* Lemma for frecsuc 6256. Just giving a name to a common expression to simplify the proof. (Contributed by Jim Kingdon, 29-Mar-2022.)
𝐺 = (𝑔 ∈ V ↦ {𝑥 ∣ (∃𝑚 ∈ ω (dom 𝑔 = suc 𝑚𝑥 ∈ (𝐹‘(𝑔𝑚))) ∨ (dom 𝑔 = ∅ ∧ 𝑥𝐴))})       ((∀𝑧𝑆 (𝐹𝑧) ∈ 𝑆𝐴𝑆𝐵 ∈ ω) → (frec(𝐹, 𝐴)‘suc 𝐵) = (𝐹‘(frec(𝐹, 𝐴)‘𝐵)))
 
Theoremfrecsuc 6256* The successor value resulting from finite recursive definition generation. (Contributed by Jim Kingdon, 31-Mar-2022.)
((∀𝑧𝑆 (𝐹𝑧) ∈ 𝑆𝐴𝑆𝐵 ∈ ω) → (frec(𝐹, 𝐴)‘suc 𝐵) = (𝐹‘(frec(𝐹, 𝐴)‘𝐵)))
 
Theoremfrecrdg 6257* Transfinite recursion restricted to omega.

Given a suitable characteristic function, df-frec 6240 produces the same results as df-irdg 6219 restricted to ω.

Presumably the theorem would also hold if 𝐹 Fn V were changed to 𝑧(𝐹𝑧) ∈ V. (Contributed by Jim Kingdon, 29-Aug-2019.)

(𝜑𝐹 Fn V)    &   (𝜑𝐴𝑉)    &   (𝜑 → ∀𝑥 𝑥 ⊆ (𝐹𝑥))       (𝜑 → frec(𝐹, 𝐴) = (rec(𝐹, 𝐴) ↾ ω))
 
2.6.22  Ordinal arithmetic
 
Syntaxc1o 6258 Extend the definition of a class to include the ordinal number 1.
class 1o
 
Syntaxc2o 6259 Extend the definition of a class to include the ordinal number 2.
class 2o
 
Syntaxc3o 6260 Extend the definition of a class to include the ordinal number 3.
class 3o
 
Syntaxc4o 6261 Extend the definition of a class to include the ordinal number 4.
class 4o
 
Syntaxcoa 6262 Extend the definition of a class to include the ordinal addition operation.
class +o
 
Syntaxcomu 6263 Extend the definition of a class to include the ordinal multiplication operation.
class ·o
 
Syntaxcoei 6264 Extend the definition of a class to include the ordinal exponentiation operation.
class o
 
Definitiondf-1o 6265 Define the ordinal number 1. (Contributed by NM, 29-Oct-1995.)
1o = suc ∅
 
Definitiondf-2o 6266 Define the ordinal number 2. (Contributed by NM, 18-Feb-2004.)
2o = suc 1o
 
Definitiondf-3o 6267 Define the ordinal number 3. (Contributed by Mario Carneiro, 14-Jul-2013.)
3o = suc 2o
 
Definitiondf-4o 6268 Define the ordinal number 4. (Contributed by Mario Carneiro, 14-Jul-2013.)
4o = suc 3o
 
Definitiondf-oadd 6269* Define the ordinal addition operation. (Contributed by NM, 3-May-1995.)
+o = (𝑥 ∈ On, 𝑦 ∈ On ↦ (rec((𝑧 ∈ V ↦ suc 𝑧), 𝑥)‘𝑦))
 
Definitiondf-omul 6270* Define the ordinal multiplication operation. (Contributed by NM, 26-Aug-1995.)
·o = (𝑥 ∈ On, 𝑦 ∈ On ↦ (rec((𝑧 ∈ V ↦ (𝑧 +o 𝑥)), ∅)‘𝑦))
 
Definitiondf-oexpi 6271* Define the ordinal exponentiation operation.

This definition is similar to a conventional definition of exponentiation except that it defines ∅ ↑o 𝐴 to be 1o for all 𝐴 ∈ On, in order to avoid having different cases for whether the base is or not. (Contributed by Mario Carneiro, 4-Jul-2019.)

o = (𝑥 ∈ On, 𝑦 ∈ On ↦ (rec((𝑧 ∈ V ↦ (𝑧 ·o 𝑥)), 1o)‘𝑦))
 
Theorem1on 6272 Ordinal 1 is an ordinal number. (Contributed by NM, 29-Oct-1995.)
1o ∈ On
 
Theorem1oex 6273 Ordinal 1 is a set. (Contributed by BJ, 4-Jul-2022.)
1o ∈ V
 
Theorem2on 6274 Ordinal 2 is an ordinal number. (Contributed by NM, 18-Feb-2004.) (Proof shortened by Andrew Salmon, 12-Aug-2011.)
2o ∈ On
 
Theorem2on0 6275 Ordinal two is not zero. (Contributed by Scott Fenton, 17-Jun-2011.)
2o ≠ ∅
 
Theorem3on 6276 Ordinal 3 is an ordinal number. (Contributed by Mario Carneiro, 5-Jan-2016.)
3o ∈ On
 
Theorem4on 6277 Ordinal 3 is an ordinal number. (Contributed by Mario Carneiro, 5-Jan-2016.)
4o ∈ On
 
Theoremdf1o2 6278 Expanded value of the ordinal number 1. (Contributed by NM, 4-Nov-2002.)
1o = {∅}
 
Theoremdf2o3 6279 Expanded value of the ordinal number 2. (Contributed by Mario Carneiro, 14-Aug-2015.)
2o = {∅, 1o}
 
Theoremdf2o2 6280 Expanded value of the ordinal number 2. (Contributed by NM, 29-Jan-2004.)
2o = {∅, {∅}}
 
Theorem1n0 6281 Ordinal one is not equal to ordinal zero. (Contributed by NM, 26-Dec-2004.)
1o ≠ ∅
 
Theoremxp01disj 6282 Cartesian products with the singletons of ordinals 0 and 1 are disjoint. (Contributed by NM, 2-Jun-2007.)
((𝐴 × {∅}) ∩ (𝐶 × {1o})) = ∅
 
Theoremxp01disjl 6283 Cartesian products with the singletons of ordinals 0 and 1 are disjoint. (Contributed by Jim Kingdon, 11-Jul-2023.)
(({∅} × 𝐴) ∩ ({1o} × 𝐶)) = ∅
 
Theoremordgt0ge1 6284 Two ways to express that an ordinal class is positive. (Contributed by NM, 21-Dec-2004.)
(Ord 𝐴 → (∅ ∈ 𝐴 ↔ 1o𝐴))
 
Theoremordge1n0im 6285 An ordinal greater than or equal to 1 is nonzero. (Contributed by Jim Kingdon, 26-Jun-2019.)
(Ord 𝐴 → (1o𝐴𝐴 ≠ ∅))
 
Theoremel1o 6286 Membership in ordinal one. (Contributed by NM, 5-Jan-2005.)
(𝐴 ∈ 1o𝐴 = ∅)
 
Theoremdif1o 6287 Two ways to say that 𝐴 is a nonzero number of the set 𝐵. (Contributed by Mario Carneiro, 21-May-2015.)
(𝐴 ∈ (𝐵 ∖ 1o) ↔ (𝐴𝐵𝐴 ≠ ∅))
 
Theorem2oconcl 6288 Closure of the pair swapping function on 2o. (Contributed by Mario Carneiro, 27-Sep-2015.)
(𝐴 ∈ 2o → (1o𝐴) ∈ 2o)
 
Theorem0lt1o 6289 Ordinal zero is less than ordinal one. (Contributed by NM, 5-Jan-2005.)
∅ ∈ 1o
 
Theorem0lt2o 6290 Ordinal zero is less than ordinal two. (Contributed by Jim Kingdon, 31-Jul-2022.)
∅ ∈ 2o
 
Theorem1lt2o 6291 Ordinal one is less than ordinal two. (Contributed by Jim Kingdon, 31-Jul-2022.)
1o ∈ 2o
 
Theoremoafnex 6292 The characteristic function for ordinal addition is defined everywhere. (Contributed by Jim Kingdon, 27-Jul-2019.)
(𝑥 ∈ V ↦ suc 𝑥) Fn V
 
Theoremsucinc 6293* Successor is increasing. (Contributed by Jim Kingdon, 25-Jun-2019.)
𝐹 = (𝑧 ∈ V ↦ suc 𝑧)       𝑥 𝑥 ⊆ (𝐹𝑥)
 
Theoremsucinc2 6294* Successor is increasing. (Contributed by Jim Kingdon, 14-Jul-2019.)
𝐹 = (𝑧 ∈ V ↦ suc 𝑧)       ((𝐵 ∈ On ∧ 𝐴𝐵) → (𝐹𝐴) ⊆ (𝐹𝐵))
 
Theoremfnoa 6295 Functionality and domain of ordinal addition. (Contributed by NM, 26-Aug-1995.) (Proof shortened by Mario Carneiro, 3-Jul-2019.)
+o Fn (On × On)
 
Theoremoaexg 6296 Ordinal addition is a set. (Contributed by Mario Carneiro, 3-Jul-2019.)
((𝐴𝑉𝐵𝑊) → (𝐴 +o 𝐵) ∈ V)
 
Theoremomfnex 6297* The characteristic function for ordinal multiplication is defined everywhere. (Contributed by Jim Kingdon, 23-Aug-2019.)
(𝐴𝑉 → (𝑥 ∈ V ↦ (𝑥 +o 𝐴)) Fn V)
 
Theoremfnom 6298 Functionality and domain of ordinal multiplication. (Contributed by NM, 26-Aug-1995.) (Revised by Mario Carneiro, 3-Jul-2019.)
·o Fn (On × On)
 
Theoremomexg 6299 Ordinal multiplication is a set. (Contributed by Mario Carneiro, 3-Jul-2019.)
((𝐴𝑉𝐵𝑊) → (𝐴 ·o 𝐵) ∈ V)
 
Theoremfnoei 6300 Functionality and domain of ordinal exponentiation. (Contributed by Mario Carneiro, 29-May-2015.) (Revised by Mario Carneiro, 3-Jul-2019.)
o Fn (On × On)
    < Previous  Next >

Page List
Jump to page: Contents  1 1-100 2 101-200 3 201-300 4 301-400 5 401-500 6 501-600 7 601-700 8 701-800 9 801-900 10 901-1000 11 1001-1100 12 1101-1200 13 1201-1300 14 1301-1400 15 1401-1500 16 1501-1600 17 1601-1700 18 1701-1800 19 1801-1900 20 1901-2000 21 2001-2100 22 2101-2200 23 2201-2300 24 2301-2400 25 2401-2500 26 2501-2600 27 2601-2700 28 2701-2800 29 2801-2900 30 2901-3000 31 3001-3100 32 3101-3200 33 3201-3300 34 3301-3400 35 3401-3500 36 3501-3600 37 3601-3700 38 3701-3800 39 3801-3900 40 3901-4000 41 4001-4100 42 4101-4200 43 4201-4300 44 4301-4400 45 4401-4500 46 4501-4600 47 4601-4700 48 4701-4800 49 4801-4900 50 4901-5000 51 5001-5100 52 5101-5200 53 5201-5300 54 5301-5400 55 5401-5500 56 5501-5600 57 5601-5700 58 5701-5800 59 5801-5900 60 5901-6000 61 6001-6100 62 6101-6200 63 6201-6300 64 6301-6400 65 6401-6500 66 6501-6600 67 6601-6700 68 6701-6800 69 6801-6900 70 6901-7000 71 7001-7100 72 7101-7200 73 7201-7300 74 7301-7400 75 7401-7500 76 7501-7600 77 7601-7700 78 7701-7800 79 7801-7900 80 7901-8000 81 8001-8100 82 8101-8200 83 8201-8300 84 8301-8400 85 8401-8500 86 8501-8600 87 8601-8700 88 8701-8800 89 8801-8900 90 8901-9000 91 9001-9100 92 9101-9200 93 9201-9300 94 9301-9400 95 9401-9500 96 9501-9600 97 9601-9700 98 9701-9800 99 9801-9900 100 9901-10000 101 10001-10100 102 10101-10200 103 10201-10300 104 10301-10400 105 10401-10500 106 10501-10600 107 10601-10700 108 10701-10800 109 10801-10900 110 10901-11000 111 11001-11100 112 11101-11200 113 11201-11300 114 11301-11400 115 11401-11500 116 11501-11600 117 11601-11700 118 11701-11800 119 11801-11900 120 11901-12000 121 12001-12100 122 12101-12200 123 12201-12300 124 12301-12400 125 12401-12500 126 12501-12600 127 12601-12700 128 12701-12800 129 12801-12900 130 12901-12930
  Copyright terms: Public domain < Previous  Next >