Proof of Theorem afvco2
| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | fvco2 7006 | . . . . 5
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → ((𝐹 ∘ 𝐺)‘𝑋) = (𝐹‘(𝐺‘𝑋))) | 
| 2 | 1 | adantl 481 | . . . 4
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → ((𝐹 ∘ 𝐺)‘𝑋) = (𝐹‘(𝐺‘𝑋))) | 
| 3 |  | simpll 767 | . . . . . 6
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → (𝐺‘𝑋) ∈ dom 𝐹) | 
| 4 |  | df-fn 6564 | . . . . . . . . 9
⊢ (𝐺 Fn 𝐴 ↔ (Fun 𝐺 ∧ dom 𝐺 = 𝐴)) | 
| 5 |  | simpll 767 | . . . . . . . . . 10
⊢ (((Fun
𝐺 ∧ dom 𝐺 = 𝐴) ∧ 𝑋 ∈ 𝐴) → Fun 𝐺) | 
| 6 |  | eleq2 2830 | . . . . . . . . . . . . . 14
⊢ (𝐴 = dom 𝐺 → (𝑋 ∈ 𝐴 ↔ 𝑋 ∈ dom 𝐺)) | 
| 7 | 6 | eqcoms 2745 | . . . . . . . . . . . . 13
⊢ (dom
𝐺 = 𝐴 → (𝑋 ∈ 𝐴 ↔ 𝑋 ∈ dom 𝐺)) | 
| 8 | 7 | biimpd 229 | . . . . . . . . . . . 12
⊢ (dom
𝐺 = 𝐴 → (𝑋 ∈ 𝐴 → 𝑋 ∈ dom 𝐺)) | 
| 9 | 8 | adantl 481 | . . . . . . . . . . 11
⊢ ((Fun
𝐺 ∧ dom 𝐺 = 𝐴) → (𝑋 ∈ 𝐴 → 𝑋 ∈ dom 𝐺)) | 
| 10 | 9 | imp 406 | . . . . . . . . . 10
⊢ (((Fun
𝐺 ∧ dom 𝐺 = 𝐴) ∧ 𝑋 ∈ 𝐴) → 𝑋 ∈ dom 𝐺) | 
| 11 | 5, 10 | jca 511 | . . . . . . . . 9
⊢ (((Fun
𝐺 ∧ dom 𝐺 = 𝐴) ∧ 𝑋 ∈ 𝐴) → (Fun 𝐺 ∧ 𝑋 ∈ dom 𝐺)) | 
| 12 | 4, 11 | sylanb 581 | . . . . . . . 8
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (Fun 𝐺 ∧ 𝑋 ∈ dom 𝐺)) | 
| 13 | 12 | adantl 481 | . . . . . . 7
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → (Fun 𝐺 ∧ 𝑋 ∈ dom 𝐺)) | 
| 14 |  | dmfco 7005 | . . . . . . 7
⊢ ((Fun
𝐺 ∧ 𝑋 ∈ dom 𝐺) → (𝑋 ∈ dom (𝐹 ∘ 𝐺) ↔ (𝐺‘𝑋) ∈ dom 𝐹)) | 
| 15 | 13, 14 | syl 17 | . . . . . 6
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → (𝑋 ∈ dom (𝐹 ∘ 𝐺) ↔ (𝐺‘𝑋) ∈ dom 𝐹)) | 
| 16 | 3, 15 | mpbird 257 | . . . . 5
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → 𝑋 ∈ dom (𝐹 ∘ 𝐺)) | 
| 17 |  | funcoressn 47054 | . . . . 5
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → Fun ((𝐹 ∘ 𝐺) ↾ {𝑋})) | 
| 18 |  | df-dfat 47131 | . . . . . 6
⊢ ((𝐹 ∘ 𝐺) defAt 𝑋 ↔ (𝑋 ∈ dom (𝐹 ∘ 𝐺) ∧ Fun ((𝐹 ∘ 𝐺) ↾ {𝑋}))) | 
| 19 |  | afvfundmfveq 47150 | . . . . . 6
⊢ ((𝐹 ∘ 𝐺) defAt 𝑋 → ((𝐹 ∘ 𝐺)'''𝑋) = ((𝐹 ∘ 𝐺)‘𝑋)) | 
| 20 | 18, 19 | sylbir 235 | . . . . 5
⊢ ((𝑋 ∈ dom (𝐹 ∘ 𝐺) ∧ Fun ((𝐹 ∘ 𝐺) ↾ {𝑋})) → ((𝐹 ∘ 𝐺)'''𝑋) = ((𝐹 ∘ 𝐺)‘𝑋)) | 
| 21 | 16, 17, 20 | syl2anc 584 | . . . 4
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → ((𝐹 ∘ 𝐺)'''𝑋) = ((𝐹 ∘ 𝐺)‘𝑋)) | 
| 22 |  | df-dfat 47131 | . . . . . 6
⊢ (𝐹 defAt (𝐺‘𝑋) ↔ ((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)}))) | 
| 23 |  | afvfundmfveq 47150 | . . . . . 6
⊢ (𝐹 defAt (𝐺‘𝑋) → (𝐹'''(𝐺‘𝑋)) = (𝐹‘(𝐺‘𝑋))) | 
| 24 | 22, 23 | sylbir 235 | . . . . 5
⊢ (((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) → (𝐹'''(𝐺‘𝑋)) = (𝐹‘(𝐺‘𝑋))) | 
| 25 | 24 | adantr 480 | . . . 4
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → (𝐹'''(𝐺‘𝑋)) = (𝐹‘(𝐺‘𝑋))) | 
| 26 | 2, 21, 25 | 3eqtr4d 2787 | . . 3
⊢ ((((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → ((𝐹 ∘ 𝐺)'''𝑋) = (𝐹'''(𝐺‘𝑋))) | 
| 27 |  | ianor 984 | . . . . . 6
⊢ (¬
((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ↔ (¬ (𝐺‘𝑋) ∈ dom 𝐹 ∨ ¬ Fun (𝐹 ↾ {(𝐺‘𝑋)}))) | 
| 28 | 14 | funfni 6674 | . . . . . . . . . . 11
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (𝑋 ∈ dom (𝐹 ∘ 𝐺) ↔ (𝐺‘𝑋) ∈ dom 𝐹)) | 
| 29 | 28 | bicomd 223 | . . . . . . . . . 10
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → ((𝐺‘𝑋) ∈ dom 𝐹 ↔ 𝑋 ∈ dom (𝐹 ∘ 𝐺))) | 
| 30 | 29 | notbid 318 | . . . . . . . . 9
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (¬ (𝐺‘𝑋) ∈ dom 𝐹 ↔ ¬ 𝑋 ∈ dom (𝐹 ∘ 𝐺))) | 
| 31 | 30 | biimpd 229 | . . . . . . . 8
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (¬ (𝐺‘𝑋) ∈ dom 𝐹 → ¬ 𝑋 ∈ dom (𝐹 ∘ 𝐺))) | 
| 32 |  | ndmafv 47152 | . . . . . . . 8
⊢ (¬
𝑋 ∈ dom (𝐹 ∘ 𝐺) → ((𝐹 ∘ 𝐺)'''𝑋) = V) | 
| 33 | 31, 32 | syl6com 37 | . . . . . . 7
⊢ (¬
(𝐺‘𝑋) ∈ dom 𝐹 → ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → ((𝐹 ∘ 𝐺)'''𝑋) = V)) | 
| 34 |  | funressnfv 47055 | . . . . . . . . . . . 12
⊢ (((𝑋 ∈ dom (𝐹 ∘ 𝐺) ∧ Fun ((𝐹 ∘ 𝐺) ↾ {𝑋})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → Fun (𝐹 ↾ {(𝐺‘𝑋)})) | 
| 35 | 34 | ex 412 | . . . . . . . . . . 11
⊢ ((𝑋 ∈ dom (𝐹 ∘ 𝐺) ∧ Fun ((𝐹 ∘ 𝐺) ↾ {𝑋})) → ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → Fun (𝐹 ↾ {(𝐺‘𝑋)}))) | 
| 36 |  | afvnfundmuv 47151 | . . . . . . . . . . . 12
⊢ (¬
(𝐹 ∘ 𝐺) defAt 𝑋 → ((𝐹 ∘ 𝐺)'''𝑋) = V) | 
| 37 | 18, 36 | sylnbir 331 | . . . . . . . . . . 11
⊢ (¬
(𝑋 ∈ dom (𝐹 ∘ 𝐺) ∧ Fun ((𝐹 ∘ 𝐺) ↾ {𝑋})) → ((𝐹 ∘ 𝐺)'''𝑋) = V) | 
| 38 | 35, 37 | nsyl4 158 | . . . . . . . . . 10
⊢ (¬
((𝐹 ∘ 𝐺)'''𝑋) = V → ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → Fun (𝐹 ↾ {(𝐺‘𝑋)}))) | 
| 39 | 38 | com12 32 | . . . . . . . . 9
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (¬ ((𝐹 ∘ 𝐺)'''𝑋) = V → Fun (𝐹 ↾ {(𝐺‘𝑋)}))) | 
| 40 | 39 | con1d 145 | . . . . . . . 8
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (¬ Fun (𝐹 ↾ {(𝐺‘𝑋)}) → ((𝐹 ∘ 𝐺)'''𝑋) = V)) | 
| 41 | 40 | com12 32 | . . . . . . 7
⊢ (¬
Fun (𝐹 ↾ {(𝐺‘𝑋)}) → ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → ((𝐹 ∘ 𝐺)'''𝑋) = V)) | 
| 42 | 33, 41 | jaoi 858 | . . . . . 6
⊢ ((¬
(𝐺‘𝑋) ∈ dom 𝐹 ∨ ¬ Fun (𝐹 ↾ {(𝐺‘𝑋)})) → ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → ((𝐹 ∘ 𝐺)'''𝑋) = V)) | 
| 43 | 27, 42 | sylbi 217 | . . . . 5
⊢ (¬
((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) → ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → ((𝐹 ∘ 𝐺)'''𝑋) = V)) | 
| 44 | 43 | imp 406 | . . . 4
⊢ ((¬
((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → ((𝐹 ∘ 𝐺)'''𝑋) = V) | 
| 45 |  | afvnfundmuv 47151 | . . . . . . 7
⊢ (¬
𝐹 defAt (𝐺‘𝑋) → (𝐹'''(𝐺‘𝑋)) = V) | 
| 46 | 22, 45 | sylnbir 331 | . . . . . 6
⊢ (¬
((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) → (𝐹'''(𝐺‘𝑋)) = V) | 
| 47 | 46 | eqcomd 2743 | . . . . 5
⊢ (¬
((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) → V = (𝐹'''(𝐺‘𝑋))) | 
| 48 | 47 | adantr 480 | . . . 4
⊢ ((¬
((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → V = (𝐹'''(𝐺‘𝑋))) | 
| 49 | 44, 48 | eqtrd 2777 | . . 3
⊢ ((¬
((𝐺‘𝑋) ∈ dom 𝐹 ∧ Fun (𝐹 ↾ {(𝐺‘𝑋)})) ∧ (𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴)) → ((𝐹 ∘ 𝐺)'''𝑋) = (𝐹'''(𝐺‘𝑋))) | 
| 50 | 26, 49 | pm2.61ian 812 | . 2
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → ((𝐹 ∘ 𝐺)'''𝑋) = (𝐹'''(𝐺‘𝑋))) | 
| 51 |  | eqidd 2738 | . . 3
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → 𝐹 = 𝐹) | 
| 52 | 4, 9 | sylbi 217 | . . . . . 6
⊢ (𝐺 Fn 𝐴 → (𝑋 ∈ 𝐴 → 𝑋 ∈ dom 𝐺)) | 
| 53 | 52 | imp 406 | . . . . 5
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → 𝑋 ∈ dom 𝐺) | 
| 54 |  | fnfun 6668 | . . . . . . 7
⊢ (𝐺 Fn 𝐴 → Fun 𝐺) | 
| 55 | 54 | funresd 6609 | . . . . . 6
⊢ (𝐺 Fn 𝐴 → Fun (𝐺 ↾ {𝑋})) | 
| 56 | 55 | adantr 480 | . . . . 5
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → Fun (𝐺 ↾ {𝑋})) | 
| 57 |  | df-dfat 47131 | . . . . . 6
⊢ (𝐺 defAt 𝑋 ↔ (𝑋 ∈ dom 𝐺 ∧ Fun (𝐺 ↾ {𝑋}))) | 
| 58 |  | afvfundmfveq 47150 | . . . . . 6
⊢ (𝐺 defAt 𝑋 → (𝐺'''𝑋) = (𝐺‘𝑋)) | 
| 59 | 57, 58 | sylbir 235 | . . . . 5
⊢ ((𝑋 ∈ dom 𝐺 ∧ Fun (𝐺 ↾ {𝑋})) → (𝐺'''𝑋) = (𝐺‘𝑋)) | 
| 60 | 53, 56, 59 | syl2anc 584 | . . . 4
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (𝐺'''𝑋) = (𝐺‘𝑋)) | 
| 61 | 60 | eqcomd 2743 | . . 3
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (𝐺‘𝑋) = (𝐺'''𝑋)) | 
| 62 | 51, 61 | afveq12d 47145 | . 2
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → (𝐹'''(𝐺‘𝑋)) = (𝐹'''(𝐺'''𝑋))) | 
| 63 | 50, 62 | eqtrd 2777 | 1
⊢ ((𝐺 Fn 𝐴 ∧ 𝑋 ∈ 𝐴) → ((𝐹 ∘ 𝐺)'''𝑋) = (𝐹'''(𝐺'''𝑋))) |