Users' Mathboxes Mathbox for Scott Fenton < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  dfrdg2 Structured version   Unicode version

Theorem dfrdg2 30449
Description: Alternate definition of the recursive function generator when  I is a set. (Contributed by Scott Fenton, 26-Mar-2014.) (Revised by Mario Carneiro, 19-Apr-2014.)
Assertion
Ref Expression
dfrdg2  |-  ( I  e.  V  ->  rec ( F ,  I )  =  U. { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) } )
Distinct variable groups:    f, F, x, y    f, I, x, y
Allowed substitution hints:    V( x, y, f)

Proof of Theorem dfrdg2
Dummy variables  g 
i  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 rdgeq2 7141 . . 3  |-  ( i  =  I  ->  rec ( F ,  i )  =  rec ( F ,  I ) )
2 ifeq1 3915 . . . . . . . . 9  |-  ( i  =  I  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) )  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f "
y ) ,  ( F `  ( f `
 U. y ) ) ) ) )
32eqeq2d 2436 . . . . . . . 8  |-  ( i  =  I  ->  (
( f `  y
)  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) )  <->  ( f `  y )  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) )
43ralbidv 2861 . . . . . . 7  |-  ( i  =  I  ->  ( A. y  e.  x  ( f `  y
)  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) )  <->  A. y  e.  x  ( f `  y
)  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f "
y ) ,  ( F `  ( f `
 U. y ) ) ) ) ) )
54anbi2d 708 . . . . . 6  |-  ( i  =  I  ->  (
( f  Fn  x  /\  A. y  e.  x  ( f `  y
)  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )  <->  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) ) )
65rexbidv 2936 . . . . 5  |-  ( i  =  I  ->  ( E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
)  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )  <->  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) ) )
76abbidv 2553 . . . 4  |-  ( i  =  I  ->  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) }  =  { f  |  E. x  e.  On  (
f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f "
y ) ,  ( F `  ( f `
 U. y ) ) ) ) ) } )
87unieqd 4229 . . 3  |-  ( i  =  I  ->  U. {
f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) }  =  U. { f  |  E. x  e.  On  (
f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f "
y ) ,  ( F `  ( f `
 U. y ) ) ) ) ) } )
91, 8eqeq12d 2444 . 2  |-  ( i  =  I  ->  ( rec ( F ,  i )  =  U. {
f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) }  <->  rec ( F ,  I )  =  U. { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
)  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f "
y ) ,  ( F `  ( f `
 U. y ) ) ) ) ) } ) )
10 df-rdg 7139 . . 3  |-  rec ( F ,  i )  = recs ( ( g  e. 
_V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `  U. dom  g ) ) ) ) ) )
11 dfrecs3 7102 . . 3  |- recs ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) ) )  =  U. { f  |  E. x  e.  On  (
f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim 
dom  g ,  U. ran  g ,  ( F `
 ( g `  U. dom  g ) ) ) ) ) `  ( f  |`  y
) ) ) }
12 vex 3083 . . . . . . . . . . . . 13  |-  f  e. 
_V
1312resex 5167 . . . . . . . . . . . 12  |-  ( f  |`  y )  e.  _V
14 eqeq1 2426 . . . . . . . . . . . . . . 15  |-  ( g  =  ( f  |`  y )  ->  (
g  =  (/)  <->  ( f  |`  y )  =  (/) ) )
15 relres 5151 . . . . . . . . . . . . . . . 16  |-  Rel  (
f  |`  y )
16 reldm0 5071 . . . . . . . . . . . . . . . 16  |-  ( Rel  ( f  |`  y
)  ->  ( (
f  |`  y )  =  (/) 
<->  dom  ( f  |`  y )  =  (/) ) )
1715, 16ax-mp 5 . . . . . . . . . . . . . . 15  |-  ( ( f  |`  y )  =  (/)  <->  dom  ( f  |`  y )  =  (/) )
1814, 17syl6bb 264 . . . . . . . . . . . . . 14  |-  ( g  =  ( f  |`  y )  ->  (
g  =  (/)  <->  dom  ( f  |`  y )  =  (/) ) )
19 dmeq 5054 . . . . . . . . . . . . . . . 16  |-  ( g  =  ( f  |`  y )  ->  dom  g  =  dom  ( f  |`  y ) )
20 limeq 5454 . . . . . . . . . . . . . . . 16  |-  ( dom  g  =  dom  (
f  |`  y )  -> 
( Lim  dom  g  <->  Lim  dom  (
f  |`  y ) ) )
2119, 20syl 17 . . . . . . . . . . . . . . 15  |-  ( g  =  ( f  |`  y )  ->  ( Lim  dom  g  <->  Lim  dom  (
f  |`  y ) ) )
22 rneq 5079 . . . . . . . . . . . . . . . . 17  |-  ( g  =  ( f  |`  y )  ->  ran  g  =  ran  ( f  |`  y ) )
23 df-ima 4866 . . . . . . . . . . . . . . . . 17  |-  ( f
" y )  =  ran  ( f  |`  y )
2422, 23syl6eqr 2481 . . . . . . . . . . . . . . . 16  |-  ( g  =  ( f  |`  y )  ->  ran  g  =  ( f " y ) )
2524unieqd 4229 . . . . . . . . . . . . . . 15  |-  ( g  =  ( f  |`  y )  ->  U. ran  g  =  U. (
f " y ) )
26 id 22 . . . . . . . . . . . . . . . . 17  |-  ( g  =  ( f  |`  y )  ->  g  =  ( f  |`  y ) )
2719unieqd 4229 . . . . . . . . . . . . . . . . 17  |-  ( g  =  ( f  |`  y )  ->  U. dom  g  =  U. dom  (
f  |`  y ) )
2826, 27fveq12d 5887 . . . . . . . . . . . . . . . 16  |-  ( g  =  ( f  |`  y )  ->  (
g `  U. dom  g
)  =  ( ( f  |`  y ) `  U. dom  ( f  |`  y ) ) )
2928fveq2d 5885 . . . . . . . . . . . . . . 15  |-  ( g  =  ( f  |`  y )  ->  ( F `  ( g `  U. dom  g ) )  =  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) )
3021, 25, 29ifbieq12d 3938 . . . . . . . . . . . . . 14  |-  ( g  =  ( f  |`  y )  ->  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) )  =  if ( Lim  dom  ( f  |`  y
) ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) ) )
3118, 30ifbieq2d 3936 . . . . . . . . . . . . 13  |-  ( g  =  ( f  |`  y )  ->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) )  =  if ( dom  ( f  |`  y
)  =  (/) ,  i ,  if ( Lim 
dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) ) ) )
32 eqid 2422 . . . . . . . . . . . . 13  |-  ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim 
dom  g ,  U. ran  g ,  ( F `
 ( g `  U. dom  g ) ) ) ) )  =  ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) )
