This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: A version of ac6 which takes the choice as a hypothesis. (Contributed by Mario Carneiro, 27-Aug-2015)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | ac6num.1 | |- ( y = ( f ` x ) -> ( ph <-> ps ) ) |
|
| Assertion | ac6num | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> E. f ( f : A --> B /\ A. x e. A ps ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | ac6num.1 | |- ( y = ( f ` x ) -> ( ph <-> ps ) ) |
|
| 2 | nfiu1 | |- F/_ x U_ x e. A { y e. B | ph } |
|
| 3 | 2 | nfel1 | |- F/ x U_ x e. A { y e. B | ph } e. dom card |
| 4 | ssiun2 | |- ( x e. A -> { y e. B | ph } C_ U_ x e. A { y e. B | ph } ) |
|
| 5 | ssexg | |- ( ( { y e. B | ph } C_ U_ x e. A { y e. B | ph } /\ U_ x e. A { y e. B | ph } e. dom card ) -> { y e. B | ph } e. _V ) |
|
| 6 | 5 | expcom | |- ( U_ x e. A { y e. B | ph } e. dom card -> ( { y e. B | ph } C_ U_ x e. A { y e. B | ph } -> { y e. B | ph } e. _V ) ) |
| 7 | 4 6 | syl5 | |- ( U_ x e. A { y e. B | ph } e. dom card -> ( x e. A -> { y e. B | ph } e. _V ) ) |
| 8 | 3 7 | ralrimi | |- ( U_ x e. A { y e. B | ph } e. dom card -> A. x e. A { y e. B | ph } e. _V ) |
| 9 | dfiun2g | |- ( A. x e. A { y e. B | ph } e. _V -> U_ x e. A { y e. B | ph } = U. { z | E. x e. A z = { y e. B | ph } } ) |
|
| 10 | 8 9 | syl | |- ( U_ x e. A { y e. B | ph } e. dom card -> U_ x e. A { y e. B | ph } = U. { z | E. x e. A z = { y e. B | ph } } ) |
| 11 | eqid | |- ( x e. A |-> { y e. B | ph } ) = ( x e. A |-> { y e. B | ph } ) |
|
| 12 | 11 | rnmpt | |- ran ( x e. A |-> { y e. B | ph } ) = { z | E. x e. A z = { y e. B | ph } } |
| 13 | 12 | unieqi | |- U. ran ( x e. A |-> { y e. B | ph } ) = U. { z | E. x e. A z = { y e. B | ph } } |
| 14 | 10 13 | eqtr4di | |- ( U_ x e. A { y e. B | ph } e. dom card -> U_ x e. A { y e. B | ph } = U. ran ( x e. A |-> { y e. B | ph } ) ) |
| 15 | id | |- ( U_ x e. A { y e. B | ph } e. dom card -> U_ x e. A { y e. B | ph } e. dom card ) |
|
| 16 | 14 15 | eqeltrrd | |- ( U_ x e. A { y e. B | ph } e. dom card -> U. ran ( x e. A |-> { y e. B | ph } ) e. dom card ) |
| 17 | 16 | 3ad2ant2 | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> U. ran ( x e. A |-> { y e. B | ph } ) e. dom card ) |
| 18 | simp3 | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> A. x e. A E. y e. B ph ) |
|
| 19 | necom | |- ( { y e. B | ph } =/= (/) <-> (/) =/= { y e. B | ph } ) |
|
| 20 | rabn0 | |- ( { y e. B | ph } =/= (/) <-> E. y e. B ph ) |
|
| 21 | df-ne | |- ( (/) =/= { y e. B | ph } <-> -. (/) = { y e. B | ph } ) |
|
| 22 | 19 20 21 | 3bitr3i | |- ( E. y e. B ph <-> -. (/) = { y e. B | ph } ) |
| 23 | 22 | ralbii | |- ( A. x e. A E. y e. B ph <-> A. x e. A -. (/) = { y e. B | ph } ) |
| 24 | ralnex | |- ( A. x e. A -. (/) = { y e. B | ph } <-> -. E. x e. A (/) = { y e. B | ph } ) |
|
| 25 | 23 24 | bitri | |- ( A. x e. A E. y e. B ph <-> -. E. x e. A (/) = { y e. B | ph } ) |
| 26 | 18 25 | sylib | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> -. E. x e. A (/) = { y e. B | ph } ) |
| 27 | 0ex | |- (/) e. _V |
|
| 28 | 11 | elrnmpt | |- ( (/) e. _V -> ( (/) e. ran ( x e. A |-> { y e. B | ph } ) <-> E. x e. A (/) = { y e. B | ph } ) ) |
| 29 | 27 28 | ax-mp | |- ( (/) e. ran ( x e. A |-> { y e. B | ph } ) <-> E. x e. A (/) = { y e. B | ph } ) |
| 30 | 26 29 | sylnibr | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> -. (/) e. ran ( x e. A |-> { y e. B | ph } ) ) |
| 31 | ac5num | |- ( ( U. ran ( x e. A |-> { y e. B | ph } ) e. dom card /\ -. (/) e. ran ( x e. A |-> { y e. B | ph } ) ) -> E. g ( g : ran ( x e. A |-> { y e. B | ph } ) --> U. ran ( x e. A |-> { y e. B | ph } ) /\ A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z ) ) |
|
| 32 | 17 30 31 | syl2anc | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> E. g ( g : ran ( x e. A |-> { y e. B | ph } ) --> U. ran ( x e. A |-> { y e. B | ph } ) /\ A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z ) ) |
| 33 | ffn | |- ( g : ran ( x e. A |-> { y e. B | ph } ) --> U. ran ( x e. A |-> { y e. B | ph } ) -> g Fn ran ( x e. A |-> { y e. B | ph } ) ) |
|
| 34 | 33 | anim1i | |- ( ( g : ran ( x e. A |-> { y e. B | ph } ) --> U. ran ( x e. A |-> { y e. B | ph } ) /\ A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z ) -> ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z ) ) |
| 35 | 8 | 3ad2ant2 | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> A. x e. A { y e. B | ph } e. _V ) |
| 36 | fveq2 | |- ( z = { y e. B | ph } -> ( g ` z ) = ( g ` { y e. B | ph } ) ) |
|
| 37 | id | |- ( z = { y e. B | ph } -> z = { y e. B | ph } ) |
|
| 38 | 36 37 | eleq12d | |- ( z = { y e. B | ph } -> ( ( g ` z ) e. z <-> ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) |
| 39 | 11 38 | ralrnmptw | |- ( A. x e. A { y e. B | ph } e. _V -> ( A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z <-> A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) |
| 40 | 35 39 | syl | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> ( A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z <-> A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) |
| 41 | 40 | anbi2d | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> ( ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z ) <-> ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) ) |
| 42 | 34 41 | imbitrid | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> ( ( g : ran ( x e. A |-> { y e. B | ph } ) --> U. ran ( x e. A |-> { y e. B | ph } ) /\ A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z ) -> ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) ) |
| 43 | simpl1 | |- ( ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) /\ ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) -> A e. V ) |
|
| 44 | 43 | mptexd | |- ( ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) /\ ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) -> ( x e. A |-> ( g ` { y e. B | ph } ) ) e. _V ) |
| 45 | elrabi | |- ( ( g ` { y e. B | ph } ) e. { y e. B | ph } -> ( g ` { y e. B | ph } ) e. B ) |
|
| 46 | 45 | ralimi | |- ( A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } -> A. x e. A ( g ` { y e. B | ph } ) e. B ) |
| 47 | 46 | ad2antll | |- ( ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) /\ ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) -> A. x e. A ( g ` { y e. B | ph } ) e. B ) |
| 48 | eqid | |- ( x e. A |-> ( g ` { y e. B | ph } ) ) = ( x e. A |-> ( g ` { y e. B | ph } ) ) |
|
| 49 | 48 | fmpt | |- ( A. x e. A ( g ` { y e. B | ph } ) e. B <-> ( x e. A |-> ( g ` { y e. B | ph } ) ) : A --> B ) |
| 50 | 47 49 | sylib | |- ( ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) /\ ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) -> ( x e. A |-> ( g ` { y e. B | ph } ) ) : A --> B ) |
| 51 | nfcv | |- F/_ y B |
|
| 52 | 51 | elrabsf | |- ( ( g ` { y e. B | ph } ) e. { y e. B | ph } <-> ( ( g ` { y e. B | ph } ) e. B /\ [. ( g ` { y e. B | ph } ) / y ]. ph ) ) |
| 53 | 52 | simprbi | |- ( ( g ` { y e. B | ph } ) e. { y e. B | ph } -> [. ( g ` { y e. B | ph } ) / y ]. ph ) |
| 54 | 53 | ralimi | |- ( A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } -> A. x e. A [. ( g ` { y e. B | ph } ) / y ]. ph ) |
| 55 | 54 | ad2antll | |- ( ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) /\ ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) -> A. x e. A [. ( g ` { y e. B | ph } ) / y ]. ph ) |
| 56 | 50 55 | jca | |- ( ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) /\ ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) -> ( ( x e. A |-> ( g ` { y e. B | ph } ) ) : A --> B /\ A. x e. A [. ( g ` { y e. B | ph } ) / y ]. ph ) ) |
| 57 | feq1 | |- ( f = ( x e. A |-> ( g ` { y e. B | ph } ) ) -> ( f : A --> B <-> ( x e. A |-> ( g ` { y e. B | ph } ) ) : A --> B ) ) |
|
| 58 | nfmpt1 | |- F/_ x ( x e. A |-> ( g ` { y e. B | ph } ) ) |
|
| 59 | 58 | nfeq2 | |- F/ x f = ( x e. A |-> ( g ` { y e. B | ph } ) ) |
| 60 | fvex | |- ( f ` x ) e. _V |
|
| 61 | 60 1 | sbcie | |- ( [. ( f ` x ) / y ]. ph <-> ps ) |
| 62 | fveq1 | |- ( f = ( x e. A |-> ( g ` { y e. B | ph } ) ) -> ( f ` x ) = ( ( x e. A |-> ( g ` { y e. B | ph } ) ) ` x ) ) |
|
| 63 | fvex | |- ( g ` { y e. B | ph } ) e. _V |
|
| 64 | 48 | fvmpt2 | |- ( ( x e. A /\ ( g ` { y e. B | ph } ) e. _V ) -> ( ( x e. A |-> ( g ` { y e. B | ph } ) ) ` x ) = ( g ` { y e. B | ph } ) ) |
| 65 | 63 64 | mpan2 | |- ( x e. A -> ( ( x e. A |-> ( g ` { y e. B | ph } ) ) ` x ) = ( g ` { y e. B | ph } ) ) |
| 66 | 62 65 | sylan9eq | |- ( ( f = ( x e. A |-> ( g ` { y e. B | ph } ) ) /\ x e. A ) -> ( f ` x ) = ( g ` { y e. B | ph } ) ) |
| 67 | 66 | sbceq1d | |- ( ( f = ( x e. A |-> ( g ` { y e. B | ph } ) ) /\ x e. A ) -> ( [. ( f ` x ) / y ]. ph <-> [. ( g ` { y e. B | ph } ) / y ]. ph ) ) |
| 68 | 61 67 | bitr3id | |- ( ( f = ( x e. A |-> ( g ` { y e. B | ph } ) ) /\ x e. A ) -> ( ps <-> [. ( g ` { y e. B | ph } ) / y ]. ph ) ) |
| 69 | 59 68 | ralbida | |- ( f = ( x e. A |-> ( g ` { y e. B | ph } ) ) -> ( A. x e. A ps <-> A. x e. A [. ( g ` { y e. B | ph } ) / y ]. ph ) ) |
| 70 | 57 69 | anbi12d | |- ( f = ( x e. A |-> ( g ` { y e. B | ph } ) ) -> ( ( f : A --> B /\ A. x e. A ps ) <-> ( ( x e. A |-> ( g ` { y e. B | ph } ) ) : A --> B /\ A. x e. A [. ( g ` { y e. B | ph } ) / y ]. ph ) ) ) |
| 71 | 44 56 70 | spcedv | |- ( ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) /\ ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) ) -> E. f ( f : A --> B /\ A. x e. A ps ) ) |
| 72 | 71 | ex | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> ( ( g Fn ran ( x e. A |-> { y e. B | ph } ) /\ A. x e. A ( g ` { y e. B | ph } ) e. { y e. B | ph } ) -> E. f ( f : A --> B /\ A. x e. A ps ) ) ) |
| 73 | 42 72 | syld | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> ( ( g : ran ( x e. A |-> { y e. B | ph } ) --> U. ran ( x e. A |-> { y e. B | ph } ) /\ A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z ) -> E. f ( f : A --> B /\ A. x e. A ps ) ) ) |
| 74 | 73 | exlimdv | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> ( E. g ( g : ran ( x e. A |-> { y e. B | ph } ) --> U. ran ( x e. A |-> { y e. B | ph } ) /\ A. z e. ran ( x e. A |-> { y e. B | ph } ) ( g ` z ) e. z ) -> E. f ( f : A --> B /\ A. x e. A ps ) ) ) |
| 75 | 32 74 | mpd | |- ( ( A e. V /\ U_ x e. A { y e. B | ph } e. dom card /\ A. x e. A E. y e. B ph ) -> E. f ( f : A --> B /\ A. x e. A ps ) ) |