Description: Define a recursive
definition generator on On (the class of ordinal
numbers) with characteristic function 𝐹 and initial value 𝐼.
This combines functions 𝐹 in tfr1 7478
and 𝐺 in tz7.44-1 7487 into one
definition. 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 7453 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 7576,
from which
we prove the recursive textbook definition as theorems oa0 7581,
oasuc 7589,
and oalim 7597 (with the help of theorems rdg0 7502,
rdgsuc 7505, and
rdglim2a 7514). We can also restrict the rec operation to define
otherwise recursive functions on the natural numbers ω; see
fr0g 7516 and frsuc 7517. 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 4078) 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 12785 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 13044 and integer
powers df-exp 12844.
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.) |