33 vex 3083 . . . . . . . . . . . . . 14  |-  i  e. 
_V
34 imaexg 6744 . . . . . . . . . . . . . . . . 17  |-  ( f  e.  _V  ->  (
f " y )  e.  _V )
3512, 34ax-mp 5 . . . . . . . . . . . . . . . 16  |-  ( f
" y )  e. 
_V
3635uniex 6601 . . . . . . . . . . . . . . 15  |-  U. (
f " y )  e.  _V
37 fvex 5891 . . . . . . . . . . . . . . 15  |-  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) )  e. 
_V
3836, 37ifex 3979 . . . . . . . . . . . . . 14  |-  if ( Lim  dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) )  e.  _V
3933, 38ifex 3979 . . . . . . . . . . . . 13  |-  if ( dom  ( f  |`  y )  =  (/) ,  i ,  if ( Lim  dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) ) )  e.  _V
4031, 32, 39fvmpt 5964 . . . . . . . . . . . 12  |-  ( ( f  |`  y )  e.  _V  ->  ( (
g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) ) `  ( f  |`  y ) )  =  if ( dom  (
f  |`  y )  =  (/) ,  i ,  if ( Lim  dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) ) ) )
4113, 40ax-mp 5 . . . . . . . . . . 11  |-  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) ) `  ( f  |`  y ) )  =  if ( dom  (
f  |`  y )  =  (/) ,  i ,  if ( Lim  dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) ) )
42 dmres 5144 . . . . . . . . . . . . 13  |-  dom  (
f  |`  y )  =  ( y  i^i  dom  f )
43 onelss 5484 . . . . . . . . . . . . . . . . 17  |-  ( x  e.  On  ->  (
y  e.  x  -> 
y  C_  x )
)
4443imp 430 . . . . . . . . . . . . . . . 16  |-  ( ( x  e.  On  /\  y  e.  x )  ->  y  C_  x )
45443adant2 1024 . . . . . . . . . . . . . . 15  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  y  C_  x )
46 fndm 5693 . . . . . . . . . . . . . . . 16  |-  ( f  Fn  x  ->  dom  f  =  x )
47463ad2ant2 1027 . . . . . . . . . . . . . . 15  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  dom  f  =  x )
4845, 47sseqtr4d 3501 . . . . . . . . . . . . . 14  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  y  C_  dom  f )
49 df-ss 3450 . . . . . . . . . . . . . 14  |-  ( y 
C_  dom  f  <->  ( y  i^i  dom  f )  =  y )
5048, 49sylib 199 . . . . . . . . . . . . 13  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  ( y  i^i  dom  f )  =  y )
5142, 50syl5eq 2475 . . . . . . . . . . . 12  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  dom  ( f  |`  y )  =  y )
52 eqeq1 2426 . . . . . . . . . . . . . 14  |-  ( dom  ( f  |`  y
)  =  y  -> 
( dom  ( f  |`  y )  =  (/)  <->  y  =  (/) ) )
53 limeq 5454 . . . . . . . . . . . . . . 15  |-  ( dom  ( f  |`  y
)  =  y  -> 
( Lim  dom  ( f  |`  y )  <->  Lim  y ) )
54 unieq 4227 . . . . . . . . . . . . . . . . 17  |-  ( dom  ( f  |`  y
)  =  y  ->  U. dom  ( f  |`  y )  =  U. y )
5554fveq2d 5885 . . . . . . . . . . . . . . . 16  |-  ( dom  ( f  |`  y
)  =  y  -> 
( ( f  |`  y ) `  U. dom  ( f  |`  y
) )  =  ( ( f  |`  y
) `  U. y ) )
5655fveq2d 5885 . . . . . . . . . . . . . . 15  |-  ( dom  ( f  |`  y
)  =  y  -> 
( F `  (
( f  |`  y
) `  U. dom  (
f  |`  y ) ) )  =  ( F `
 ( ( f  |`  y ) `  U. y ) ) )
5753, 56ifbieq2d 3936 . . . . . . . . . . . . . 14  |-  ( dom  ( f  |`  y
)  =  y  ->  if ( Lim  dom  (
f  |`  y ) , 
U. ( f "
y ) ,  ( F `  ( ( f  |`  y ) `  U. dom  ( f  |`  y ) ) ) )  =  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. y ) ) ) )
5852, 57ifbieq2d 3936 . . . . . . . . . . . . 13  |-  ( dom  ( f  |`  y
)  =  y  ->  if ( dom  ( f  |`  y )  =  (/) ,  i ,  if ( Lim  dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) ) )
59 onelon 5467 . . . . . . . . . . . . . . . 16  |-  ( ( x  e.  On  /\  y  e.  x )  ->  y  e.  On )
60 eloni 5452 . . . . . . . . . . . . . . . 16  |-  ( y  e.  On  ->  Ord  y )
6159, 60syl 17 . . . . . . . . . . . . . . 15  |-  ( ( x  e.  On  /\  y  e.  x )  ->  Ord  y )
62613adant2 1024 . . . . . . . . . . . . . 14  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  Ord  y )
63 ordzsl 6686 . . . . . . . . . . . . . . 15  |-  ( Ord  y  <->  ( y  =  (/)  \/  E. z  e.  On  y  =  suc  z  \/  Lim  y ) )
64 iftrue 3917 . . . . . . . . . . . . . . . . 17  |-  ( y  =  (/)  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) )  =  i )
65 iftrue 3917 . . . . . . . . . . . . . . . . 17  |-  ( y  =  (/)  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) )  =  i )
6664, 65eqtr4d 2466 . . . . . . . . . . . . . . . 16  |-  ( y  =  (/)  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )
67 vex 3083 . . . . . . . . . . . . . . . . . . . . . . 23  |-  z  e. 
_V
6867sucid 5521 . . . . . . . . . . . . . . . . . . . . . 22  |-  z  e. 
suc  z
69 fvres 5895 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( z  e.  suc  z  -> 
( ( f  |`  suc  z ) `  z
)  =  ( f `
 z ) )
7068, 69ax-mp 5 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( f  |`  suc  z ) `
 z )  =  ( f `  z
)
71 eloni 5452 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( z  e.  On  ->  Ord  z )
72 ordunisuc 6673 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( Ord  z  ->  U. suc  z  =  z )
7371, 72syl 17 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( z  e.  On  ->  U. suc  z  =  z )
7473fveq2d 5885 . . . . . . . . . . . . . . . . . . . . 21  |-  ( z  e.  On  ->  (
( f  |`  suc  z
) `  U. suc  z
)  =  ( ( f  |`  suc  z ) `
 z ) )
7573fveq2d 5885 . . . . . . . . . . . . . . . . . . . . 21  |-  ( z  e.  On  ->  (
f `  U. suc  z
)  =  ( f `
 z ) )
7670, 74, 753eqtr4a 2489 . . . . . . . . . . . . . . . . . . . 20  |-  ( z  e.  On  ->  (
( f  |`  suc  z
) `  U. suc  z
)  =  ( f `
 U. suc  z
) )
7776fveq2d 5885 . . . . . . . . . . . . . . . . . . 19  |-  ( z  e.  On  ->  ( F `  ( (
f  |`  suc  z ) `
 U. suc  z
) )  =  ( F `  ( f `
 U. suc  z
) ) )
78 nsuceq0 5522 . . . . . . . . . . . . . . . . . . . . . 22  |-  suc  z  =/=  (/)
7978neii 2618 . . . . . . . . . . . . . . . . . . . . 21  |-  -.  suc  z  =  (/)
8079iffalsei 3921 . . . . . . . . . . . . . . . . . . . 20  |-  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) ) )  =  if ( Lim  suc  z ,  U. ( f "
y ) ,  ( F `  ( ( f  |`  suc  z ) `
 U. suc  z
) ) )
81 nlimsucg 6683 . . . . . . . . . . . . . . . . . . . . 21  |-  ( z  e.  _V  ->  -.  Lim  suc  z )
82 iffalse 3920 . . . . . . . . . . . . . . . . . . . . 21  |-  ( -. 
Lim  suc  z  ->  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) )  =  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) )
8367, 81, 82mp2b 10 . . . . . . . . . . . . . . . . . . . 20  |-  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) )  =  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) )
8480, 83eqtri 2451 . . . . . . . . . . . . . . . . . . 19  |-  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) ) )  =  ( F `  ( ( f  |`  suc  z ) `
 U. suc  z
) )
8579iffalsei 3921 . . . . . . . . . . . . . . . . . . . 20  |-  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( f `  U. suc  z ) ) ) )  =  if ( Lim  suc  z ,  U. ( f "
y ) ,  ( F `  ( f `
 U. suc  z
) ) )
86 iffalse 3920 . . . . . . . . . . . . . . . . . . . . 21  |-  ( -. 
Lim  suc  z  ->  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( f `  U. suc  z ) ) )  =  ( F `
 ( f `  U. suc  z ) ) )
