ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  tfrcllemres Unicode version

Theorem tfrcllemres 6471
Description: Lemma for tfr1on 6459. Recursion is defined on an ordinal if the characteristic function is defined up to a suitable point. (Contributed by Jim Kingdon, 18-Mar-2022.)
Hypotheses
Ref Expression
tfrcl.f  |-  F  = recs ( G )
tfrcl.g  |-  ( ph  ->  Fun  G )
tfrcl.x  |-  ( ph  ->  Ord  X )
tfrcl.ex  |-  ( (
ph  /\  x  e.  X  /\  f : x --> S )  ->  ( G `  f )  e.  S )
tfrcllemsucfn.1  |-  A  =  { f  |  E. x  e.  X  (
f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y
) ) ) }
tfrcllemres.u  |-  ( (
ph  /\  x  e.  U. X )  ->  suc  x  e.  X )
tfrcllemres.yx  |-  ( ph  ->  Y  e.  X )
Assertion
Ref Expression
tfrcllemres  |-  ( ph  ->  Y  C_  dom  F )
Distinct variable groups:    x, A, y   
f, G, x, y    S, f, x, y    f, X, x, y    f, Y, x, y    ph, f, x, y
Allowed substitution hints:    A( f)    F( x, y, f)

Proof of Theorem tfrcllemres
Dummy variables  g  h  z  u are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 tfrcl.x . . . . . . . . . 10  |-  ( ph  ->  Ord  X )
21adantr 276 . . . . . . . . 9  |-  ( (
ph  /\  z  e.  Y )  ->  Ord  X )
3 simpr 110 . . . . . . . . . 10  |-  ( (
ph  /\  z  e.  Y )  ->  z  e.  Y )
4 tfrcllemres.yx . . . . . . . . . . 11  |-  ( ph  ->  Y  e.  X )
54adantr 276 . . . . . . . . . 10  |-  ( (
ph  /\  z  e.  Y )  ->  Y  e.  X )
63, 5jca 306 . . . . . . . . 9  |-  ( (
ph  /\  z  e.  Y )  ->  (
z  e.  Y  /\  Y  e.  X )
)
7 ordtr1 4453 . . . . . . . . 9  |-  ( Ord 
X  ->  ( (
z  e.  Y  /\  Y  e.  X )  ->  z  e.  X ) )
82, 6, 7sylc 62 . . . . . . . 8  |-  ( (
ph  /\  z  e.  Y )  ->  z  e.  X )
9 tfrcl.f . . . . . . . . 9  |-  F  = recs ( G )
10 tfrcl.g . . . . . . . . 9  |-  ( ph  ->  Fun  G )
11 tfrcl.ex . . . . . . . . 9  |-  ( (
ph  /\  x  e.  X  /\  f : x --> S )  ->  ( G `  f )  e.  S )
12 tfrcllemsucfn.1 . . . . . . . . 9  |-  A  =  { f  |  E. x  e.  X  (
f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y
) ) ) }
13 tfrcllemres.u . . . . . . . . 9  |-  ( (
ph  /\  x  e.  U. X )  ->  suc  x  e.  X )
149, 10, 1, 11, 12, 13tfrcllemaccex 6470 . . . . . . . 8  |-  ( (
ph  /\  z  e.  X )  ->  E. g
( g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )
158, 14syldan 282 . . . . . . 7  |-  ( (
ph  /\  z  e.  Y )  ->  E. g
( g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )
1610ad2antrr 488 . . . . . . . . 9  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  Fun  G )
171ad2antrr 488 . . . . . . . . 9  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  Ord  X )
18113adant1r 1234 . . . . . . . . . 10  |-  ( ( ( ph  /\  z  e.  Y )  /\  x  e.  X  /\  f : x --> S )  ->  ( G `  f )  e.  S
)
19183adant1r 1234 . . . . . . . . 9  |-  ( ( ( ( ph  /\  z  e.  Y )  /\  ( g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  /\  x  e.  X  /\  f : x --> S )  -> 
( G `  f
)  e.  S )
204ad2antrr 488 . . . . . . . . 9  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  Y  e.  X )
213adantr 276 . . . . . . . . 9  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  z  e.  Y )
2213adantlr 477 . . . . . . . . . 10  |-  ( ( ( ph  /\  z  e.  Y )  /\  x  e.  U. X )  ->  suc  x  e.  X )
2322adantlr 477 . . . . . . . . 9  |-  ( ( ( ( ph  /\  z  e.  Y )  /\  ( g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  /\  x  e. 
U. X )  ->  suc  x  e.  X )
24 simprl 529 . . . . . . . . 9  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  g :
z --> S )
25 feq2 5429 . . . . . . . . . . . . . 14  |-  ( x  =  z  ->  (
g : x --> S  <->  g :
z --> S ) )
26 raleq 2705 . . . . . . . . . . . . . 14  |-  ( x  =  z  ->  ( A. y  e.  x  ( g `  y
)  =  ( G `
 ( g  |`  y ) )  <->  A. y  e.  z  ( g `  y )  =  ( G `  ( g  |`  y ) ) ) )
2725, 26anbi12d 473 . . . . . . . . . . . . 13  |-  ( x  =  z  ->  (
( g : x --> S  /\  A. y  e.  x  ( g `  y )  =  ( G `  ( g  |`  y ) ) )  <-> 
( g : z --> S  /\  A. y  e.  z  ( g `  y )  =  ( G `  ( g  |`  y ) ) ) ) )
28 fveq2 5599 . . . . . . . . . . . . . . . 16  |-  ( y  =  u  ->  (
g `  y )  =  ( g `  u ) )
29 reseq2 4973 . . . . . . . . . . . . . . . . 17  |-  ( y  =  u  ->  (
g  |`  y )  =  ( g  |`  u
) )
3029fveq2d 5603 . . . . . . . . . . . . . . . 16  |-  ( y  =  u  ->  ( G `  ( g  |`  y ) )  =  ( G `  (
g  |`  u ) ) )
3128, 30eqeq12d 2222 . . . . . . . . . . . . . . 15  |-  ( y  =  u  ->  (
( g `  y
)  =  ( G `
 ( g  |`  y ) )  <->  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )
3231cbvralv 2742 . . . . . . . . . . . . . 14  |-  ( A. y  e.  z  (
g `  y )  =  ( G `  ( g  |`  y
) )  <->  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) )
3332anbi2i 457 . . . . . . . . . . . . 13  |-  ( ( g : z --> S  /\  A. y  e.  z  ( g `  y )  =  ( G `  ( g  |`  y ) ) )  <-> 
( g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )
3427, 33bitrdi 196 . . . . . . . . . . . 12  |-  ( x  =  z  ->  (
( g : x --> S  /\  A. y  e.  x  ( g `  y )  =  ( G `  ( g  |`  y ) ) )  <-> 
( g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) ) )
3534rspcev 2884 . . . . . . . . . . 11  |-  ( ( z  e.  X  /\  ( g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  E. x  e.  X  ( g : x --> S  /\  A. y  e.  x  ( g `  y )  =  ( G `  ( g  |`  y
) ) ) )
368, 35sylan 283 . . . . . . . . . 10  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  E. x  e.  X  ( g : x --> S  /\  A. y  e.  x  ( g `  y )  =  ( G `  ( g  |`  y
) ) ) )
37 vex 2779 . . . . . . . . . . 11  |-  g  e. 
_V
38 feq1 5428 . . . . . . . . . . . . 13  |-  ( f  =  g  ->  (
f : x --> S  <->  g :
x --> S ) )
39 fveq1 5598 . . . . . . . . . . . . . . 15  |-  ( f  =  g  ->  (
f `  y )  =  ( g `  y ) )
40 reseq1 4972 . . . . . . . . . . . . . . . 16  |-  ( f  =  g  ->  (
f  |`  y )  =  ( g  |`  y
) )
4140fveq2d 5603 . . . . . . . . . . . . . . 15  |-  ( f  =  g  ->  ( G `  ( f  |`  y ) )  =  ( G `  (
g  |`  y ) ) )
4239, 41eqeq12d 2222 . . . . . . . . . . . . . 14  |-  ( f  =  g  ->  (
( f `  y
)  =  ( G `
 ( f  |`  y ) )  <->  ( g `  y )  =  ( G `  ( g  |`  y ) ) ) )
