MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  wfrlem14 Structured version   Visualization version   Unicode version

Theorem wfrlem14 7428
Description: Lemma for well-founded recursion. Compute the value of  C. (Contributed by Scott Fenton, 21-Apr-2011.)
Hypotheses
Ref Expression
wfrlem13.1  |-  R  We  A
wfrlem13.2  |-  R Se  A
wfrlem13.3  |-  F  = wrecs ( R ,  A ,  G )
wfrlem13.4  |-  C  =  ( F  u.  { <. z ,  ( G `
 ( F  |`  Pred ( R ,  A ,  z ) ) ) >. } )
Assertion
Ref Expression
wfrlem14  |-  ( z  e.  ( A  \  dom  F )  ->  (
y  e.  ( dom 
F  u.  { z } )  ->  ( C `  y )  =  ( G `  ( C  |`  Pred ( R ,  A , 
y ) ) ) ) )
Distinct variable groups:    y, A, z    y, F, z    y, G    y, R, z    y, C
Allowed substitution hints:    C( z)    G( z)

Proof of Theorem wfrlem14
StepHypRef Expression
1 wfrlem13.1 . . 3  |-  R  We  A
2 wfrlem13.2 . . 3  |-  R Se  A
3 wfrlem13.3 . . 3  |-  F  = wrecs ( R ,  A ,  G )
4 wfrlem13.4 . . 3  |-  C  =  ( F  u.  { <. z ,  ( G `
 ( F  |`  Pred ( R ,  A ,  z ) ) ) >. } )
51, 2, 3, 4wfrlem13 7427 . 2  |-  ( z  e.  ( A  \  dom  F )  ->  C  Fn  ( dom  F  u.  { z } ) )
6 elun 3753 . . . 4  |-  ( y  e.  ( dom  F  u.  { z } )  <-> 
( y  e.  dom  F  \/  y  e.  {
z } ) )
7 velsn 4193 . . . . 5  |-  ( y  e.  { z }  <-> 
y  =  z )
87orbi2i 541 . . . 4  |-  ( ( y  e.  dom  F  \/  y  e.  { z } )  <->  ( y  e.  dom  F  \/  y  =  z ) )
96, 8bitri 264 . . 3  |-  ( y  e.  ( dom  F  u.  { z } )  <-> 
( y  e.  dom  F  \/  y  =  z ) )
101, 2, 3wfrlem12 7426 . . . . . . 7  |-  ( y  e.  dom  F  -> 
( F `  y
)  =  ( G `
 ( F  |`  Pred ( R ,  A ,  y ) ) ) )
11 fnfun 5988 . . . . . . . 8  |-  ( C  Fn  ( dom  F  u.  { z } )  ->  Fun  C )
12 ssun1 3776 . . . . . . . . . 10  |-  F  C_  ( F  u.  { <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. } )
1312, 4sseqtr4i 3638 . . . . . . . . 9  |-  F  C_  C
14 funssfv 6209 . . . . . . . . . 10  |-  ( ( Fun  C  /\  F  C_  C  /\  y  e. 
dom  F )  -> 
( C `  y
)  =  ( F `
 y ) )
153wfrdmcl 7423 . . . . . . . . . . . 12  |-  ( y  e.  dom  F  ->  Pred ( R ,  A ,  y )  C_  dom  F )
16 fun2ssres 5931 . . . . . . . . . . . 12  |-  ( ( Fun  C  /\  F  C_  C  /\  Pred ( R ,  A , 
y )  C_  dom  F )  ->  ( C  |` 
Pred ( R ,  A ,  y )
)  =  ( F  |`  Pred ( R ,  A ,  y )
) )
1715, 16syl3an3 1361 . . . . . . . . . . 11  |-  ( ( Fun  C  /\  F  C_  C  /\  y  e. 
dom  F )  -> 
( C  |`  Pred ( R ,  A , 
y ) )  =  ( F  |`  Pred ( R ,  A , 
y ) ) )
1817fveq2d 6195 . . . . . . . . . 10  |-  ( ( Fun  C  /\  F  C_  C  /\  y  e. 
dom  F )  -> 
( G `  ( C  |`  Pred ( R ,  A ,  y )
) )  =  ( G `  ( F  |`  Pred ( R ,  A ,  y )
) ) )
1914, 18eqeq12d 2637 . . . . . . . . 9  |-  ( ( Fun  C  /\  F  C_  C  /\  y  e. 
dom  F )  -> 
( ( C `  y )  =  ( G `  ( C  |`  Pred ( R ,  A ,  y )
) )  <->  ( F `  y )  =  ( G `  ( F  |`  Pred ( R ,  A ,  y )
) ) ) )
2013, 19mp3an2 1412 . . . . . . . 8  |-  ( ( Fun  C  /\  y  e.  dom  F )  -> 
( ( C `  y )  =  ( G `  ( C  |`  Pred ( R ,  A ,  y )
) )  <->  ( F `  y )  =  ( G `  ( F  |`  Pred ( R ,  A ,  y )
) ) ) )
2111, 20sylan 488 . . . . . . 7  |-  ( ( C  Fn  ( dom 
F  u.  { z } )  /\  y  e.  dom  F )  -> 
( ( C `  y )  =  ( G `  ( C  |`  Pred ( R ,  A ,  y )
) )  <->  ( F `  y )  =  ( G `  ( F  |`  Pred ( R ,  A ,  y )
) ) ) )
2210, 21syl5ibr 236 . . . . . 6  |-  ( ( C  Fn  ( dom 
F  u.  { z } )  /\  y  e.  dom  F )  -> 
( y  e.  dom  F  ->  ( C `  y )  =  ( G `  ( C  |`  Pred ( R ,  A ,  y )
) ) ) )
2322ex 450 . . . . 5  |-  ( C  Fn  ( dom  F  u.  { z } )  ->  ( y  e. 
dom  F  ->  ( y  e.  dom  F  -> 
( C `  y
)  =  ( G `
 ( C  |`  Pred ( R ,  A ,  y ) ) ) ) ) )