8767, 81, 86mp2b 10 . . . . . . . . . . . . . . . . . . . 20  |-  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( f `  U. suc  z ) ) )  =  ( F `
 ( f `  U. suc  z ) )
8885, 87eqtri 2451 . . . . . . . . . . . . . . . . . . 19  |-  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( f `  U. suc  z ) ) ) )  =  ( F `  ( f `
 U. suc  z
) )
8977, 84, 883eqtr4g 2488 . . . . . . . . . . . . . . . . . 18  |-  ( z  e.  On  ->  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) ) )  =  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( f `  U. suc  z ) ) ) ) )
90 eqeq1 2426 . . . . . . . . . . . . . . . . . . . 20  |-  ( y  =  suc  z  -> 
( y  =  (/)  <->  suc  z  =  (/) ) )
91 limeq 5454 . . . . . . . . . . . . . . . . . . . . 21  |-  ( y  =  suc  z  -> 
( Lim  y  <->  Lim  suc  z
) )
92 reseq2 5119 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( y  =  suc  z  -> 
( f  |`  y
)  =  ( f  |`  suc  z ) )
93 unieq 4227 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( y  =  suc  z  ->  U. y  =  U. suc  z )
9492, 93fveq12d 5887 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( y  =  suc  z  -> 
( ( f  |`  y ) `  U. y )  =  ( ( f  |`  suc  z
) `  U. suc  z
) )
9594fveq2d 5885 . . . . . . . . . . . . . . . . . . . . 21  |-  ( y  =  suc  z  -> 
( F `  (
( f  |`  y
) `  U. y ) )  =  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) )
9691, 95ifbieq2d 3936 . . . . . . . . . . . . . . . . . . . 20  |-  ( y  =  suc  z  ->  if ( Lim  y , 
U. ( f "
y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) )  =  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) ) )
9790, 96ifbieq2d 3936 . . . . . . . . . . . . . . . . . . 19  |-  ( y  =  suc  z  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) ) ) )
9893fveq2d 5885 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( y  =  suc  z  -> 
( f `  U. y )  =  ( f `  U. suc  z ) )
9998fveq2d 5885 . . . . . . . . . . . . . . . . . . . . 21  |-  ( y  =  suc  z  -> 
( F `  (
f `  U. y ) )  =  ( F `
 ( f `  U. suc  z ) ) )