4342ralbidv 2508 . . . . . . . . . . . . 13  |-  ( f  =  g  ->  ( A. y  e.  x  ( f `  y
)  =  ( G `
 ( f  |`  y ) )  <->  A. y  e.  x  ( g `  y )  =  ( G `  ( g  |`  y ) ) ) )
4438, 43anbi12d 473 . . . . . . . . . . . 12  |-  ( f  =  g  ->  (
( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) )  <-> 
( g : x --> S  /\  A. y  e.  x  ( g `  y )  =  ( G `  ( g  |`  y ) ) ) ) )
4544rexbidv 2509 . . . . . . . . . . 11  |-  ( f  =  g  ->  ( E. x  e.  X  ( f : x --> S  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  y ) ) )  <->  E. x  e.  X  ( g : x --> S  /\  A. y  e.  x  ( g `  y )  =  ( G `  ( g  |`  y ) ) ) ) )
4637, 45, 12elab2 2928 . . . . . . . . . 10  |-  ( g  e.  A  <->  E. x  e.  X  ( g : x --> S  /\  A. y  e.  x  ( g `  y )  =  ( G `  ( g  |`  y
) ) ) )
4736, 46sylibr 134 . . . . . . . . 9  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  g  e.  A )
489, 16, 17, 19, 12, 20, 21, 23, 24, 47tfrcllemsucaccv 6463 . . . . . . . 8  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  ( g  u.  { <. z ,  ( G `  g )
>. } )  e.  A
)
49 vex 2779 . . . . . . . . . . 11  |-  z  e. 
_V
5025imbi1d 231 . . . . . . . . . . . . . 14  |-  ( x  =  z  ->  (
( g : x --> S  ->  ( G `  g )  e.  S
)  <->  ( g : z --> S  ->  ( G `  g )  e.  S ) ) )
51113expia 1208 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  x  e.  X )  ->  (
f : x --> S  -> 
( G `  f
)  e.  S ) )
5251alrimiv 1898 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  x  e.  X )  ->  A. f
( f : x --> S  ->  ( G `  f )  e.  S
) )
53 fveq2 5599 . . . . . . . . . . . . . . . . . . . 20  |-  ( f  =  g  ->  ( G `  f )  =  ( G `  g ) )
5453eleq1d 2276 . . . . . . . . . . . . . . . . . . 19  |-  ( f  =  g  ->  (
( G `  f
)  e.  S  <->  ( G `  g )  e.  S
) )
5538, 54imbi12d 234 . . . . . . . . . . . . . . . . . 18  |-  ( f  =  g  ->  (
( f : x --> S  ->  ( G `  f )  e.  S
)  <->  ( g : x --> S  ->  ( G `  g )  e.  S ) ) )
5655spv 1884 . . . . . . . . . . . . . . . . 17  |-  ( A. f ( f : x --> S  ->  ( G `  f )  e.  S )  ->  (
g : x --> S  -> 
( G `  g
)  e.  S ) )
5752, 56syl 14 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  x  e.  X )  ->  (
g : x --> S  -> 
( G `  g
)  e.  S ) )
5857ralrimiva 2581 . . . . . . . . . . . . . . 15  |-  ( ph  ->  A. x  e.  X  ( g : x --> S  ->  ( G `  g )  e.  S
) )
5958adantr 276 . . . . . . . . . . . . . 14  |-  ( (
ph  /\  z  e.  Y )  ->  A. x  e.  X  ( g : x --> S  -> 
( G `  g
)  e.  S ) )
6050, 59, 8rspcdva 2889 . . . . . . . . . . . . 13  |-  ( (
ph  /\  z  e.  Y )  ->  (
g : z --> S  ->  ( G `  g )  e.  S
) )
6160imp 124 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  z  e.  Y )  /\  g : z --> S )  ->  ( G `  g )  e.  S
)
6224, 61syldan 282 . . . . . . . . . . 11  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  ( G `  g )  e.  S
)
63 opexg 4290 . . . . . . . . . . 11  |-  ( ( z  e.  _V  /\  ( G `  g )  e.  S )  ->  <. z ,  ( G `
 g ) >.  e.  _V )
6449, 62, 63sylancr 414 . . . . . . . . . 10  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  <. z ,  ( G `  g
) >.  e.  _V )
65 snidg 3672 . . . . . . . . . 10  |-  ( <.
z ,  ( G `
 g ) >.  e.  _V  ->  <. z ,  ( G `  g
) >.  e.  { <. z ,  ( G `  g ) >. } )
66 elun2 3349 . . . . . . . . . 10  |-  ( <.
z ,  ( G `
 g ) >.  e.  { <. z ,  ( G `  g )
>. }  ->  <. z ,  ( G `  g
) >.  e.  ( g  u.  { <. z ,  ( G `  g ) >. } ) )
6764, 65, 663syl 17 . . . . . . . . 9  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  <. z ,  ( G `  g
) >.  e.  ( g  u.  { <. z ,  ( G `  g ) >. } ) )
68 opeldmg 4902 . . . . . . . . . 10  |-  ( ( z  e.  _V  /\  ( G `  g )  e.  S )  -> 
( <. z ,  ( G `  g )
>.  e.  ( g  u. 
{ <. z ,  ( G `  g )
>. } )  ->  z  e.  dom  ( g  u. 
{ <. z ,  ( G `  g )
>. } ) ) )
6949, 62, 68sylancr 414 . . . . . . . . 9  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  ( <. z ,  ( G `  g ) >.  e.  ( g  u.  { <. z ,  ( G `  g ) >. } )  ->  z  e.  dom  ( g  u.  { <. z ,  ( G `
 g ) >. } ) ) )
7067, 69mpd 13 . . . . . . . 8  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  z  e.  dom  ( g  u.  { <. z ,  ( G `
 g ) >. } ) )