2423pm2.43d 53 . . . 4  |-  ( C  Fn  ( dom  F  u.  { z } )  ->  ( y  e. 
dom  F  ->  ( C `
 y )  =  ( G `  ( C  |`  Pred ( R ,  A ,  y )
) ) ) )
25 vsnid 4209 . . . . . . 7  |-  z  e. 
{ z }
26 elun2 3781 . . . . . . 7  |-  ( z  e.  { z }  ->  z  e.  ( dom  F  u.  {
z } ) )
2725, 26ax-mp 5 . . . . . 6  |-  z  e.  ( dom  F  u.  { z } )
284reseq1i 5392 . . . . . . . . . . . . 13  |-  ( C  |`  Pred ( R ,  A ,  z )
)  =  ( ( F  u.  { <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. } )  |`  Pred ( R ,  A , 
z ) )
29 resundir 5411 . . . . . . . . . . . . 13  |-  ( ( F  u.  { <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. } )  |`  Pred ( R ,  A , 
z ) )  =  ( ( F  |`  Pred ( R ,  A ,  z ) )  u.  ( { <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. }  |`  Pred ( R ,  A ,  z ) ) )
30 wefr 5104 . . . . . . . . . . . . . . . . 17  |-  ( R  We  A  ->  R  Fr  A )
311, 30ax-mp 5 . . . . . . . . . . . . . . . 16  |-  R  Fr  A
32 predfrirr 5709 . . . . . . . . . . . . . . . 16  |-  ( R  Fr  A  ->  -.  z  e.  Pred ( R ,  A ,  z ) )
33 ressnop0 6420 . . . . . . . . . . . . . . . 16  |-  ( -.  z  e.  Pred ( R ,  A , 
z )  ->  ( { <. z ,  ( G `  ( F  |`  Pred ( R ,  A ,  z )
) ) >. }  |`  Pred ( R ,  A , 
z ) )  =  (/) )
3431, 32, 33mp2b 10 . . . . . . . . . . . . . . 15  |-  ( {
<. z ,  ( G `
 ( F  |`  Pred ( R ,  A ,  z ) ) ) >. }  |`  Pred ( R ,  A , 
z ) )  =  (/)
3534uneq2i 3764 . . . . . . . . . . . . . 14  |-  ( ( F  |`  Pred ( R ,  A ,  z ) )  u.  ( { <. z ,  ( G `  ( F  |`  Pred ( R ,  A ,  z )
) ) >. }  |`  Pred ( R ,  A , 
z ) ) )  =  ( ( F  |`  Pred ( R ,  A ,  z )
)  u.  (/) )
36 un0 3967 . . . . . . . . . . . . . 14  |-  ( ( F  |`  Pred ( R ,  A ,  z ) )  u.  (/) )  =  ( F  |`  Pred ( R ,  A , 
z ) )
3735, 36eqtri 2644 . . . . . . . . . . . . 13  |-  ( ( F  |`  Pred ( R ,  A ,  z ) )  u.  ( { <. z ,  ( G `  ( F  |`  Pred ( R ,  A ,  z )
) ) >. }  |`  Pred ( R ,  A , 
z ) ) )  =  ( F  |`  Pred ( R ,  A ,  z ) )
3828, 29, 373eqtri 2648 . . . . . . . . . . . 12  |-  ( C  |`  Pred ( R ,  A ,  z )
)  =  ( F  |`  Pred ( R ,  A ,  z )
)
3938fveq2i 6194 . . . . . . . . . . 11  |-  ( G `
 ( C  |`  Pred ( R ,  A ,  z ) ) )  =  ( G `
 ( F  |`  Pred ( R ,  A ,  z ) ) )
4039opeq2i 4406 . . . . . . . . . 10  |-  <. z ,  ( G `  ( C  |`  Pred ( R ,  A , 
z ) ) )
>.  =  <. z ,  ( G `  ( F  |`  Pred ( R ,  A ,  z )
) ) >.
41 opex 4932 . . . . . . . . . . 11  |-  <. z ,  ( G `  ( C  |`  Pred ( R ,  A , 
z ) ) )
>.  e.  _V
4241elsn 4192 . . . . . . . . . 10  |-  ( <.
z ,  ( G `
 ( C  |`  Pred ( R ,  A ,  z ) ) ) >.  e.  { <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. }  <->  <. z ,  ( G `  ( C  |`  Pred ( R ,  A ,  z )
) ) >.  =  <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. )
4340, 42mpbir 221 . . . . . . . . 9  |-  <. z ,  ( G `  ( C  |`  Pred ( R ,  A , 
z ) ) )
>.  e.  { <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. }
44 elun2 3781 . . . . . . . . 9  |-  ( <.
z ,  ( G `
 ( C  |`  Pred ( R ,  A ,  z ) ) ) >.  e.  { <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. }  ->  <. z ,  ( G `  ( C  |`  Pred ( R ,  A ,  z )
) ) >.  e.  ( F  u.  { <. z ,  ( G `  ( F  |`  Pred ( R ,  A , 
z ) ) )
>. } ) )
4543, 44ax-mp 5 . . . . . . . 8  |-  <. z ,  ( G `  ( C  |`  Pred ( R ,  A , 
z ) ) )
>.  e.  ( F  u.  {
<. z ,  ( G `
 ( F  |`  Pred ( R ,  A ,  z ) ) ) >. } )