10091, 99ifbieq2d 3936 . . . . . . . . . . . . . . . . . . . 20  |-  ( y  =  suc  z  ->  if ( Lim  y , 
U. ( f "
y ) ,  ( F `  ( f `
 U. y ) ) )  =  if ( Lim  suc  z ,  U. ( f "
y ) ,  ( F `  ( f `
 U. suc  z
) ) ) )
10190, 100ifbieq2d 3936 . . . . . . . . . . . . . . . . . . 19  |-  ( y  =  suc  z  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) )  =  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( f `  U. suc  z ) ) ) ) )
10297, 101eqeq12d 2444 . . . . . . . . . . . . . . . . . 18  |-  ( y  =  suc  z  -> 
( if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f "
y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) )  <->  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. (
f " y ) ,  ( F `  ( ( f  |`  suc  z ) `  U. suc  z ) ) ) )  =  if ( suc  z  =  (/) ,  i ,  if ( Lim  suc  z ,  U. ( f " y
) ,  ( F `
 ( f `  U. suc  z ) ) ) ) ) )
10389, 102syl5ibrcom 225 . . . . . . . . . . . . . . . . 17  |-  ( z  e.  On  ->  (
y  =  suc  z  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) ) )
104103rexlimiv 2908 . . . . . . . . . . . . . . . 16  |-  ( E. z  e.  On  y  =  suc  z  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )
105 iftrue 3917 . . . . . . . . . . . . . . . . . 18  |-  ( Lim  y  ->  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) )  =  U. ( f
" y ) )
106 df-lim 5447 . . . . . . . . . . . . . . . . . . . . 21  |-  ( Lim  y  <->  ( Ord  y  /\  y  =/=  (/)  /\  y  =  U. y ) )
107106simp2bi 1021 . . . . . . . . . . . . . . . . . . . 20  |-  ( Lim  y  ->  y  =/=  (/) )
108107neneqd 2621 . . . . . . . . . . . . . . . . . . 19  |-  ( Lim  y  ->  -.  y  =  (/) )
109108iffalsed 3922 . . . . . . . . . . . . . . . . . 18  |-  ( Lim  y  ->  if (
y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. y ) ) ) )
110 iftrue 3917 . . . . . . . . . . . . . . . . . 18  |-  ( Lim  y  ->  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) )  =  U. ( f
" y ) )
111105, 109, 1103eqtr4d 2473 . . . . . . . . . . . . . . . . 17  |-  ( Lim  y  ->  if (
y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) )
112108iffalsed 3922 . . . . . . . . . . . . . . . . 17  |-  ( Lim  y  ->  if (
y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) )  =  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) )
113111, 112eqtr4d 2466 . . . . . . . . . . . . . . . 16  |-  ( Lim  y  ->  if (
y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )
11466, 104, 1133jaoi 1327 . . . . . . . . . . . . . . 15  |-  ( ( y  =  (/)  \/  E. z  e.  On  y  =  suc  z  \/  Lim  y )  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )
11563, 114sylbi 198 . . . . . . . . . . . . . 14  |-  ( Ord  y  ->  if (
y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )
11662, 115syl 17 . . . . . . . . . . . . 13  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. y ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )
11758, 116sylan9eqr 2485 . . . . . . . . . . . 12  |-  ( ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  /\  dom  ( f  |`  y )  =  y )  ->  if ( dom  ( f  |`  y
)  =  (/) ,  i ,  if ( Lim 
dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )
11851, 117mpdan 672 . . . . . . . . . . 11  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  if ( dom  (
f  |`  y )  =  (/) ,  i ,  if ( Lim  dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) )
11941, 118syl5eq 2475 . . . . . . . . . 10  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  ( ( g  e. 
_V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `  U. dom  g ) ) ) ) ) `  (
f  |`  y ) )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f "
y ) ,  ( F `  ( f `
 U. y ) ) ) ) )