71 dmeq 4897 . . . . . . . . . 10  |-  ( h  =  ( g  u. 
{ <. z ,  ( G `  g )
>. } )  ->  dom  h  =  dom  ( g  u.  { <. z ,  ( G `  g ) >. } ) )
7271eleq2d 2277 . . . . . . . . 9  |-  ( h  =  ( g  u. 
{ <. z ,  ( G `  g )
>. } )  ->  (
z  e.  dom  h  <->  z  e.  dom  ( g  u.  { <. z ,  ( G `  g ) >. } ) ) )
7372rspcev 2884 . . . . . . . 8  |-  ( ( ( g  u.  { <. z ,  ( G `
 g ) >. } )  e.  A  /\  z  e.  dom  ( g  u.  { <. z ,  ( G `
 g ) >. } ) )  ->  E. h  e.  A  z  e.  dom  h )
7448, 70, 73syl2anc 411 . . . . . . 7  |-  ( ( ( ph  /\  z  e.  Y )  /\  (
g : z --> S  /\  A. u  e.  z  ( g `  u )  =  ( G `  ( g  |`  u ) ) ) )  ->  E. h  e.  A  z  e.  dom  h )
7515, 74exlimddv 1923 . . . . . 6  |-  ( (
ph  /\  z  e.  Y )  ->  E. h  e.  A  z  e.  dom  h )
76 eliun 3945 . . . . . 6  |-  ( z  e.  U_ h  e.  A  dom  h  <->  E. h  e.  A  z  e.  dom  h )
7775, 76sylibr 134 . . . . 5  |-  ( (
ph  /\  z  e.  Y )  ->  z  e.  U_ h  e.  A  dom  h )
7877ex 115 . . . 4  |-  ( ph  ->  ( z  e.  Y  ->  z  e.  U_ h  e.  A  dom  h ) )
7978ssrdv 3207 . . 3  |-  ( ph  ->  Y  C_  U_ h  e.  A  dom  h )
80 dmuni 4907 . . . 4  |-  dom  U. A  =  U_ h  e.  A  dom  h
8112, 1tfrcllemssrecs 6461 . . . . 5  |-  ( ph  ->  U. A  C_ recs ( G ) )
82 dmss 4896 . . . . 5  |-  ( U. A  C_ recs ( G )  ->  dom  U. A  C_  dom recs ( G ) )
8381, 82syl 14 . . . 4  |-  ( ph  ->  dom  U. A  C_  dom recs ( G ) )
8480, 83eqsstrrid 3248 . . 3  |-  ( ph  ->  U_ h  e.  A  dom  h  C_  dom recs ( G ) )
8579, 84sstrd 3211 . 2  |-  ( ph  ->  Y  C_  dom recs ( G ) )
869dmeqi 4898 . 2  |-  dom  F  =  dom recs ( G )
8785, 86sseqtrrdi 3250 1  |-  ( ph  ->  Y  C_  dom  F )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    /\ w3a 981   A.wal 1371    = wceq 1373   E.wex 1516    e. wcel 2178   {cab 2193   A.wral 2486   E.wrex 2487   _Vcvv 2776    u. cun 3172    C_ wss 3174   {csn 3643   <.cop 3646   U.cuni 3864   U_ciun 3941   Ord word 4427   suc csuc 4430   dom cdm 4693    |` cres 4695   Fun wfun 5284   -->wf 5286   ` cfv 5290  recscrecs 6413
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 615  ax-in2 616  ax-io 711  ax-5 1471  ax-7 1472  ax-gen 1473  ax-ie1 1517  ax-ie2 1518  ax-8 1528  ax-10 1529  ax-11 1530  ax-i12 1531  ax-bndl 1533  ax-4 1534  ax-17 1550  ax-i9 1554  ax-ial 1558  ax-i5r 1559  ax-13 2180  ax-14 2181  ax-ext 2189  ax-coll 4175  ax-sep 4178  ax-pow 4234  ax-pr 4269  ax-un 4498  ax-setind 4603
This theorem depends on definitions:  df-bi 117  df-3an 983  df-tru 1376  df-fal 1379  df-nf 1485  df-sb 1787  df-eu 2058  df-mo 2059  df-clab 2194  df-cleq 2200  df-clel 2203  df-nfc 2339  df-ne 2379  df-ral 2491  df-rex 2492  df-reu 2493  df-rab 2495  df-v 2778  df-sbc 3006  df-csb 3102  df-dif 3176  df-un 3178  df-in 3180  df-ss 3187  df-nul 3469  df-pw 3628  df-sn 3649  df-pr 3650  df-op 3652  df-uni 3865  df-iun 3943  df-br 4060  df-opab 4122  df-mpt 4123  df-tr 4159  df-id 4358  df-iord 4431  df-on 4433  df-suc 4436  df-xp 4699  df-rel 4700  df-cnv 4701  df-co 4702  df-dm 4703  df-rn 4704  df-res 4705  df-ima 4706  df-iota 5251  df-fun 5292  df-fn 5293  df-f 5294  df-f1 5295  df-fo 5296  df-f1o 5297  df-fv 5298  df-recs 6414
This theorem is referenced by:  tfrcldm  6472
  Copyright terms: Public domain W3C validator