This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Value of the structure replacement function at a replaced index. (Contributed by Mario Carneiro, 1-Dec-2014) (Revised by Mario Carneiro, 30-Apr-2015)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | setsid.e | ⊢ 𝐸 = Slot ( 𝐸 ‘ ndx ) | |
| Assertion | setsid | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → 𝐶 = ( 𝐸 ‘ ( 𝑊 sSet 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | setsid.e | ⊢ 𝐸 = Slot ( 𝐸 ‘ ndx ) | |
| 2 | setsval | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( 𝑊 sSet 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 ) = ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ) | |
| 3 | 2 | fveq2d | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( 𝐸 ‘ ( 𝑊 sSet 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 ) ) = ( 𝐸 ‘ ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ) ) |
| 4 | resexg | ⊢ ( 𝑊 ∈ 𝐴 → ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∈ V ) | |
| 5 | 4 | adantr | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∈ V ) |
| 6 | snex | ⊢ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ∈ V | |
| 7 | unexg | ⊢ ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∈ V ∧ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ∈ V ) → ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ∈ V ) | |
| 8 | 5 6 7 | sylancl | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ∈ V ) |
| 9 | 1 8 | strfvnd | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( 𝐸 ‘ ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ) = ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ‘ ( 𝐸 ‘ ndx ) ) ) |
| 10 | fvex | ⊢ ( 𝐸 ‘ ndx ) ∈ V | |
| 11 | 10 | snid | ⊢ ( 𝐸 ‘ ndx ) ∈ { ( 𝐸 ‘ ndx ) } |
| 12 | fvres | ⊢ ( ( 𝐸 ‘ ndx ) ∈ { ( 𝐸 ‘ ndx ) } → ( ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ↾ { ( 𝐸 ‘ ndx ) } ) ‘ ( 𝐸 ‘ ndx ) ) = ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ‘ ( 𝐸 ‘ ndx ) ) ) | |
| 13 | 11 12 | ax-mp | ⊢ ( ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ↾ { ( 𝐸 ‘ ndx ) } ) ‘ ( 𝐸 ‘ ndx ) ) = ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ‘ ( 𝐸 ‘ ndx ) ) |
| 14 | resres | ⊢ ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ↾ { ( 𝐸 ‘ ndx ) } ) = ( 𝑊 ↾ ( ( V ∖ { ( 𝐸 ‘ ndx ) } ) ∩ { ( 𝐸 ‘ ndx ) } ) ) | |
| 15 | disjdifr | ⊢ ( ( V ∖ { ( 𝐸 ‘ ndx ) } ) ∩ { ( 𝐸 ‘ ndx ) } ) = ∅ | |
| 16 | 15 | reseq2i | ⊢ ( 𝑊 ↾ ( ( V ∖ { ( 𝐸 ‘ ndx ) } ) ∩ { ( 𝐸 ‘ ndx ) } ) ) = ( 𝑊 ↾ ∅ ) |
| 17 | res0 | ⊢ ( 𝑊 ↾ ∅ ) = ∅ | |
| 18 | 16 17 | eqtri | ⊢ ( 𝑊 ↾ ( ( V ∖ { ( 𝐸 ‘ ndx ) } ) ∩ { ( 𝐸 ‘ ndx ) } ) ) = ∅ |
| 19 | 14 18 | eqtri | ⊢ ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ↾ { ( 𝐸 ‘ ndx ) } ) = ∅ |
| 20 | 19 | a1i | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ↾ { ( 𝐸 ‘ ndx ) } ) = ∅ ) |
| 21 | elex | ⊢ ( 𝐶 ∈ 𝑉 → 𝐶 ∈ V ) | |
| 22 | 21 | adantl | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → 𝐶 ∈ V ) |
| 23 | opelxpi | ⊢ ( ( ( 𝐸 ‘ ndx ) ∈ V ∧ 𝐶 ∈ V ) → 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 ∈ ( V × V ) ) | |
| 24 | 10 22 23 | sylancr | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 ∈ ( V × V ) ) |
| 25 | opex | ⊢ 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 ∈ V | |
| 26 | 25 | relsn | ⊢ ( Rel { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ↔ 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 ∈ ( V × V ) ) |
| 27 | 24 26 | sylibr | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → Rel { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) |
| 28 | dmsnopss | ⊢ dom { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ⊆ { ( 𝐸 ‘ ndx ) } | |
| 29 | relssres | ⊢ ( ( Rel { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ∧ dom { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ⊆ { ( 𝐸 ‘ ndx ) } ) → ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ↾ { ( 𝐸 ‘ ndx ) } ) = { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) | |
| 30 | 27 28 29 | sylancl | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ↾ { ( 𝐸 ‘ ndx ) } ) = { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) |
| 31 | 20 30 | uneq12d | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ↾ { ( 𝐸 ‘ ndx ) } ) ∪ ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ↾ { ( 𝐸 ‘ ndx ) } ) ) = ( ∅ ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ) |
| 32 | resundir | ⊢ ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ↾ { ( 𝐸 ‘ ndx ) } ) = ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ↾ { ( 𝐸 ‘ ndx ) } ) ∪ ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ↾ { ( 𝐸 ‘ ndx ) } ) ) | |
| 33 | un0 | ⊢ ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ∪ ∅ ) = { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } | |
| 34 | uncom | ⊢ ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ∪ ∅ ) = ( ∅ ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) | |
| 35 | 33 34 | eqtr3i | ⊢ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } = ( ∅ ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) |
| 36 | 31 32 35 | 3eqtr4g | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ↾ { ( 𝐸 ‘ ndx ) } ) = { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) |
| 37 | 36 | fveq1d | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ↾ { ( 𝐸 ‘ ndx ) } ) ‘ ( 𝐸 ‘ ndx ) ) = ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ‘ ( 𝐸 ‘ ndx ) ) ) |
| 38 | 13 37 | eqtr3id | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ‘ ( 𝐸 ‘ ndx ) ) = ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ‘ ( 𝐸 ‘ ndx ) ) ) |
| 39 | 10 | a1i | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( 𝐸 ‘ ndx ) ∈ V ) |
| 40 | fvsng | ⊢ ( ( ( 𝐸 ‘ ndx ) ∈ V ∧ 𝐶 ∈ 𝑉 ) → ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ‘ ( 𝐸 ‘ ndx ) ) = 𝐶 ) | |
| 41 | 39 40 | sylancom | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ‘ ( 𝐸 ‘ ndx ) ) = 𝐶 ) |
| 42 | 38 41 | eqtrd | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → ( ( ( 𝑊 ↾ ( V ∖ { ( 𝐸 ‘ ndx ) } ) ) ∪ { 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 } ) ‘ ( 𝐸 ‘ ndx ) ) = 𝐶 ) |
| 43 | 3 9 42 | 3eqtrrd | ⊢ ( ( 𝑊 ∈ 𝐴 ∧ 𝐶 ∈ 𝑉 ) → 𝐶 = ( 𝐸 ‘ ( 𝑊 sSet 〈 ( 𝐸 ‘ ndx ) , 𝐶 〉 ) ) ) |