| Step |
Hyp |
Ref |
Expression |
| 1 |
|
f1f |
⊢ ( 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 → 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) ⟶ dom 𝐸 ) |
| 2 |
1
|
frnd |
⊢ ( 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 → ran 𝐹 ⊆ dom 𝐸 ) |
| 3 |
2
|
adantl |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ran 𝐹 ⊆ dom 𝐸 ) |
| 4 |
|
ssdmres |
⊢ ( ran 𝐹 ⊆ dom 𝐸 ↔ dom ( 𝐸 ↾ ran 𝐹 ) = ran 𝐹 ) |
| 5 |
3 4
|
sylib |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → dom ( 𝐸 ↾ ran 𝐹 ) = ran 𝐹 ) |
| 6 |
5
|
fveq2d |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( ♯ ‘ dom ( 𝐸 ↾ ran 𝐹 ) ) = ( ♯ ‘ ran 𝐹 ) ) |
| 7 |
|
df-ima |
⊢ ( 𝐸 “ ran 𝐹 ) = ran ( 𝐸 ↾ ran 𝐹 ) |
| 8 |
7
|
fveq2i |
⊢ ( ♯ ‘ ( 𝐸 “ ran 𝐹 ) ) = ( ♯ ‘ ran ( 𝐸 ↾ ran 𝐹 ) ) |
| 9 |
|
f1fun |
⊢ ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 → Fun 𝐸 ) |
| 10 |
|
funres |
⊢ ( Fun 𝐸 → Fun ( 𝐸 ↾ ran 𝐹 ) ) |
| 11 |
10
|
funfnd |
⊢ ( Fun 𝐸 → ( 𝐸 ↾ ran 𝐹 ) Fn dom ( 𝐸 ↾ ran 𝐹 ) ) |
| 12 |
9 11
|
syl |
⊢ ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 → ( 𝐸 ↾ ran 𝐹 ) Fn dom ( 𝐸 ↾ ran 𝐹 ) ) |
| 13 |
12
|
ad2antrr |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( 𝐸 ↾ ran 𝐹 ) Fn dom ( 𝐸 ↾ ran 𝐹 ) ) |
| 14 |
|
hashfn |
⊢ ( ( 𝐸 ↾ ran 𝐹 ) Fn dom ( 𝐸 ↾ ran 𝐹 ) → ( ♯ ‘ ( 𝐸 ↾ ran 𝐹 ) ) = ( ♯ ‘ dom ( 𝐸 ↾ ran 𝐹 ) ) ) |
| 15 |
13 14
|
syl |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( ♯ ‘ ( 𝐸 ↾ ran 𝐹 ) ) = ( ♯ ‘ dom ( 𝐸 ↾ ran 𝐹 ) ) ) |
| 16 |
|
ovex |
⊢ ( 0 ..^ ( ♯ ‘ 𝐹 ) ) ∈ V |
| 17 |
|
fex |
⊢ ( ( 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) ⟶ dom 𝐸 ∧ ( 0 ..^ ( ♯ ‘ 𝐹 ) ) ∈ V ) → 𝐹 ∈ V ) |
| 18 |
1 16 17
|
sylancl |
⊢ ( 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 → 𝐹 ∈ V ) |
| 19 |
|
rnexg |
⊢ ( 𝐹 ∈ V → ran 𝐹 ∈ V ) |
| 20 |
18 19
|
syl |
⊢ ( 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 → ran 𝐹 ∈ V ) |
| 21 |
|
simpll |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ) |
| 22 |
|
f1ssres |
⊢ ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ ran 𝐹 ⊆ dom 𝐸 ) → ( 𝐸 ↾ ran 𝐹 ) : ran 𝐹 –1-1→ ran 𝐸 ) |
| 23 |
21 3 22
|
syl2anc |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( 𝐸 ↾ ran 𝐹 ) : ran 𝐹 –1-1→ ran 𝐸 ) |
| 24 |
|
hashf1rn |
⊢ ( ( ran 𝐹 ∈ V ∧ ( 𝐸 ↾ ran 𝐹 ) : ran 𝐹 –1-1→ ran 𝐸 ) → ( ♯ ‘ ( 𝐸 ↾ ran 𝐹 ) ) = ( ♯ ‘ ran ( 𝐸 ↾ ran 𝐹 ) ) ) |
| 25 |
20 23 24
|
syl2an2 |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( ♯ ‘ ( 𝐸 ↾ ran 𝐹 ) ) = ( ♯ ‘ ran ( 𝐸 ↾ ran 𝐹 ) ) ) |
| 26 |
15 25
|
eqtr3d |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( ♯ ‘ dom ( 𝐸 ↾ ran 𝐹 ) ) = ( ♯ ‘ ran ( 𝐸 ↾ ran 𝐹 ) ) ) |
| 27 |
8 26
|
eqtr4id |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( ♯ ‘ ( 𝐸 “ ran 𝐹 ) ) = ( ♯ ‘ dom ( 𝐸 ↾ ran 𝐹 ) ) ) |
| 28 |
|
hashf1rn |
⊢ ( ( ( 0 ..^ ( ♯ ‘ 𝐹 ) ) ∈ V ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( ♯ ‘ 𝐹 ) = ( ♯ ‘ ran 𝐹 ) ) |
| 29 |
16 28
|
mpan |
⊢ ( 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 → ( ♯ ‘ 𝐹 ) = ( ♯ ‘ ran 𝐹 ) ) |
| 30 |
29
|
adantl |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( ♯ ‘ 𝐹 ) = ( ♯ ‘ ran 𝐹 ) ) |
| 31 |
6 27 30
|
3eqtr4d |
⊢ ( ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) ∧ 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 ) → ( ♯ ‘ ( 𝐸 “ ran 𝐹 ) ) = ( ♯ ‘ 𝐹 ) ) |
| 32 |
31
|
ex |
⊢ ( ( 𝐸 : dom 𝐸 –1-1→ ran 𝐸 ∧ 𝐸 ∈ 𝑉 ) → ( 𝐹 : ( 0 ..^ ( ♯ ‘ 𝐹 ) ) –1-1→ dom 𝐸 → ( ♯ ‘ ( 𝐸 “ ran 𝐹 ) ) = ( ♯ ‘ 𝐹 ) ) ) |