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

Theorem dfrdg2 30513
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 7148 . . 3  |-  ( i  =  I  ->  rec ( F ,  i )  =  rec ( F ,  I ) )
2 ifeq1 3876 . . . . . . . . 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 2481 . . . . . . . 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 2829 . . . . . . 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 718 . . . . . 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 2892 . . . . 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 2589 . . . 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 4200 . . 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 2486 . 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 7146 . . 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 7109 . . 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 3034 . . . . . . . . . . . . 13  |-  f  e. 
_V
1312resex 5154 . . . . . . . . . . . 12  |-  ( f  |`  y )  e.  _V
14 eqeq1 2475 . . . . . . . . . . . . . . 15  |-  ( g  =  ( f  |`  y )  ->  (
g  =  (/)  <->  ( f  |`  y )  =  (/) ) )
15 relres 5138 . . . . . . . . . . . . . . . 16  |-  Rel  (
f  |`  y )
16 reldm0 5058 . . . . . . . . . . . . . . . 16  |-  ( Rel  ( f  |`  y
)  ->  ( (
f  |`  y )  =  (/) 
<->  dom  ( f  |`  y )  =  (/) ) )
1715, 16ax-mp 5 . . . . . . . . . . . . . . 15  |-  ( ( f  |`  y )  =  (/)  <->  dom  ( f  |`  y )  =  (/) )
1814, 17syl6bb 269 . . . . . . . . . . . . . 14  |-  ( g  =  ( f  |`  y )  ->  (
g  =  (/)  <->  dom  ( f  |`  y )  =  (/) ) )
19 dmeq 5040 . . . . . . . . . . . . . . . 16  |-  ( g  =  ( f  |`  y )  ->  dom  g  =  dom  ( f  |`  y ) )
20 limeq 5442 . . . . . . . . . . . . . . . 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 5066 . . . . . . . . . . . . . . . . 17  |-  ( g  =  ( f  |`  y )  ->  ran  g  =  ran  ( f  |`  y ) )
23 df-ima 4852 . . . . . . . . . . . . . . . . 17  |-  ( f
" y )  =  ran  ( f  |`  y )
2422, 23syl6eqr 2523 . . . . . . . . . . . . . . . 16  |-  ( g  =  ( f  |`  y )  ->  ran  g  =  ( f " y ) )
2524unieqd 4200 . . . . . . . . . . . . . . 15  |-  ( g  =  ( f  |`  y )  ->  U. ran  g  =  U. (
f " y ) )
26 id 22 . . . . . . . . . . . . . . . . 17  |-  ( g  =  ( f  |`  y )  ->  g  =  ( f  |`  y ) )
2719unieqd 4200 . . . . . . . . . . . . . . . . 17  |-  ( g  =  ( f  |`  y )  ->  U. dom  g  =  U. dom  (
f  |`  y ) )
2826, 27fveq12d 5885 . . . . . . . . . . . . . . . 16  |-  ( g  =  ( f  |`  y )  ->  (
g `  U. dom  g
)  =  ( ( f  |`  y ) `  U. dom  ( f  |`  y ) ) )
2928fveq2d 5883 . . . . . . . . . . . . . . 15  |-  ( g  =  ( f  |`  y )  ->  ( F `  ( g `  U. dom  g ) )  =  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) )
3021, 25, 29ifbieq12d 3899 . . . . . . . . . . . . . 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 3897 . . . . . . . . . . . . 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 2471 . . . . . . . . . . . . 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 3034 . . . . . . . . . . . . . 14  |-  i  e. 
_V
34 imaexg 6749 . . . . . . . . . . . . . . . . 17  |-  ( f  e.  _V  ->  (
f " y )  e.  _V )
3512, 34ax-mp 5 . . . . . . . . . . . . . . . 16  |-  ( f
" y )  e. 
_V
3635uniex 6606 . . . . . . . . . . . . . . 15  |-  U. (
f " y )  e.  _V
37 fvex 5889 . . . . . . . . . . . . . . 15  |-  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) )  e. 
_V
3836, 37ifex 3940 . . . . . . . . . . . . . 14  |-  if ( Lim  dom  ( f  |`  y ) ,  U. ( f " y
) ,  ( F `
 ( ( f  |`  y ) `  U. dom  ( f  |`  y
) ) ) )  e.  _V
3933, 38ifex 3940 . . . . . . . . . . . . 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 5963 . . . . . . . . . . . 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 5131 . . . . . . . . . . . . 13  |-  dom  (
f  |`  y )  =  ( y  i^i  dom  f )
43 onelss 5472 . . . . . . . . . . . . . . . . 17  |-  ( x  e.  On  ->  (
y  e.  x  -> 
y  C_  x )
)
4443imp 436 . . . . . . . . . . . . . . . 16  |-  ( ( x  e.  On  /\  y  e.  x )  ->  y  C_  x )
45443adant2 1049 . . . . . . . . . . . . . . 15  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  y  C_  x )
46 fndm 5685 . . . . . . . . . . . . . . . 16  |-  ( f  Fn  x  ->  dom  f  =  x )
47463ad2ant2 1052 . . . . . . . . . . . . . . 15  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  dom  f  =  x )
4845, 47sseqtr4d 3455 . . . . . . . . . . . . . 14  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  y  C_  dom  f )
49 df-ss 3404 . . . . . . . . . . . . . 14  |-  ( y 
C_  dom  f  <->  ( y  i^i  dom  f )  =  y )
5048, 49sylib 201 . . . . . . . . . . . . 13  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  ( y  i^i  dom  f )  =  y )
5142, 50syl5eq 2517 . . . . . . . . . . . 12  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  dom  ( f  |`  y )  =  y )
52 eqeq1 2475 . . . . . . . . . . . . . 14  |-  ( dom  ( f  |`  y
)  =  y  -> 
( dom  ( f  |`  y )  =  (/)  <->  y  =  (/) ) )
53 limeq 5442 . . . . . . . . . . . . . . 15  |-  ( dom  ( f  |`  y
)  =  y  -> 
( Lim  dom  ( f  |`  y )  <->  Lim  y ) )
54 unieq 4198 . . . . . . . . . . . . . . . . 17  |-  ( dom  ( f  |`  y
)  =  y  ->  U. dom  ( f  |`  y )  =  U. y )
5554fveq2d 5883 . . . . . . . . . . . . . . . 16  |-  ( dom  ( f  |`  y
)  =  y  -> 
( ( f  |`  y ) `  U. dom  ( f  |`  y
) )  =  ( ( f  |`  y
) `  U. y ) )
5655fveq2d 5883 . . . . . . . . . . . . . . 15  |-  ( dom  ( f  |`  y
)  =  y  -> 
( F `  (
( f  |`  y
) `  U. dom  (
f  |`  y ) ) )  =  ( F `
 ( ( f  |`  y ) `  U. y ) ) )
5753, 56ifbieq2d 3897 . . . . . . . . . . . . . 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 3897 . . . . . . . . . . . . 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 5455 . . . . . . . . . . . . . . . 16  |-  ( ( x  e.  On  /\  y  e.  x )  ->  y  e.  On )
60 eloni 5440 . . . . . . . . . . . . . . . 16  |-  ( y  e.  On  ->  Ord  y )
6159, 60syl 17 . . . . . . . . . . . . . . 15  |-  ( ( x  e.  On  /\  y  e.  x )  ->  Ord  y )
62613adant2 1049 . . . . . . . . . . . . . 14  |-  ( ( x  e.  On  /\  f  Fn  x  /\  y  e.  x )  ->  Ord  y )
63 ordzsl 6691 . . . . . . . . . . . . . . 15  |-  ( Ord  y  <->  ( y  =  (/)  \/  E. z  e.  On  y  =  suc  z  \/  Lim  y ) )
64 iftrue 3878 . . . . . . . . . . . . . . . . 17  |-  ( y  =  (/)  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) ) )  =  i )
65 iftrue 3878 . . . . . . . . . . . . . . . . 17  |-  ( y  =  (/)  ->  if ( y  =  (/) ,  i ,  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) ) )  =  i )
6664, 65eqtr4d 2508 . . . . . . . . . . . . . . . 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 3034 . . . . . . . . . . . . . . . . . . . . . . 23  |-  z  e. 
_V
6867sucid 5509 . . . . . . . . . . . . . . . . . . . . . 22  |-  z  e. 
suc  z
69 fvres 5893 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( z  e.  suc  z  -> 
( ( f  |`  suc  z ) `  z
)  =  ( f `
 z ) )
7068, 69ax-mp 5 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( f  |`  suc  z ) `
 z )  =  ( f `  z
)
71 eloni 5440 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( z  e.  On  ->  Ord  z )
72 ordunisuc 6678 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( Ord  z  ->  U. suc  z  =  z )
7371, 72syl 17 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( z  e.  On  ->  U. suc  z  =  z )
7473fveq2d 5883 . . . . . . . . . . . . . . . . . . . . 21  |-  ( z  e.  On  ->  (
( f  |`  suc  z
) `  U. suc  z
)  =  ( ( f  |`  suc  z ) `
 z ) )
7573fveq2d 5883 . . . . . . . . . . . . . . . . . . . . 21  |-  ( z  e.  On  ->  (
f `  U. suc  z
)  =  ( f `
 z ) )
7670, 74, 753eqtr4a 2531 . . . . . . . . . . . . . . . . . . . 20  |-  ( z  e.  On  ->  (
( f  |`  suc  z
) `  U. suc  z
)  =  ( f `
 U. suc  z
) )
7776fveq2d 5883 . . . . . . . . . . . . . . . . . . 19  |-  ( z  e.  On  ->  ( F `  ( (
f  |`  suc  z ) `
 U. suc  z
) )  =  ( F `  ( f `
 U. suc  z
) ) )
78 nsuceq0 5510 . . . . . . . . . . . . . . . . . . . . . 22  |-  suc  z  =/=  (/)
7978neii 2645 . . . . . . . . . . . . . . . . . . . . 21  |-  -.  suc  z  =  (/)
8079iffalsei 3882 . . . . . . . . . . . . . . . . . . . 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 6688 . . . . . . . . . . . . . . . . . . . . 21  |-  ( z  e.  _V  ->  -.  Lim  suc  z )
82 iffalse 3881 . . . . . . . . . . . . . . . . . . . . 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 2493 . . . . . . . . . . . . . . . . . . 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 3882 . . . . . . . . . . . . . . . . . . . 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 3881 . . . . . . . . . . . . . . . . . . . . 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 2493 . . . . . . . . . . . . . . . . . . 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 2530 . . . . . . . . . . . . . . . . . 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 2475 . . . . . . . . . . . . . . . . . . . 20  |-  ( y  =  suc  z  -> 
( y  =  (/)  <->  suc  z  =  (/) ) )
91 limeq 5442 . . . . . . . . . . . . . . . . . . . . 21  |-  ( y  =  suc  z  -> 
( Lim  y  <->  Lim  suc  z
) )
92 reseq2 5106 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( y  =  suc  z  -> 
( f  |`  y
)  =  ( f  |`  suc  z ) )
93 unieq 4198 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( y  =  suc  z  ->  U. y  =  U. suc  z )
9492, 93fveq12d 5885 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( y  =  suc  z  -> 
( ( f  |`  y ) `  U. y )  =  ( ( f  |`  suc  z
) `  U. suc  z
) )
9594fveq2d 5883 . . . . . . . . . . . . . . . . . . . . 21  |-  ( y  =  suc  z  -> 
( F `  (
( f  |`  y
) `  U. y ) )  =  ( F `
 ( ( f  |`  suc  z ) `  U. suc  z ) ) )
9691, 95ifbieq2d 3897 . . . . . . . . . . . . . . . . . . . 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 3897 . . . . . . . . . . . . . . . . . . 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 5883 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( y  =  suc  z  -> 
( f `  U. y )  =  ( f `  U. suc  z ) )
9998fveq2d 5883 . . . . . . . . . . . . . . . . . . . . 21  |-  ( y  =  suc  z  -> 
( F `  (
f `  U. y ) )  =  ( F `
 ( f `  U. suc  z ) ) )
10091, 99ifbieq2d 3897 . . . . . . . . . . . . . . . . . . . 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 3897 . . . . . . . . . . . . . . . . . . 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 2486 . . . . . . . . . . . . . . . . . 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 230 . . . . . . . . . . . . . . . . 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 2867 . . . . . . . . . . . . . . . 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 3878 . . . . . . . . . . . . . . . . . 18  |-  ( Lim  y  ->  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( ( f  |`  y ) `  U. y ) ) )  =  U. ( f
" y ) )
106 df-lim 5435 . . . . . . . . . . . . . . . . . . . . 21  |-  ( Lim  y  <->  ( Ord  y  /\  y  =/=  (/)  /\  y  =  U. y ) )
107106simp2bi 1046 . . . . . . . . . . . . . . . . . . . 20  |-  ( Lim  y  ->  y  =/=  (/) )
108107neneqd 2648 . . . . . . . . . . . . . . . . . . 19  |-  ( Lim  y  ->  -.  y  =  (/) )
109108iffalsed 3883 . . . . . . . . . . . . . . . . . 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 3878 . . . . . . . . . . . . . . . . . 18  |-  ( Lim  y  ->  if ( Lim  y ,  U. (
f " y ) ,  ( F `  ( f `  U. y ) ) )  =  U. ( f
" y ) )
111105, 109, 1103eqtr4d 2515 . . . . . . . . . . . . . . . . 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 3883 . . . . . . . . . . . . . . . . 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 2508 . . . . . . . . . . . . . . . 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 1357 . . . . . . . . . . . . . . 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 200 . . . . . . . . . . . . . 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 2527 . . . . . . . . . . . 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 681 . . . . . . . . . . 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 2517 . . . . . . . . . 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 2481 . . . . . . . . 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 1231 . . . . . . . 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 2828 . . . . . . 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 653 . . . . . 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 2880 . . . . 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 2587 . . . 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 4199 . . 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 2497 . 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 3093 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 189    /\ wa 376    \/ w3o 1006    /\ w3a 1007    = wceq 1452    e. wcel 1904   {cab 2457    =/= wne 2641   A.wral 2756   E.wrex 2757   _Vcvv 3031    i^i cin 3389    C_ wss 3390   (/)c0 3722   ifcif 3872   U.cuni 4190    |-> cmpt 4454   dom cdm 4839   ran crn 4840    |` cres 4841   "cima 4842   Rel wrel 4844   Ord word 5429   Oncon0 5430   Lim wlim 5431   suc csuc 5432    Fn wfn 5584   ` cfv 5589  recscrecs 7107   reccrdg 7145
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1677  ax-4 1690  ax-5 1766  ax-6 1813  ax-7 1859  ax-8 1906  ax-9 1913  ax-10 1932  ax-11 1937  ax-12 1950  ax-13 2104  ax-ext 2451  ax-sep 4518  ax-nul 4527  ax-pr 4639  ax-un 6602
This theorem depends on definitions:  df-bi 190  df-or 377  df-an 378  df-3or 1008  df-3an 1009  df-tru 1455  df-ex 1672  df-nf 1676  df-sb 1806  df-eu 2323  df-mo 2324  df-clab 2458  df-cleq 2464  df-clel 2467  df-nfc 2601  df-ne 2643  df-ral 2761  df-rex 2762  df-rab 2765  df-v 3033  df-sbc 3256  df-dif 3393  df-un 3395  df-in 3397  df-ss 3404  df-pss 3406  df-nul 3723  df-if 3873  df-pw 3944  df-sn 3960  df-pr 3962  df-tp 3964  df-op 3966  df-uni 4191  df-br 4396  df-opab 4455  df-mpt 4456  df-tr 4491  df-eprel 4750  df-id 4754  df-po 4760  df-so 4761  df-fr 4798  df-we 4800  df-xp 4845  df-rel 4846  df-cnv 4847  df-co 4848  df-dm 4849  df-rn 4850  df-res 4851  df-ima 4852  df-pred 5387  df-ord 5433  df-on 5434  df-lim 5435  df-suc 5436  df-iota 5553  df-fun 5591  df-fn 5592  df-fv 5597  df-wrecs 7046  df-recs 7108  df-rdg 7146
This theorem is referenced by:  dfrdg3  30514
  Copyright terms: Public domain W3C validator