HomeHome Intuitionistic Logic Explorer
Theorem List (p. 63 of 133)
< Previous  Next >
Browser slow? Try the
Unicode 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
 
2.6.19  "Strong" transfinite recursion
 
Syntaxcrecs 6201 Notation for a function defined by strong transfinite recursion.
 class recs ( F )
 
Definitiondf-recs 6202* Define a function recs ( F ) on  On, the class of ordinal numbers, by transfinite recursion given a rule  F which sets the next value given all values so far. See df-irdg 6267 for more details on why this definition is desirable. Unlike df-irdg 6267 which restricts the update rule to use only the previous value, this version allows the update rule to use all previous values, which is why it is described as "strong", although it is actually more primitive. See tfri1d 6232 and tfri2d 6233 for the primary contract of this definition.

(Contributed by Stefan O'Rear, 18-Jan-2015.)

 |- recs
 ( F )  = 
 U. { f  | 
 E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }
 
Theoremrecseq 6203 Equality theorem for recs. (Contributed by Stefan O'Rear, 18-Jan-2015.)
 |-  ( F  =  G  -> recs ( F )  = recs ( G ) )
 
Theoremnfrecs 6204 Bound-variable hypothesis builder for recs. (Contributed by Stefan O'Rear, 18-Jan-2015.)
 |-  F/_ x F   =>    |-  F/_ xrecs ( F )
 
Theoremtfrlem1 6205* A technical lemma for transfinite recursion. Compare Lemma 1 of [TakeutiZaring] p. 47. (Contributed by NM, 23-Mar-1995.) (Revised by Mario Carneiro, 24-May-2019.)
 |-  ( ph  ->  A  e.  On )   &    |-  ( ph  ->  ( Fun  F  /\  A  C_ 
 dom  F ) )   &    |-  ( ph  ->  ( Fun  G  /\  A  C_  dom  G ) )   &    |-  ( ph  ->  A. x  e.  A  ( F `  x )  =  ( B `  ( F  |`  x ) ) )   &    |-  ( ph  ->  A. x  e.  A  ( G `  x )  =  ( B `  ( G  |`  x ) ) )   =>    |-  ( ph  ->  A. x  e.  A  ( F `  x )  =  ( G `  x ) )
 
Theoremtfrlem3ag 6206* Lemma for transfinite recursion. This lemma just changes some bound variables in  A for later use. (Contributed by Jim Kingdon, 5-Jul-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |-  ( G  e.  _V  ->  ( G  e.  A  <->  E. z  e.  On  ( G  Fn  z  /\  A. w  e.  z  ( G `  w )  =  ( F `  ( G  |`  w ) ) ) ) )
 
Theoremtfrlem3a 6207* Lemma for transfinite recursion. Let  A be the class of "acceptable" functions. The final thing we're interested in is the union of all these acceptable functions. This lemma just changes some bound variables in  A for later use. (Contributed by NM, 9-Apr-1995.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  G  e.  _V   =>    |-  ( G  e.  A  <->  E. z  e.  On  ( G  Fn  z  /\  A. w  e.  z  ( G `  w )  =  ( F `  ( G  |`  w ) ) ) )
 
Theoremtfrlem3 6208* Lemma for transfinite recursion. Let  A be the class of "acceptable" functions. The final thing we're interested in is the union of all these acceptable functions. This lemma just changes some bound variables in  A for later use. (Contributed by NM, 9-Apr-1995.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |-  A  =  { g  |  E. z  e.  On  ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( F `  ( g  |`  w ) ) ) }
 
Theoremtfrlem3-2d 6209* Lemma for transfinite recursion which changes a bound variable (Contributed by Jim Kingdon, 2-Jul-2019.)
 |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e. 
 _V ) )   =>    |-  ( ph  ->  ( Fun  F  /\  ( F `  g )  e. 
 _V ) )
 
Theoremtfrlem4 6210* Lemma for transfinite recursion.  A is the class of all "acceptable" functions, and  F is their union. First we show that an acceptable function is in fact a function. (Contributed by NM, 9-Apr-1995.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |-  ( g  e.  A  ->  Fun  g )
 
Theoremtfrlem5 6211* Lemma for transfinite recursion. The values of two acceptable functions are the same within their domains. (Contributed by NM, 9-Apr-1995.) (Revised by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |-  ( ( g  e.  A  /\  h  e.  A )  ->  (
 ( x g u 
 /\  x h v )  ->  u  =  v ) )
 
Theoremrecsfval 6212* Lemma for transfinite recursion. The definition recs is the union of all acceptable functions. (Contributed by Mario Carneiro, 9-May-2015.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |- recs
 ( F )  = 
 U. A
 
Theoremtfrlem6 6213* Lemma for transfinite recursion. The union of all acceptable functions is a relation. (Contributed by NM, 8-Aug-1994.) (Revised by Mario Carneiro, 9-May-2015.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |- 
 Rel recs ( F )
 
Theoremtfrlem7 6214* Lemma for transfinite recursion. The union of all acceptable functions is a function. (Contributed by NM, 9-Aug-1994.) (Revised by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |- 
 Fun recs ( F )
 
Theoremtfrlem8 6215* Lemma for transfinite recursion. The domain of recs is ordinal. (Contributed by NM, 14-Aug-1994.) (Proof shortened by Alan Sare, 11-Mar-2008.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |- 
 Ord  dom recs ( F )
 
Theoremtfrlem9 6216* Lemma for transfinite recursion. Here we compute the value of recs (the union of all acceptable functions). (Contributed by NM, 17-Aug-1994.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   =>    |-  ( B  e.  dom recs ( F )  ->  (recs ( F ) `  B )  =  ( F `  (recs ( F )  |`  B ) ) )
 
Theoremtfrfun 6217 Transfinite recursion produces a function. (Contributed by Jim Kingdon, 20-Aug-2021.)
 |- 
 Fun recs ( F )
 
Theoremtfr2a 6218 A weak version of transfinite recursion. (Contributed by Mario Carneiro, 24-Jun-2015.)
 |-  F  = recs ( G )   =>    |-  ( A  e.  dom  F 
 ->  ( F `  A )  =  ( G `  ( F  |`  A ) ) )
 
Theoremtfr0dm 6219 Transfinite recursion is defined at the empty set. (Contributed by Jim Kingdon, 8-Mar-2022.)
 |-  F  = recs ( G )   =>    |-  ( ( G `  (/) )  e.  V  ->  (/)  e. 
 dom  F )
 
Theoremtfr0 6220 Transfinite recursion at the empty set. (Contributed by Jim Kingdon, 8-May-2020.)
 |-  F  = recs ( G )   =>    |-  ( ( G `  (/) )  e.  V  ->  ( F `  (/) )  =  ( G `  (/) ) )
 
Theoremtfrlemisucfn 6221* We can extend an acceptable function by one element to produce a function. Lemma for tfrlemi1 6229. (Contributed by Jim Kingdon, 2-Jul-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   &    |-  ( ph  ->  z  e.  On )   &    |-  ( ph  ->  g  Fn  z )   &    |-  ( ph  ->  g  e.  A )   =>    |-  ( ph  ->  (
 g  u.  { <. z ,  ( F `  g ) >. } )  Fn  suc  z )
 
Theoremtfrlemisucaccv 6222* We can extend an acceptable function by one element to produce an acceptable function. Lemma for tfrlemi1 6229. (Contributed by Jim Kingdon, 4-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   &    |-  ( ph  ->  z  e.  On )   &    |-  ( ph  ->  g  Fn  z )   &    |-  ( ph  ->  g  e.  A )   =>    |-  ( ph  ->  (
 g  u.  { <. z ,  ( F `  g ) >. } )  e.  A )
 
Theoremtfrlemibacc 6223* Each element of  B is an acceptable function. Lemma for tfrlemi1 6229. (Contributed by Jim Kingdon, 14-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   &    |-  B  =  { h  |  E. z  e.  x  E. g ( g  Fn  z  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( F `
  g ) >. } ) ) }   &    |-  ( ph  ->  x  e.  On )   &    |-  ( ph  ->  A. z  e.  x  E. g
 ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( F `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  B 
 C_  A )
 
Theoremtfrlemibxssdm 6224* The union of  B is defined on all ordinals. Lemma for tfrlemi1 6229. (Contributed by Jim Kingdon, 18-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   &    |-  B  =  { h  |  E. z  e.  x  E. g ( g  Fn  z  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( F `
  g ) >. } ) ) }   &    |-  ( ph  ->  x  e.  On )   &    |-  ( ph  ->  A. z  e.  x  E. g
 ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( F `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  x 
 C_  dom  U. B )
 
Theoremtfrlemibfn 6225* The union of  B is a function defined on  x. Lemma for tfrlemi1 6229. (Contributed by Jim Kingdon, 18-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   &    |-  B  =  { h  |  E. z  e.  x  E. g ( g  Fn  z  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( F `
  g ) >. } ) ) }   &    |-  ( ph  ->  x  e.  On )   &    |-  ( ph  ->  A. z  e.  x  E. g
 ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( F `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  U. B  Fn  x )
 
Theoremtfrlemibex 6226* The set  B exists. Lemma for tfrlemi1 6229. (Contributed by Jim Kingdon, 17-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   &    |-  B  =  { h  |  E. z  e.  x  E. g ( g  Fn  z  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( F `
  g ) >. } ) ) }   &    |-  ( ph  ->  x  e.  On )   &    |-  ( ph  ->  A. z  e.  x  E. g
 ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( F `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  B  e.  _V )
 
Theoremtfrlemiubacc 6227* The union of  B satisfies the recursion rule (lemma for tfrlemi1 6229). (Contributed by Jim Kingdon, 22-Apr-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   &    |-  B  =  { h  |  E. z  e.  x  E. g ( g  Fn  z  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( F `
  g ) >. } ) ) }   &    |-  ( ph  ->  x  e.  On )   &    |-  ( ph  ->  A. z  e.  x  E. g
 ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( F `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  A. u  e.  x  (
 U. B `  u )  =  ( F `  ( U. B  |`  u ) ) )
 