4645, 4eleqtrri 2700 . . . . . . 7  |-  <. z ,  ( G `  ( C  |`  Pred ( R ,  A , 
z ) ) )
>.  e.  C
47 fnopfvb 6237 . . . . . . 7  |-  ( ( C  Fn  ( dom 
F  u.  { z } )  /\  z  e.  ( dom  F  u.  { z } ) )  ->  ( ( C `
 z )  =  ( G `  ( C  |`  Pred ( R ,  A ,  z )
) )  <->  <. z ,  ( G `  ( C  |`  Pred ( R ,  A ,  z )
) ) >.  e.  C
) )
4846, 47mpbiri 248 . . . . . 6  |-  ( ( C  Fn  ( dom 
F  u.  { z } )  /\  z  e.  ( dom  F  u.  { z } ) )  ->  ( C `  z )  =  ( G `  ( C  |`  Pred ( R ,  A ,  z )
) ) )
4927, 48mpan2 707 . . . . 5  |-  ( C  Fn  ( dom  F  u.  { z } )  ->  ( C `  z )  =  ( G `  ( C  |`  Pred ( R ,  A ,  z )
) ) )
50 fveq2 6191 . . . . . 6  |-  ( y  =  z  ->  ( C `  y )  =  ( C `  z ) )
51 predeq3 5684 . . . . . . . 8  |-  ( y  =  z  ->  Pred ( R ,  A , 
y )  =  Pred ( R ,  A , 
z ) )
5251reseq2d 5396 . . . . . . 7  |-  ( y  =  z  ->  ( C  |`  Pred ( R ,  A ,  y )
)  =  ( C  |`  Pred ( R ,  A ,  z )
) )
5352fveq2d 6195 . . . . . 6  |-  ( y  =  z  ->  ( G `  ( C  |` 
Pred ( R ,  A ,  y )
) )  =  ( G `  ( C  |`  Pred ( R ,  A ,  z )
) ) )
5450, 53eqeq12d 2637 . . . . 5  |-  ( y  =  z  ->  (
( C `  y
)  =  ( G `
 ( C  |`  Pred ( R ,  A ,  y ) ) )  <->  ( C `  z )  =  ( G `  ( C  |`  Pred ( R ,  A ,  z )
) ) ) )
5549, 54syl5ibrcom 237 . . . 4  |-  ( C  Fn  ( dom  F  u.  { z } )  ->  ( y  =  z  ->  ( C `  y )  =  ( G `  ( C  |`  Pred ( R ,  A ,  y )
) ) ) )
5624, 55jaod 395 . . 3  |-  ( C  Fn  ( dom  F  u.  { z } )  ->  ( ( y  e.  dom  F  \/  y  =  z )  ->  ( C `  y
)  =  ( G `
 ( C  |`  Pred ( R ,  A ,  y ) ) ) ) )
579, 56syl5bi 232 . 2  |-  ( C  Fn  ( dom  F  u.  { z } )  ->  ( y  e.  ( dom  F  u.  { z } )  -> 
( C `  y
)  =  ( G `
 ( C  |`  Pred ( R ,  A ,  y ) ) ) ) )
585, 57syl 17 1  |-  ( z  e.  ( A  \  dom  F )  ->  (
y  e.  ( dom 
F  u.  { z } )  ->  ( C `  y )  =  ( G `  ( C  |`  Pred ( R ,  A , 
y ) ) ) ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 196    \/ wo 383    /\ wa 384    /\ w3a 1037    = wceq 1483    e. wcel 1990    \ cdif 3571    u. cun 3572    C_ wss 3574   (/)c0 3915   {csn 4177   <.cop 4183    Fr wfr 5070   Se wse 5071    We wwe 5072   dom cdm 5114    |` cres 5116   Predcpred 5679   Fun wfun 5882    Fn wfn 5883   ` cfv 5888  wrecscwrecs 7406
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-sn 4178  df-pr 4180  df-op 4184  df-uni 4437  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-id 5024  df-po 5035  df-so 5036  df-fr 5073  df-se 5074  df-we 5075  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-pred 5680  df-iota 5851  df-fun 5890  df-fn 5891  df-fv 5896  df-wrecs 7407
This theorem is referenced by:  wfrlem15  7429
  Copyright terms: Public domain W3C validator