This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Lemma for well-founded recursion. The final item we are interested in is the union of acceptable functions B . This lemma just changes bound variables for later use. (Contributed by Paul Chapman, 21-Apr-2012)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | frrlem1.1 | |- B = { 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 ) = ( y G ( f |` Pred ( R , A , y ) ) ) ) } |
|
| Assertion | frrlem1 | |- B = { g | E. z ( g Fn z /\ ( z C_ A /\ A. w e. z Pred ( R , A , w ) C_ z ) /\ A. w e. z ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) } |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | frrlem1.1 | |- B = { 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 ) = ( y G ( f |` Pred ( R , A , y ) ) ) ) } |
|
| 2 | fneq1 | |- ( f = g -> ( f Fn x <-> g Fn x ) ) |
|
| 3 | fveq1 | |- ( f = g -> ( f ` y ) = ( g ` y ) ) |
|
| 4 | reseq1 | |- ( f = g -> ( f |` Pred ( R , A , y ) ) = ( g |` Pred ( R , A , y ) ) ) |
|
| 5 | 4 | oveq2d | |- ( f = g -> ( y G ( f |` Pred ( R , A , y ) ) ) = ( y G ( g |` Pred ( R , A , y ) ) ) ) |
| 6 | 3 5 | eqeq12d | |- ( f = g -> ( ( f ` y ) = ( y G ( f |` Pred ( R , A , y ) ) ) <-> ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) ) ) |
| 7 | 6 | ralbidv | |- ( f = g -> ( A. y e. x ( f ` y ) = ( y G ( f |` Pred ( R , A , y ) ) ) <-> A. y e. x ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) ) ) |
| 8 | 2 7 | 3anbi13d | |- ( f = g -> ( ( f Fn x /\ ( x C_ A /\ A. y e. x Pred ( R , A , y ) C_ x ) /\ A. y e. x ( f ` y ) = ( y G ( f |` Pred ( R , A , y ) ) ) ) <-> ( g Fn x /\ ( x C_ A /\ A. y e. x Pred ( R , A , y ) C_ x ) /\ A. y e. x ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) ) ) ) |
| 9 | 8 | exbidv | |- ( f = g -> ( E. x ( f Fn x /\ ( x C_ A /\ A. y e. x Pred ( R , A , y ) C_ x ) /\ A. y e. x ( f ` y ) = ( y G ( f |` Pred ( R , A , y ) ) ) ) <-> E. x ( g Fn x /\ ( x C_ A /\ A. y e. x Pred ( R , A , y ) C_ x ) /\ A. y e. x ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) ) ) ) |
| 10 | fneq2 | |- ( x = z -> ( g Fn x <-> g Fn z ) ) |
|
| 11 | sseq1 | |- ( x = z -> ( x C_ A <-> z C_ A ) ) |
|
| 12 | sseq2 | |- ( x = z -> ( Pred ( R , A , y ) C_ x <-> Pred ( R , A , y ) C_ z ) ) |
|
| 13 | 12 | raleqbi1dv | |- ( x = z -> ( A. y e. x Pred ( R , A , y ) C_ x <-> A. y e. z Pred ( R , A , y ) C_ z ) ) |
| 14 | predeq3 | |- ( y = w -> Pred ( R , A , y ) = Pred ( R , A , w ) ) |
|
| 15 | 14 | sseq1d | |- ( y = w -> ( Pred ( R , A , y ) C_ z <-> Pred ( R , A , w ) C_ z ) ) |
| 16 | 15 | cbvralvw | |- ( A. y e. z Pred ( R , A , y ) C_ z <-> A. w e. z Pred ( R , A , w ) C_ z ) |
| 17 | 13 16 | bitrdi | |- ( x = z -> ( A. y e. x Pred ( R , A , y ) C_ x <-> A. w e. z Pred ( R , A , w ) C_ z ) ) |
| 18 | 11 17 | anbi12d | |- ( x = z -> ( ( x C_ A /\ A. y e. x Pred ( R , A , y ) C_ x ) <-> ( z C_ A /\ A. w e. z Pred ( R , A , w ) C_ z ) ) ) |
| 19 | raleq | |- ( x = z -> ( A. y e. x ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) <-> A. y e. z ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) ) ) |
|
| 20 | fveq2 | |- ( y = w -> ( g ` y ) = ( g ` w ) ) |
|
| 21 | id | |- ( y = w -> y = w ) |
|
| 22 | 14 | reseq2d | |- ( y = w -> ( g |` Pred ( R , A , y ) ) = ( g |` Pred ( R , A , w ) ) ) |
| 23 | 21 22 | oveq12d | |- ( y = w -> ( y G ( g |` Pred ( R , A , y ) ) ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) |
| 24 | 20 23 | eqeq12d | |- ( y = w -> ( ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) <-> ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) ) |
| 25 | 24 | cbvralvw | |- ( A. y e. z ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) <-> A. w e. z ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) |
| 26 | 19 25 | bitrdi | |- ( x = z -> ( A. y e. x ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) <-> A. w e. z ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) ) |
| 27 | 10 18 26 | 3anbi123d | |- ( x = z -> ( ( g Fn x /\ ( x C_ A /\ A. y e. x Pred ( R , A , y ) C_ x ) /\ A. y e. x ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) ) <-> ( g Fn z /\ ( z C_ A /\ A. w e. z Pred ( R , A , w ) C_ z ) /\ A. w e. z ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) ) ) |
| 28 | 27 | cbvexvw | |- ( E. x ( g Fn x /\ ( x C_ A /\ A. y e. x Pred ( R , A , y ) C_ x ) /\ A. y e. x ( g ` y ) = ( y G ( g |` Pred ( R , A , y ) ) ) ) <-> E. z ( g Fn z /\ ( z C_ A /\ A. w e. z Pred ( R , A , w ) C_ z ) /\ A. w e. z ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) ) |
| 29 | 9 28 | bitrdi | |- ( f = g -> ( E. x ( f Fn x /\ ( x C_ A /\ A. y e. x Pred ( R , A , y ) C_ x ) /\ A. y e. x ( f ` y ) = ( y G ( f |` Pred ( R , A , y ) ) ) ) <-> E. z ( g Fn z /\ ( z C_ A /\ A. w e. z Pred ( R , A , w ) C_ z ) /\ A. w e. z ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) ) ) |
| 30 | 29 | cbvabv | |- { 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 ) = ( y G ( f |` Pred ( R , A , y ) ) ) ) } = { g | E. z ( g Fn z /\ ( z C_ A /\ A. w e. z Pred ( R , A , w ) C_ z ) /\ A. w e. z ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) } |
| 31 | 1 30 | eqtri | |- B = { g | E. z ( g Fn z /\ ( z C_ A /\ A. w e. z Pred ( R , A , w ) C_ z ) /\ A. w e. z ( g ` w ) = ( w G ( g |` Pred ( R , A , w ) ) ) ) } |