Theoremtfrlemiex 6228* Lemma for tfrlemi1 6229. (Contributed by Jim Kingdon, 18-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   &    |-  B  =  { h  |  E. z  e.  x  E. g ( g  Fn  z  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( F `
  g ) >. } ) ) }   &    |-  ( ph  ->  x  e.  On )   &    |-  ( ph  ->  A. z  e.  x  E. g
 ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( F `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  E. f ( f  Fn  x  /\  A. u  e.  x  ( f `  u )  =  ( F `  ( f  |`  u ) ) ) )
 
Theoremtfrlemi1 6229* We can define an acceptable function on any ordinal.

As with many of the transfinite recursion theorems, we have a hypothesis that states that  F is a function and that it is defined for all ordinals. (Contributed by Jim Kingdon, 4-Mar-2019.) (Proof shortened by Mario Carneiro, 24-May-2019.)

 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   =>    |-  ( ( ph  /\  C  e.  On )  ->  E. g
 ( g  Fn  C  /\  A. u  e.  C  ( g `  u )  =  ( F `  ( g  |`  u ) ) ) )
 
Theoremtfrlemi14d 6230* The domain of recs is all ordinals (lemma for transfinite recursion). (Contributed by Jim Kingdon, 9-Jul-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   =>    |-  ( ph  ->  dom recs ( F )  =  On )
 
Theoremtfrexlem 6231* The transfinite recursion function is set-like if the input is. (Contributed by Mario Carneiro, 3-Jul-2019.)
 |-  A  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( F `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  A. x ( Fun  F  /\  ( F `  x )  e.  _V )
 )   =>    |-  ( ( ph  /\  C  e.  V )  ->  (recs ( F ) `  C )  e.  _V )
 
Theoremtfri1d 6232* Principle of Transfinite Recursion, part 1 of 3. Theorem 7.41(1) of [TakeutiZaring] p. 47, with an additional condition.

The condition is that  G is defined "everywhere", which is stated here as  ( G `  x )  e.  _V. Alternately,  A. x  e.  On A. f ( f  Fn  x  -> 
f  e.  dom  G
) would suffice.

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

 |-  F  = recs ( G )   &    |-  ( ph  ->  A. x ( Fun  G  /\  ( G `  x )  e.  _V )
 )   =>    |-  ( ph  ->  F  Fn  On )
 
Theoremtfri2d 6233* Principle of Transfinite Recursion, part 2 of 3. Theorem 7.41(2) of [TakeutiZaring] p. 47, with an additional condition on the recursion rule  G ( as described at tfri1 6262). Here we show that the function  F has the property that for any function  G satisfying that condition, the "next" value of  F is  G recursively applied to all "previous" values of  F. (Contributed by Jim Kingdon, 4-May-2019.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  A. x ( Fun  G  /\  ( G `  x )  e.  _V )
 )   =>    |-  ( ( ph  /\  A  e.  On )  ->  ( F `  A )  =  ( G `  ( F  |`  A ) ) )
 
Theoremtfr1onlem3ag 6234* Lemma for transfinite recursion. This lemma changes some bound variables in  A (version of tfrlem3ag 6206 but for tfr1on 6247 related lemmas). (Contributed by Jim Kingdon, 13-Mar-2022.)
 |-  A  =  { f  |  E. x  e.  X  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( G `
  ( f  |`  y ) ) ) }   =>    |-  ( H  e.  V  ->  ( H  e.  A  <->  E. z  e.  X  ( H  Fn  z  /\  A. w  e.  z  ( H `  w )  =  ( G `  ( H  |`  w ) ) ) ) )
 
Theoremtfr1onlem3 6235* Lemma for transfinite recursion. This lemma changes some bound variables in  A (version of tfrlem3 6208 but for tfr1on 6247 related lemmas). (Contributed by Jim Kingdon, 14-Mar-2022.)
 |-  A  =  { f  |  E. x  e.  X  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( G `
  ( f  |`  y ) ) ) }   =>    |-  A  =  { g  |  E. z  e.  X  ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( G `  ( g  |`  w ) ) ) }
 