120119eqeq2d 2436 . . . . . . . . 9  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  ( ( f `  y )  =  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) ) `  ( f  |`  y ) )  <->  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) )
1211203expa 1205 . . . . . . . 8  |-  ( ( ( x  e.  On  /\  f  Fn  x )  /\  y  e.  x
)  ->  ( (
f `  y )  =  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim 
dom  g ,  U. ran  g ,  ( F `
 ( g `  U. dom  g ) ) ) ) ) `  ( f  |`  y
) )  <->  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) )
122121ralbidva 2858 . . . . . . 7  |-  ( ( x  e.  On  /\  f  Fn  x )  ->  ( A. y  e.  x  ( f `  y )  =  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) ) `  ( f  |`  y ) )  <->  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) )
123122pm5.32da 645 . . . . . 6  |-  ( x  e.  On  ->  (
( f  Fn  x  /\  A. y  e.  x  ( f `  y
)  =  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) ) `  ( f  |`  y ) ) )  <-> 
( f  Fn  x  /\  A. y  e.  x  ( f `  y
)  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) ) ) )
124123rexbiia 2923 . . . . 5  |-  ( E. x  e.  On  (
f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim 
dom  g ,  U. ran  g ,  ( F `
 ( g `  U. dom  g ) ) ) ) ) `  ( f  |`  y
) ) )  <->  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) )
125124abbii 2551 . . . 4  |-  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) ) `  ( f  |`  y ) ) ) }  =  { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) }
126125unieqi 4228 . . 3  |-  U. {
f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  ( ( g  e.  _V  |->  if ( g  =  (/) ,  i ,  if ( Lim  dom  g ,  U. ran  g ,  ( F `  ( g `
 U. dom  g
) ) ) ) ) `  ( f  |`  y ) ) ) }  =  U. {
f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) }
12710, 11, 1263eqtri 2455 . 2  |-  rec ( F ,  i )  =  U. { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y
)  =  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) ) ) }
1289, 127vtoclg 3139 1  |-  ( I  e.  V  ->  rec ( F ,  I )  =  U. { f  |  E. x  e.  On  ( f  Fn  x  /\  A. y  e.  x  ( f `  y )  =  if ( y  =  (/) ,  I ,  if ( Lim  y ,  U. ( f " y
) ,  ( F `
 ( f `  U. y ) ) ) ) ) } )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 187    /\ wa 370    \/ w3o 981    /\ w3a 982    = wceq 1437    e. wcel 1872   {cab 2407    =/= wne 2614   A.wral 2771   E.wrex 2772   _Vcvv 3080    i^i cin 3435    C_ wss 3436   (/)c0 3761   ifcif 3911   U.cuni 4219    |-> cmpt 4482   dom cdm 4853   ran crn 4854    |` cres 4855   "cima 4856   Rel wrel 4858   Ord word 5441   Oncon0 5442   Lim wlim 5443   suc csuc 5444    Fn wfn 5596   ` cfv 5601  recscrecs 7100   reccrdg 7138
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1663  ax-4 1676  ax-5 1752  ax-6 1798  ax-7 1843  ax-8 1874  ax-9 1876  ax-10 1891  ax-11 1896  ax-12 1909  ax-13 2057  ax-ext 2401  ax-sep 4546  ax-nul 4555  ax-pr 4660  ax-un 6597
This theorem depends on definitions:  df-bi 188  df-or 371  df-an 372  df-3or 983  df-3an 984  df-tru 1440  df-ex 1658  df-nf 1662  df-sb 1791  df-eu 2273  df-mo 2274  df-clab 2408  df-cleq 2414  df-clel 2417  df-nfc 2568  df-ne 2616  df-ral 2776  df-rex 2777  df-rab 2780  df-v 3082  df-sbc 3300  df-dif 3439  df-un 3441  df-in 3443  df-ss 3450  df-pss 3452  df-nul 3762  df-if 3912  df-pw 3983  df-sn 3999  df-pr 4001  df-tp 4003  df-op 4005  df-uni 4220  df-br 4424  df-opab 4483  df-mpt 4484  df-tr 4519  df-eprel 4764  df-id 4768  df-po 4774  df-so 4775  df-fr 4812  df-we 4814  df-xp 4859  df-rel 4860  df-cnv 4861  df-co 4862  df-dm 4863  df-rn 4864  df-res 4865  df-ima 4866  df-pred 5399  df-ord 5445  df-on 5446  df-lim 5447  df-suc 5448  df-iota 5565  df-fun 5603  df-fn 5604  df-fv 5609  df-wrecs 7039  df-recs 7101  df-rdg 7139
This theorem is referenced by:  dfrdg3  30450
  Copyright terms: Public domain W3C validator