Description: Define a recursive
definition generator on On (the class of ordinal
numbers) with characteristic function 𝐹 and initial value 𝐼.
This combines functions 𝐹 in tfr1 8392
and 𝐺 in tz7.44-1 8401 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 8366 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 8506,
from which
we prove the recursive textbook definition as Theorems oa0 8511,
oasuc 8519,
and oalim 8527 (with the help of Theorems rdg0 8416,
rdgsuc 8419, and
rdglim2a 8428). We can also restrict the rec operation to define
otherwise recursive functions on the natural numbers ω; see
fr0g 8431 and frsuc 8432. 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 4528) 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 13963 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 14230 and integer
powers df-exp 14024.
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.) |