Theoremtfr1onlemssrecs 6236* Lemma for tfr1on 6247. The union of functions acceptable for tfr1on 6247 is a subset of recs. (Contributed by Jim Kingdon, 15-Mar-2022.)
 |-  A  =  { f  |  E. x  e.  X  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
 )  =  ( G `
  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  Ord 
 X )   =>    |-  ( ph  ->  U. A  C_ recs
 ( G ) )
 
Theoremtfr1onlemsucfn 6237* We can extend an acceptable function by one element to produce a function. Lemma for tfr1on 6247. (Contributed by Jim Kingdon, 12-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  z  e.  X )   &    |-  ( ph  ->  g  Fn  z )   &    |-  ( ph  ->  g  e.  A )   =>    |-  ( ph  ->  ( g  u.  { <. z ,  ( G `  g ) >. } )  Fn  suc  z )
 
Theoremtfr1onlemsucaccv 6238* Lemma for tfr1on 6247. We can extend an acceptable function by one element to produce an acceptable function. (Contributed by Jim Kingdon, 12-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  Y  e.  X )   &    |-  ( ph  ->  z  e.  Y )   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  g  Fn  z )   &    |-  ( ph  ->  g  e.  A )   =>    |-  ( ph  ->  (
 g  u.  { <. z ,  ( G `  g ) >. } )  e.  A )
 
Theoremtfr1onlembacc 6239* Lemma for tfr1on 6247. Each element of  B is an acceptable function. (Contributed by Jim Kingdon, 14-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g
 ( g  Fn  z  /\  g  e.  A  /\  h  =  (
 g  u.  { <. z ,  ( G `  g ) >. } )
 ) }   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( G `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  B  C_  A )
 
Theoremtfr1onlembxssdm 6240* Lemma for tfr1on 6247. The union of  B is defined on all elements of  X. (Contributed by Jim Kingdon, 14-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g
 ( g  Fn  z  /\  g  e.  A  /\  h  =  (
 g  u.  { <. z ,  ( G `  g ) >. } )
 ) }   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( G `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  D  C_ 
 dom  U. B )
 
Theoremtfr1onlembfn 6241* Lemma for tfr1on 6247. The union of  B is a function defined on  x. (Contributed by Jim Kingdon, 15-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g
 ( g  Fn  z  /\  g  e.  A  /\  h  =  (
 g  u.  { <. z ,  ( G `  g ) >. } )
 ) }   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( G `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  U. B  Fn  D )
 
Theoremtfr1onlembex 6242* Lemma for tfr1on 6247. The set  B exists. (Contributed by Jim Kingdon, 14-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g
 ( g  Fn  z  /\  g  e.  A  /\  h  =  (
 g  u.  { <. z ,  ( G `  g ) >. } )
 ) }   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( G `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  B  e.  _V )
 
Theoremtfr1onlemubacc 6243* Lemma for tfr1on 6247. The union of  B satisfies the recursion rule. (Contributed by Jim Kingdon, 15-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g
 ( g  Fn  z  /\  g  e.  A  /\  h  =  (
 g  u.  { <. z ,  ( G `  g ) >. } )
 ) }   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( G `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  A. u  e.  D  ( U. B `  u )  =  ( G `  ( U. B  |`  u ) ) )
 
