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

Theorem wfrfun 7425
Description: The well-founded function generator generates a function. (Contributed by Scott Fenton, 21-Apr-2011.) (Revised by Mario Carneiro, 26-Jun-2015.)
Hypotheses
Ref Expression
wfrfun.1  |-  R  We  A
wfrfun.2  |-  R Se  A
wfrfun.3  |-  F  = wrecs ( R ,  A ,  G )
Assertion
Ref Expression
wfrfun  |-  Fun  F

Proof of Theorem wfrfun
Dummy variables  f 
g  h  u  v  x  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 wfrfun.3 . . 3  |-  F  = wrecs ( R ,  A ,  G )
21wfrrel 7420 . 2  |-  Rel  F
3 df-wrecs 7407 . . . . . . . . . . 11  |- wrecs ( R ,  A ,  G
)  =  U. {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) }
41, 3eqtri 2644 . . . . . . . . . 10  |-  F  = 
U. { f  |  E. x ( f  Fn  x  /\  (
x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) }
54eleq2i 2693 . . . . . . . . 9  |-  ( <.
x ,  u >.  e.  F  <->  <. x ,  u >.  e.  U. { f  |  E. x ( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )
6 eluni 4439 . . . . . . . . 9  |-  ( <.
x ,  u >.  e. 
U. { f  |  E. x ( f  Fn  x  /\  (
x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) }  <->  E. g ( <. x ,  u >.  e.  g  /\  g  e.  { f  |  E. x ( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) )
75, 6bitri 264 . . . . . . . 8  |-  ( <.
x ,  u >.  e.  F  <->  E. g ( <.
x ,  u >.  e.  g  /\  g  e. 
{ f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) )
8 df-br 4654 . . . . . . . 8  |-  ( x F u  <->  <. x ,  u >.  e.  F
)
9 df-br 4654 . . . . . . . . . 10  |-  ( x g u  <->  <. x ,  u >.  e.  g
)
109anbi1i 731 . . . . . . . . 9  |-  ( ( x g u  /\  g  e.  { f  |  E. x ( f  Fn  x  /\  (
x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )  <->  ( <. x ,  u >.  e.  g  /\  g  e.  { f  |  E. x ( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) )
1110exbii 1774 . . . . . . . 8  |-  ( E. g ( x g u  /\  g  e. 
{ f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )  <->  E. g ( <.
x ,  u >.  e.  g  /\  g  e. 
{ f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) )
127, 8, 113bitr4i 292 . . . . . . 7  |-  ( x F u  <->  E. g
( x g u  /\  g  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } ) )
134eleq2i 2693 . . . . . . . . 9  |-  ( <.
x ,  v >.  e.  F  <->  <. x ,  v
>.  e.  U. { f  |  E. x ( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )
14 eluni 4439 . . . . . . . . 9  |-  ( <.
x ,  v >.  e.  U. { f  |  E. x ( f  Fn  x  /\  (
x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) }  <->  E. h ( <. x ,  v >.  e.  h  /\  h  e.  { f  |  E. x ( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) )
1513, 14bitri 264 . . . . . . . 8  |-  ( <.
x ,  v >.  e.  F  <->  E. h ( <.
x ,  v >.  e.  h  /\  h  e.  { f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) )
16 df-br 4654 . . . . . . . 8  |-  ( x F v  <->  <. x ,  v >.  e.  F
)
17 df-br 4654 . . . . . . . . . 10  |-  ( x h v  <->  <. x ,  v >.  e.  h
)
1817anbi1i 731 . . . . . . . . 9  |-  ( ( x h v  /\  h  e.  { f  |  E. x ( f  Fn  x  /\  (
x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )  <->  ( <. x ,  v >.  e.  h  /\  h  e.  { f  |  E. x ( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) )
1918exbii 1774 . . . . . . . 8  |-  ( E. h ( x h v  /\  h  e. 
{ f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )  <->  E. h ( <.
x ,  v >.  e.  h  /\  h  e.  { f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) )
2015, 16, 193bitr4i 292 . . . . . . 7  |-  ( x F v  <->  E. h
( x h v  /\  h  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } ) )
2112, 20anbi12i 733 . . . . . 6  |-  ( ( x F u  /\  x F v )  <->  ( E. g ( x g u  /\  g  e. 
{ f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )  /\  E. h
( x h v  /\  h  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } ) ) )
22 eeanv 2182 . . . . . 6  |-  ( E. g E. h ( ( x g u  /\  g  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } )  /\  ( x h v  /\  h  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } ) )  <-> 
( E. g ( x g u  /\  g  e.  { f  |  E. x ( f  Fn  x  /\  (
x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )  /\  E. h
( x h v  /\  h  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } ) ) )
2321, 22bitr4i 267 . . . . 5  |-  ( ( x F u  /\  x F v )  <->  E. g E. h ( ( x g u  /\  g  e.  { f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } )  /\  ( x h v  /\  h  e.  { f  |  E. x ( f  Fn  x  /\  ( x 
C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) } ) ) )
24 wfrfun.1 . . . . . . . . 9  |-  R  We  A
25 wfrfun.2 . . . . . . . . 9  |-  R Se  A
26 eqid 2622 . . . . . . . . 9  |-  { f  |  E. x ( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) }  =  { f  |  E. x ( f  Fn  x  /\  (
x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) }
2724, 25, 26wfrlem5 7419 . . . . . . . 8  |-  ( ( g  e.  { f  |  E. x ( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) }  /\  h  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } )  -> 
( ( x g u  /\  x h v )  ->  u  =  v ) )
2827impcom 446 . . . . . . 7  |-  ( ( ( x g u  /\  x h v )  /\  ( g  e.  { f  |  E. x ( f  Fn  x  /\  (
x  C_  A  /\  A. y  e.  x  Pred ( R ,  A , 
y )  C_  x
)  /\  A. y  e.  x  ( f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A ,  y )
) ) ) }  /\  h  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } ) )  ->  u  =  v )
2928an4s 869 . . . . . 6  |-  ( ( ( x g u  /\  g  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } )  /\  ( x h v  /\  h  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } ) )  ->  u  =  v )
3029exlimivv 1860 . . . . 5  |-  ( E. g E. h ( ( x g u  /\  g  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } )  /\  ( x h v  /\  h  e.  {
f  |  E. x
( f  Fn  x  /\  ( x  C_  A  /\  A. y  e.  x  Pred ( R ,  A ,  y )  C_  x )  /\  A. y  e.  x  (
f `  y )  =  ( G `  ( f  |`  Pred ( R ,  A , 
y ) ) ) ) } ) )  ->  u  =  v )
3123, 30sylbi 207 . . . 4  |-  ( ( x F u  /\  x F v )  ->  u  =  v )
3231ax-gen 1722 . . 3  |-  A. v
( ( x F u  /\  x F v )  ->  u  =  v )
3332gen2 1723 . 2  |-  A. x A. u A. v ( ( x F u  /\  x F v )  ->  u  =  v )
34 dffun2 5898 . 2  |-  ( Fun 
F  <->  ( Rel  F  /\  A. x A. u A. v ( ( x F u  /\  x F v )  ->  u  =  v )
) )
352, 33, 34mpbir2an 955 1  |-  Fun  F
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 384    /\ w3a 1037   A.wal 1481    = wceq 1483   E.wex 1704    e. wcel 1990   {cab 2608   A.wral 2912    C_ wss 3574   <.cop 4183   U.cuni 4436   class class class wbr 4653   Se wse 5071    We wwe 5072    |` cres 5116   Rel wrel 5119   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:  wfrlem12  7426  wfrlem13  7427  wfrlem17  7431  wfr1  7433  bpolylem  14779
  Copyright terms: Public domain W3C validator