This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Rewriting a disjoint collection into a partition of its image set. (Contributed by Thierry Arnoux, 30-Dec-2016)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | disjabrex | |- ( Disj_ x e. A B -> Disj_ y e. { z | E. x e. A z = B } y ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | nfdisj1 | |- F/ x Disj_ x e. A B |
|
| 2 | nfcv | |- F/_ x y |
|
| 3 | nfv | |- F/ x i e. A |
|
| 4 | nfcsb1v | |- F/_ x [_ i / x ]_ B |
|
| 5 | 4 | nfcri | |- F/ x j e. [_ i / x ]_ B |
| 6 | 3 5 | nfan | |- F/ x ( i e. A /\ j e. [_ i / x ]_ B ) |
| 7 | 6 | nfab | |- F/_ x { i | ( i e. A /\ j e. [_ i / x ]_ B ) } |
| 8 | 7 | nfuni | |- F/_ x U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } |
| 9 | 8 | nfcsb1 | |- F/_ x [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B |
| 10 | 9 | nfeq1 | |- F/ x [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = y |
| 11 | 2 10 | nfralw | |- F/ x A. j e. y [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = y |
| 12 | eqeq2 | |- ( y = B -> ( [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = y <-> [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = B ) ) |
|
| 13 | 12 | raleqbi1dv | |- ( y = B -> ( A. j e. y [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = y <-> A. j e. B [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = B ) ) |
| 14 | vex | |- y e. _V |
|
| 15 | 14 | a1i | |- ( Disj_ x e. A B -> y e. _V ) |
| 16 | simplll | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ ( i e. A /\ j e. [_ i / x ]_ B ) ) -> Disj_ x e. A B ) |
|
| 17 | simpllr | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ ( i e. A /\ j e. [_ i / x ]_ B ) ) -> x e. A ) |
|
| 18 | simprl | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ ( i e. A /\ j e. [_ i / x ]_ B ) ) -> i e. A ) |
|
| 19 | simplr | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ ( i e. A /\ j e. [_ i / x ]_ B ) ) -> j e. B ) |
|
| 20 | simprr | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ ( i e. A /\ j e. [_ i / x ]_ B ) ) -> j e. [_ i / x ]_ B ) |
|
| 21 | csbeq1a | |- ( x = i -> B = [_ i / x ]_ B ) |
|
| 22 | 4 21 | disjif | |- ( ( Disj_ x e. A B /\ ( x e. A /\ i e. A ) /\ ( j e. B /\ j e. [_ i / x ]_ B ) ) -> x = i ) |
| 23 | 16 17 18 19 20 22 | syl122anc | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ ( i e. A /\ j e. [_ i / x ]_ B ) ) -> x = i ) |
| 24 | simpr | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ x = i ) -> x = i ) |
|
| 25 | simpllr | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ x = i ) -> x e. A ) |
|
| 26 | 24 25 | eqeltrrd | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ x = i ) -> i e. A ) |
| 27 | simplr | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ x = i ) -> j e. B ) |
|
| 28 | 21 | eleq2d | |- ( x = i -> ( j e. B <-> j e. [_ i / x ]_ B ) ) |
| 29 | 24 28 | syl | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ x = i ) -> ( j e. B <-> j e. [_ i / x ]_ B ) ) |
| 30 | 27 29 | mpbid | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ x = i ) -> j e. [_ i / x ]_ B ) |
| 31 | 26 30 | jca | |- ( ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) /\ x = i ) -> ( i e. A /\ j e. [_ i / x ]_ B ) ) |
| 32 | 23 31 | impbida | |- ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) -> ( ( i e. A /\ j e. [_ i / x ]_ B ) <-> x = i ) ) |
| 33 | equcom | |- ( x = i <-> i = x ) |
|
| 34 | 32 33 | bitrdi | |- ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) -> ( ( i e. A /\ j e. [_ i / x ]_ B ) <-> i = x ) ) |
| 35 | 34 | abbidv | |- ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) -> { i | ( i e. A /\ j e. [_ i / x ]_ B ) } = { i | i = x } ) |
| 36 | df-sn | |- { x } = { i | i = x } |
|
| 37 | 35 36 | eqtr4di | |- ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) -> { i | ( i e. A /\ j e. [_ i / x ]_ B ) } = { x } ) |
| 38 | 37 | unieqd | |- ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) -> U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } = U. { x } ) |
| 39 | unisnv | |- U. { x } = x |
|
| 40 | 38 39 | eqtrdi | |- ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) -> U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } = x ) |
| 41 | csbeq1 | |- ( U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } = x -> [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = [_ x / x ]_ B ) |
|
| 42 | csbid | |- [_ x / x ]_ B = B |
|
| 43 | 41 42 | eqtrdi | |- ( U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } = x -> [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = B ) |
| 44 | 40 43 | syl | |- ( ( ( Disj_ x e. A B /\ x e. A ) /\ j e. B ) -> [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = B ) |
| 45 | 44 | ralrimiva | |- ( ( Disj_ x e. A B /\ x e. A ) -> A. j e. B [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = B ) |
| 46 | 1 11 13 15 45 | elabreximd | |- ( ( Disj_ x e. A B /\ y e. { z | E. x e. A z = B } ) -> A. j e. y [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = y ) |
| 47 | 46 | ralrimiva | |- ( Disj_ x e. A B -> A. y e. { z | E. x e. A z = B } A. j e. y [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = y ) |
| 48 | invdisj | |- ( A. y e. { z | E. x e. A z = B } A. j e. y [_ U. { i | ( i e. A /\ j e. [_ i / x ]_ B ) } / x ]_ B = y -> Disj_ y e. { z | E. x e. A z = B } y ) |
|
| 49 | 47 48 | syl | |- ( Disj_ x e. A B -> Disj_ y e. { z | E. x e. A z = B } y ) |