Theoremtfr1onlemex 6244* Lemma for tfr1on 6247. (Contributed by Jim Kingdon, 16-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g
 ( g  Fn  z  /\  g  e.  A  /\  h  =  (
 g  u.  { <. z ,  ( G `  g ) >. } )
 ) }   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g  Fn  z  /\  A. w  e.  z  ( g `  w )  =  ( G `  ( g  |`  w ) ) ) )   =>    |-  ( ph  ->  E. f
 ( f  Fn  D  /\  A. u  e.  D  ( f `  u )  =  ( G `  ( f  |`  u ) ) ) )
 
Theoremtfr1onlemaccex 6245* We can define an acceptable function on any element of  X.

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

 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   =>    |-  ( ( ph  /\  C  e.  X )  ->  E. g
 ( g  Fn  C  /\  A. u  e.  C  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )
 
Theoremtfr1onlemres 6246* Lemma for tfr1on 6247. Recursion is defined on an ordinal if the characteristic function is defined up to a suitable point. (Contributed by Jim Kingdon, 18-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  A  =  { f  |  E. x  e.  X  (
 f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  Y  e.  X )   =>    |-  ( ph  ->  Y  C_ 
 dom  F )
 
Theoremtfr1on 6247* Recursion is defined on an ordinal if the characteristic function is defined up to a suitable point. (Contributed by Jim Kingdon, 12-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f  Fn  x )  ->  ( G `  f )  e.  _V )   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  Y  e.  X )   =>    |-  ( ph  ->  Y  C_ 
 dom  F )
 
Theoremtfri1dALT 6248* Alternate proof of tfri1d 6232 in terms of tfr1on 6247.

Although this does show that the tfr1on 6247 proof is general enough to also prove tfri1d 6232, the tfri1d 6232 proof is simpler in places because it does not need to deal with 
X being any ordinal. For that reason, we have both proofs. (Proof modification is discouraged.) (New usage is discouraged.) (Contributed by Jim Kingdon, 20-Mar-2022.)

 |-  F  = recs ( G )   &    |-  ( ph  ->  A. x ( Fun  G  /\  ( G `  x )  e.  _V )
 )   =>    |-  ( ph  ->  F  Fn  On )
 
Theoremtfrcllemssrecs 6249* Lemma for tfrcl 6261. The union of functions acceptable for tfrcl 6261 is a subset of recs. (Contributed by Jim Kingdon, 25-Mar-2022.)
 |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  Ord 
 X )   =>    |-  ( ph  ->  U. A  C_ recs
 ( G ) )
 
Theoremtfrcllemsucfn 6250* We can extend an acceptable function by one element to produce a function. Lemma for tfrcl 6261. (Contributed by Jim Kingdon, 24-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  z  e.  X )   &    |-  ( ph  ->  g : z --> S )   &    |-  ( ph  ->  g  e.  A )   =>    |-  ( ph  ->  ( g  u.  { <. z ,  ( G `  g ) >. } ) : suc  z --> S )
 
Theoremtfrcllemsucaccv 6251* Lemma for tfrcl 6261. We can extend an acceptable function by one element to produce an acceptable function. (Contributed by Jim Kingdon, 24-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  ( ph  ->  Y  e.  X )   &    |-  ( ph  ->  z  e.  Y )   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  g :
 z --> S )   &    |-  ( ph  ->  g  e.  A )   =>    |-  ( ph  ->  (
 g  u.  { <. z ,  ( G `  g ) >. } )  e.  A )
 
Theoremtfrcllembacc 6252* Lemma for tfrcl 6261. Each element of  B is an acceptable function. (Contributed by Jim Kingdon, 25-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g ( g : z --> S  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( G `  g ) >. } ) ) }   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g : z --> S  /\  A. w  e.  z  (
 g `  w )  =  ( G `  (
 g  |`  w ) ) ) )   =>    |-  ( ph  ->  B  C_  A )
 
Theoremtfrcllembxssdm 6253* Lemma for tfrcl 6261. The union of  B is defined on all elements of  X. (Contributed by Jim Kingdon, 25-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g ( g : z --> S  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( G `  g ) >. } ) ) }   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g : z --> S  /\  A. w  e.  z  (
 g `  w )  =  ( G `  (
 g  |`  w ) ) ) )   =>    |-  ( ph  ->  D  C_ 
 dom  U. B )
 
Theoremtfrcllembfn 6254* Lemma for tfrcl 6261. The union of  B is a function defined on  x. (Contributed by Jim Kingdon, 25-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g ( g : z --> S  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( G `  g ) >. } ) ) }   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g : z --> S  /\  A. w  e.  z  (
 g `  w )  =  ( G `  (
 g  |`  w ) ) ) )   =>    |-  ( ph  ->  U. B : D --> S )
 
Theoremtfrcllembex 6255* Lemma for tfrcl 6261. The set  B exists. (Contributed by Jim Kingdon, 25-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g ( g : z --> S  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( G `  g ) >. } ) ) }   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g : z --> S  /\  A. w  e.  z  (
 g `  w )  =  ( G `  (
 g  |`  w ) ) ) )   =>    |-  ( ph  ->  B  e.  _V )
 
Theoremtfrcllemubacc 6256* Lemma for tfrcl 6261. The union of  B satisfies the recursion rule. (Contributed by Jim Kingdon, 25-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g ( g : z --> S  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( G `  g ) >. } ) ) }   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g : z --> S  /\  A. w  e.  z  (
 g `  w )  =  ( G `  (
 g  |`  w ) ) ) )   =>    |-  ( ph  ->  A. u  e.  D  ( U. B `  u )  =  ( G `  ( U. B  |`  u ) ) )
 
