MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  df-rdg Structured version   Visualization version   GIF version

Definition df-rdg 8424
Description: Define a recursive definition generator on On (the class of ordinal numbers) with characteristic function 𝐹 and initial value 𝐼. This combines functions 𝐹 in tfr1 8411 and 𝐺 in tz7.44-1 8420 into one definition. This rather amazing operation allows 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 8385 that it is built on is also eliminated). But once we get past this hurdle, definitions that would otherwise be recursive become relatively simple, as in for example oav 8525, from which we prove the recursive textbook definition as Theorems oa0 8530, oasuc 8538, and oalim 8546 (with the help of Theorems rdg0 8435, rdgsuc 8438, and rdglim2a 8447). We can also restrict the rec operation to define otherwise recursive functions on the natural numbers ω; see fr0g 8450 and frsuc 8451. Our rec operation apparently does not appear in published literature, although closely related is Definition 25.2 of [Quine] p. 177, which he uses to "turn...a recursion into a genuine or direct definition" (p. 174). Note that the if operations (see df-if 4525) select cases based on whether the domain of 𝑔 is zero, a successor, or a limit ordinal.

An important use of this definition is in the recursive sequence generator df-seq 13991 on the natural numbers (as a subset of the complex numbers), allowing us to define, with direct definitions, recursive infinite sequences such as the factorial function df-fac 14257 and integer powers df-exp 14051.

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 NM, 9-Apr-1995.) (Revised by Mario Carneiro, 9-May-2015.)

Assertion
Ref Expression
df-rdg rec(𝐹, 𝐼) = recs((𝑔 ∈ V ↦ if(𝑔 = ∅, 𝐼, if(Lim dom 𝑔, ran 𝑔, (𝐹‘(𝑔 dom 𝑔))))))
Distinct variable groups:   𝑔,𝐹   𝑔,𝐼

Detailed syntax breakdown of Definition df-rdg
StepHypRef Expression
1 cF . . 3 class 𝐹
2 cI . . 3 class 𝐼
31, 2crdg 8423 . 2 class rec(𝐹, 𝐼)
4 vg . . . 4 setvar 𝑔
5 cvv 3469 . . . 4 class V
64cv 1533 . . . . . 6 class 𝑔
7 c0 4318 . . . . . 6 class
86, 7wceq 1534 . . . . 5 wff 𝑔 = ∅
96cdm 5672 . . . . . . 7 class dom 𝑔
109wlim 6364 . . . . . 6 wff Lim dom 𝑔
116crn 5673 . . . . . . 7 class ran 𝑔
1211cuni 4903 . . . . . 6 class ran 𝑔
139cuni 4903 . . . . . . . 8 class dom 𝑔
1413, 6cfv 6542 . . . . . . 7 class (𝑔 dom 𝑔)
1514, 1cfv 6542 . . . . . 6 class (𝐹‘(𝑔 dom 𝑔))
1610, 12, 15cif 4524 . . . . 5 class if(Lim dom 𝑔, ran 𝑔, (𝐹‘(𝑔 dom 𝑔)))
178, 2, 16cif 4524 . . . 4 class if(𝑔 = ∅, 𝐼, if(Lim dom 𝑔, ran 𝑔, (𝐹‘(𝑔 dom 𝑔))))
184, 5, 17cmpt 5225 . . 3 class (𝑔 ∈ V ↦ if(𝑔 = ∅, 𝐼, if(Lim dom 𝑔, ran 𝑔, (𝐹‘(𝑔 dom 𝑔)))))
1918crecs 8384 . 2 class recs((𝑔 ∈ V ↦ if(𝑔 = ∅, 𝐼, if(Lim dom 𝑔, ran 𝑔, (𝐹‘(𝑔 dom 𝑔))))))
203, 19wceq 1534 1 wff rec(𝐹, 𝐼) = recs((𝑔 ∈ V ↦ if(𝑔 = ∅, 𝐼, if(Lim dom 𝑔, ran 𝑔, (𝐹‘(𝑔 dom 𝑔))))))
Colors of variables: wff setvar class
This definition is referenced by:  rdgeq1  8425  rdgeq2  8426  nfrdg  8428  rdgfun  8430  rdgdmlim  8431  rdgfnon  8432  rdgvalg  8433  rdgval  8434  rdgseg  8436  rdg0n  8448  dfrdg2  35327  csbrdgg  36744
  Copyright terms: Public domain W3C validator
OSZAR »