Theoremtfrcllemex 6257* Lemma for tfrcl 6261. (Contributed by Jim Kingdon, 26-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  B  =  { h  |  E. z  e.  D  E. g ( g : z --> S  /\  g  e.  A  /\  h  =  ( g  u.  { <. z ,  ( G `  g ) >. } ) ) }   &    |-  (
 ( ph  /\  x  e. 
 U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  D  e.  X )   &    |-  ( ph  ->  A. z  e.  D  E. g ( g : z --> S  /\  A. w  e.  z  (
 g `  w )  =  ( G `  (
 g  |`  w ) ) ) )   =>    |-  ( ph  ->  E. f
 ( f : D --> S  /\  A. u  e.  D  ( f `  u )  =  ( G `  ( f  |`  u ) ) ) )
 
Theoremtfrcllemaccex 6258* We can define an acceptable function on any element of  X.

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

 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   =>    |-  ( ( ph  /\  C  e.  X )  ->  E. g
 ( g : C --> S  /\  A. u  e.  C  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )
 
Theoremtfrcllemres 6259* Lemma for tfr1on 6247. Recursion is defined on an ordinal if the characteristic function is defined up to a suitable point. (Contributed by Jim Kingdon, 18-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  A  =  { f  |  E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) ) }   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  Y  e.  X )   =>    |-  ( ph  ->  Y 
 C_  dom  F )
 
Theoremtfrcldm 6260* 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.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  Y  e.  U. X )   =>    |-  ( ph  ->  Y  e.  dom  F )
 
Theoremtfrcl 6261* Closure for transfinite recursion. As with tfr1on 6247, the characteristic function must be defined up to a suitable point, not necessarily on all ordinals. (Contributed by Jim Kingdon, 25-Mar-2022.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  Fun 
 G )   &    |-  ( ph  ->  Ord 
 X )   &    |-  ( ( ph  /\  x  e.  X  /\  f : x --> S ) 
 ->  ( G `  f
 )  e.  S )   &    |-  ( ( ph  /\  x  e.  U. X )  ->  suc  x  e.  X )   &    |-  ( ph  ->  Y  e.  U. X )   =>    |-  ( ph  ->  ( F `  Y )  e.  S )
 
Theoremtfri1 6262* Principle of Transfinite Recursion, part 1 of 3. Theorem 7.41(1) of [TakeutiZaring] p. 47, with an additional condition.

The condition is that  G is defined "everywhere", which is stated here as  ( G `  x )  e.  _V. Alternately,  A. x  e.  On A. f ( f  Fn  x  -> 
f  e.  dom  G
) would suffice.

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

 |-  F  = recs ( G )   &    |-  ( Fun  G  /\  ( G `  x )  e.  _V )   =>    |-  F  Fn  On
 
Theoremtfri2 6263* Principle of Transfinite Recursion, part 2 of 3. Theorem 7.41(2) of [TakeutiZaring] p. 47, with an additional condition on the recursion rule  G ( as described at tfri1 6262). Here we show that the function  F has the property that for any function  G satisfying that condition, the "next" value of  F is  G recursively applied to all "previous" values of  F. (Contributed by Jim Kingdon, 4-May-2019.)
 |-  F  = recs ( G )   &    |-  ( Fun  G  /\  ( G `  x )  e.  _V )   =>    |-  ( A  e.  On  ->  ( F `  A )  =  ( G `  ( F  |`  A ) ) )
 
Theoremtfri3 6264* Principle of Transfinite Recursion, part 3 of 3. Theorem 7.41(3) of [TakeutiZaring] p. 47, with an additional condition on the recursion rule  G ( as described at tfri1 6262). Finally, we show that  F is unique. We do this by showing that any class  B with the same properties of  F that we showed in parts 1 and 2 is identical to  F. (Contributed by Jim Kingdon, 4-May-2019.)
 |-  F  = recs ( G )   &    |-  ( Fun  G  /\  ( G `  x )  e.  _V )   =>    |-  (
 ( B  Fn  On  /\ 
 A. x  e.  On  ( B `  x )  =  ( G `  ( B  |`  x ) ) )  ->  B  =  F )
 
Theoremtfrex 6265* The transfinite recursion function is set-like if the input is. (Contributed by Mario Carneiro, 3-Jul-2019.)
 |-  F  = recs ( G )   &    |-  ( ph  ->  A. x ( Fun  G  /\  ( G `  x )  e.  _V )
 )   =>    |-  ( ( ph  /\  A  e.  V )  ->  ( F `  A )  e. 
 _V )
 
2.6.20  Recursive definition generator
 
Syntaxcrdg 6266 Extend class notation with the recursive definition generator, with characteristic function  F and initial value  I.
 class  rec ( F ,  I
 )
 
Definitiondf-irdg 6267* Define a recursive definition generator on  On (the class of ordinal numbers) with characteristic function  F and initial value  I. 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 6202 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  g 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  g. 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 6288 and for suitable characteristic functions df-frec 6288 yields the same result as  rec restricted to  om, as seen at frecrdg 6305.

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 ( F ,  I )  = recs (
 ( g  e.  _V  |->  ( I  u.  U_ x  e.  dom  g ( F `
  ( g `  x ) ) ) ) )
 
Theoremrdgeq1 6268 Equality theorem for the recursive definition generator. (Contributed by NM, 9-Apr-1995.) (Revised by Mario Carneiro, 9-May-2015.)
 |-  ( F  =  G  ->  rec ( F ,  A )  =  rec ( G ,  A ) )
 
Theoremrdgeq2 6269 Equality theorem for the recursive definition generator. (Contributed by NM, 9-Apr-1995.) (Revised by Mario Carneiro, 9-May-2015.)
 |-  ( A  =  B  ->  rec ( F ,  A )  =  rec ( F ,  B ) )
 
Theoremrdgfun 6270 The recursive definition generator is a function. (Contributed by Mario Carneiro, 16-Nov-2014.)
 |- 
 Fun  rec ( F ,  A )
 
Theoremrdgtfr 6271* The recursion rule for the recursive definition generator is defined everywhere. (Contributed by Jim Kingdon, 14-May-2020.)
 |-  ( ( A. z
 ( F `  z
 )  e.  _V  /\  A  e.  V )  ->  ( Fun  ( g  e.  _V  |->  ( A  u.  U_ x  e.  dom  g ( F `  ( g `  x ) ) ) ) 
 /\  ( ( g  e.  _V  |->  ( A  u.  U_ x  e.  dom  g ( F `  ( g `  x ) ) ) ) `
  f )  e. 
 _V ) )
 
Theoremrdgruledefgg 6272* The recursion rule for the recursive definition generator is defined everywhere. (Contributed by Jim Kingdon, 4-Jul-2019.)
 |-  ( ( F  Fn  _V 
 /\  A  e.  V )  ->  ( Fun  (
 g  e.  _V  |->  ( A  u.  U_ x  e.  dom  g ( F `
  ( g `  x ) ) ) )  /\  ( ( g  e.  _V  |->  ( A  u.  U_ x  e.  dom  g ( F `
  ( g `  x ) ) ) ) `  f )  e.  _V ) )
 
Theoremrdgruledefg 6273* The recursion rule for the recursive definition generator is defined everywhere. (Contributed by Jim Kingdon, 4-Jul-2019.)
 |-  F  Fn  _V   =>    |-  ( A  e.  V  ->  ( Fun  (
 g  e.  _V  |->  ( A  u.  U_ x  e.  dom  g ( F `
  ( g `  x ) ) ) )  /\  ( ( g  e.  _V  |->  ( A  u.  U_ x  e.  dom  g ( F `
  ( g `  x ) ) ) ) `  f )  e.  _V ) )
 
Theoremrdgexggg 6274 The recursive definition generator produces a set on a set input. (Contributed by Jim Kingdon, 4-Jul-2019.)
 |-  ( ( F  Fn  _V 
 /\  A  e.  V  /\  B  e.  W ) 
 ->  ( rec ( F ,  A ) `  B )  e.  _V )
 
Theoremrdgexgg 6275 The recursive definition generator produces a set on a set input. (Contributed by Jim Kingdon, 4-Jul-2019.)
 |-  F  Fn  _V   =>    |-  ( ( A  e.  V  /\  B  e.  W )  ->  ( rec ( F ,  A ) `  B )  e. 
 _V )
 
Theoremrdgifnon 6276 The recursive definition generator is a function on ordinal numbers. The  F  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 6283; in cases like df-oadd 6317 either presumably could work). (Contributed by Jim Kingdon, 13-Jul-2019.)
 |-  ( ( F  Fn  _V 
 /\  A  e.  V )  ->  rec ( F ,  A )  Fn  On )
 
Theoremrdgifnon2 6277* The recursive definition generator is a function on ordinal numbers. (Contributed by Jim Kingdon, 14-May-2020.)
 |-  ( ( A. z
 ( F `  z
 )  e.  _V  /\  A  e.  V )  ->  rec ( F ,  A )  Fn  On )
 
Theoremrdgivallem 6278* Value of the recursive definition generator. Lemma for rdgival 6279 which simplifies the value further. (Contributed by Jim Kingdon, 13-Jul-2019.) (New usage is discouraged.)
 |-  ( ( F  Fn  _V 
 /\  A  e.  V  /\  B  e.  On )  ->  ( rec ( F ,  A ) `  B )  =  ( A  u.  U_ x  e.  B  ( F `  ( ( rec ( F ,  A )  |`  B ) `
  x ) ) ) )
 
Theoremrdgival 6279* Value of the recursive definition generator. (Contributed by Jim Kingdon, 26-Jul-2019.)
 |-  ( ( F  Fn  _V 
 /\  A  e.  V  /\  B  e.  On )  ->  ( rec ( F ,  A ) `  B )  =  ( A  u.  U_ x  e.  B  ( F `  ( rec ( F ,  A ) `  x ) ) ) )
 
Theoremrdgss 6280 Subset and recursive definition generator. (Contributed by Jim Kingdon, 15-Jul-2019.)
 |-  ( ph  ->  F  Fn  _V )   &    |-  ( ph  ->  I  e.  V )   &    |-  ( ph  ->  A  e.  On )   &    |-  ( ph  ->  B  e.  On )   &    |-  ( ph  ->  A 
 C_  B )   =>    |-  ( ph  ->  ( rec ( F ,  I ) `  A )  C_  ( rec ( F ,  I ) `  B ) )
 
Theoremrdgisuc1 6281* One way of describing the value of the recursive definition generator at a successor. There is no condition on the characteristic function  F other than  F  Fn  _V. Given that, the resulting expression encompasses both the expected successor term  ( F `  ( rec ( F ,  A ) `  B
) ) but also terms that correspond to the initial value  A and to limit ordinals  U_ x  e.  B ( F `  ( rec ( F ,  A ) `  x
) ).

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

 |-  ( ph  ->  F  Fn  _V )   &    |-  ( ph  ->  A  e.  V )   &    |-  ( ph  ->  B  e.  On )   =>    |-  ( ph  ->  ( rec ( F ,  A ) `  suc  B )  =  ( A  u.  ( U_ x  e.  B  ( F `  ( rec ( F ,  A ) `  x ) )  u.  ( F `  ( rec ( F ,  A ) `  B ) ) ) ) )
 
Theoremrdgisucinc 6282* Value of the recursive definition generator at a successor.

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

 |-  ( ph  ->  F  Fn  _V )   &    |-  ( ph  ->  A  e.  V )   &    |-  ( ph  ->  B  e.  On )   &    |-  ( ph  ->  A. x  x  C_  ( F `  x ) )   =>    |-  ( ph  ->  ( rec ( F ,  A ) `  suc  B )  =  ( F `
  ( rec ( F ,  A ) `  B ) ) )
 
Theoremrdgon 6283* 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.)
 |-  ( ph  ->  A  e.  On )   &    |-  ( ph  ->  A. x  e.  On  ( F `  x )  e. 
 On )   =>    |-  ( ( ph  /\  B  e.  On )  ->  ( rec ( F ,  A ) `  B )  e. 
 On )
 
Theoremrdg0 6284 The initial value of the recursive definition generator. (Contributed by NM, 23-Apr-1995.) (Revised by Mario Carneiro, 14-Nov-2014.)
 |-  A  e.  _V   =>    |-  ( rec ( F ,  A ) `  (/) )  =  A
 
Theoremrdg0g 6285 The initial value of the recursive definition generator. (Contributed by NM, 25-Apr-1995.)
 |-  ( A  e.  C  ->  ( rec ( F ,  A ) `  (/) )  =  A )
 
Theoremrdgexg 6286 The recursive definition generator produces a set on a set input. (Contributed by Mario Carneiro, 3-Jul-2019.)
 |-  A  e.  _V   &    |-  F  Fn  _V   =>    |-  ( B  e.  V  ->  ( rec ( F ,  A ) `  B )  e.  _V )
 
2.6.21  Finite recursion
 
Syntaxcfrec 6287 Extend class notation with the finite recursive definition generator, with characteristic function  F and initial value  I.
 class frec ( F ,  I )
 
Definitiondf-frec 6288* Define a recursive definition generator on  om (the class of finite ordinals) with characteristic function  F and initial value  I. 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 6202 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 6294 and frecsuc 6304.

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 4518. 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 6305, this definition and df-irdg 6267 restricted to  om 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
 ( F ,  I
 )  =  (recs (
 ( g  e.  _V  |->  { x  |  ( E. m  e.  om  ( dom  g  =  suc  m  /\  x  e.  ( F `  ( g `  m ) ) )  \/  ( dom  g  =  (/)  /\  x  e.  I ) ) }
 ) )  |`  om )
 
Theoremfreceq1 6289 Equality theorem for the finite recursive definition generator. (Contributed by Jim Kingdon, 30-May-2020.)
 |-  ( F  =  G  -> frec ( F ,  A )  = frec ( G ,  A ) )
 
Theoremfreceq2 6290 Equality theorem for the finite recursive definition generator. (Contributed by Jim Kingdon, 30-May-2020.)
 |-  ( A  =  B  -> frec ( F ,  A )  = frec ( F ,  B ) )
 
Theoremfrecex 6291 Finite recursion produces a set. (Contributed by Jim Kingdon, 20-Aug-2021.)
 |- frec
 ( F ,  A )  e.  _V
 
Theoremfrecfun 6292 Finite recursion produces a function. See also frecfnom 6298 which also states that the domain of that function is  om but which puts conditions on  A and  F. (Contributed by Jim Kingdon, 13-Feb-2022.)
 |- 
 Fun frec ( F ,  A )
 
Theoremnffrec 6293 Bound-variable hypothesis builder for the finite recursive definition generator. (Contributed by Jim Kingdon, 30-May-2020.)
 |-  F/_ x F   &    |-  F/_ x A   =>    |-  F/_ xfrec ( F ,  A )
 
Theoremfrec0g 6294 The initial value resulting from finite recursive definition generation. (Contributed by Jim Kingdon, 7-May-2020.)
 |-  ( A  e.  V  ->  (frec ( F ,  A ) `  (/) )  =  A )
 
Theoremfrecabex 6295* The class abstraction from df-frec 6288 exists. This is a lemma for other finite recursion proofs. (Contributed by Jim Kingdon, 13-May-2020.)
 |-  ( ph  ->  S  e.  V )   &    |-  ( ph  ->  A. y ( F `  y )  e.  _V )   &    |-  ( ph  ->  A  e.  W )   =>    |-  ( ph  ->  { x  |  ( E. m  e. 
 om  ( dom  S  =  suc  m  /\  x  e.  ( F `  ( S `  m ) ) )  \/  ( dom 
 S  =  (/)  /\  x  e.  A ) ) }  e.  _V )
 
Theoremfrecabcl 6296* The class abstraction from df-frec 6288 exists. Unlike frecabex 6295 the function  F only needs to be defined on  S, not all sets. This is a lemma for other finite recursion proofs. (Contributed by Jim Kingdon, 21-Mar-2022.)
 |-  ( ph  ->  N  e.  om )   &    |-  ( ph  ->  G : N --> S )   &    |-  ( ph  ->  A. y  e.  S  ( F `  y )  e.  S )   &    |-  ( ph  ->  A  e.  S )   =>    |-  ( ph  ->  { x  |  ( E. m  e. 
 om  ( dom  G  =  suc  m  /\  x  e.  ( F `  ( G `  m ) ) )  \/  ( dom 
 G  =  (/)  /\  x  e.  A ) ) }  e.  S )
 
Theoremfrectfr 6297* Lemma to connect transfinite recursion theorems with finite recursion. That is, given the conditions  F  Fn  _V and  A  e.  V on frec ( F ,  A ), we want to be able to apply tfri1d 6232 or tfri2d 6233, and this lemma lets us satisfy hypotheses of those theorems.

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

 |-  G  =  ( g  e.  _V  |->  { x  |  ( E. m  e. 
 om  ( dom  g  =  suc  m  /\  x  e.  ( F `  (
 g `  m )
 ) )  \/  ( dom  g  =  (/)  /\  x  e.  A ) ) }
 )   =>    |-  ( ( A. z
 ( F `  z
 )  e.  _V  /\  A  e.  V )  ->  A. y ( Fun 
 G  /\  ( G `  y )  e.  _V ) )
 
Theoremfrecfnom 6298* The function generated by finite recursive definition generation is a function on omega. (Contributed by Jim Kingdon, 13-May-2020.)
 |-  ( ( A. z
 ( F `  z
 )  e.  _V  /\  A  e.  V )  -> frec ( F ,  A )  Fn  om )
 
Theoremfreccllem 6299* Lemma for freccl 6300. Just giving a name to a common expression to simplify the proof. (Contributed by Jim Kingdon, 27-Mar-2022.)
 |-  ( ph  ->  A  e.  S )   &    |-  ( ( ph  /\  z  e.  S ) 
 ->  ( F `  z
 )  e.  S )   &    |-  ( ph  ->  B  e.  om )   &    |-  G  = recs (
 ( g  e.  _V  |->  { x  |  ( E. m  e.  om  ( dom  g  =  suc  m  /\  x  e.  ( F `  ( g `  m ) ) )  \/  ( dom  g  =  (/)  /\  x  e.  A ) ) }
 ) )   =>    |-  ( ph  ->  (frec ( F ,  A ) `
  B )  e.  S )
 
Theoremfreccl 6300* Closure for finite recursion. (Contributed by Jim Kingdon, 27-Mar-2022.)
 |-  ( ph  ->  A  e.  S )   &    |-  ( ( ph  /\  z  e.  S ) 
 ->  ( F `  z
 )  e.  S )   &    |-  ( ph  ->  B  e.  om )   =>    |-  ( ph  ->  (frec ( F ,  A ) `
  B )  e.  S )
    < 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-13000 131 13001-13100 132 13101-13200 133 13201-13250
  Copyright terms: Public domain < Previous  Next >