| Step | Hyp | Ref
| Expression |
| 1 | | cofulid.1 |
. . . . . 6
⊢ 𝐼 =
(idfunc‘𝐷) |
| 2 | | eqid 2737 |
. . . . . 6
⊢
(Base‘𝐷) =
(Base‘𝐷) |
| 3 | | cofulid.g |
. . . . . . . 8
⊢ (𝜑 → 𝐹 ∈ (𝐶 Func 𝐷)) |
| 4 | | funcrcl 17908 |
. . . . . . . 8
⊢ (𝐹 ∈ (𝐶 Func 𝐷) → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat)) |
| 5 | 3, 4 | syl 17 |
. . . . . . 7
⊢ (𝜑 → (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat)) |
| 6 | 5 | simprd 495 |
. . . . . 6
⊢ (𝜑 → 𝐷 ∈ Cat) |
| 7 | 1, 2, 6 | idfu1st 17924 |
. . . . 5
⊢ (𝜑 → (1st
‘𝐼) = ( I ↾
(Base‘𝐷))) |
| 8 | 7 | coeq1d 5872 |
. . . 4
⊢ (𝜑 → ((1st
‘𝐼) ∘
(1st ‘𝐹))
= (( I ↾ (Base‘𝐷)) ∘ (1st ‘𝐹))) |
| 9 | | eqid 2737 |
. . . . . 6
⊢
(Base‘𝐶) =
(Base‘𝐶) |
| 10 | | relfunc 17907 |
. . . . . . 7
⊢ Rel
(𝐶 Func 𝐷) |
| 11 | | 1st2ndbr 8067 |
. . . . . . 7
⊢ ((Rel
(𝐶 Func 𝐷) ∧ 𝐹 ∈ (𝐶 Func 𝐷)) → (1st ‘𝐹)(𝐶 Func 𝐷)(2nd ‘𝐹)) |
| 12 | 10, 3, 11 | sylancr 587 |
. . . . . 6
⊢ (𝜑 → (1st
‘𝐹)(𝐶 Func 𝐷)(2nd ‘𝐹)) |
| 13 | 9, 2, 12 | funcf1 17911 |
. . . . 5
⊢ (𝜑 → (1st
‘𝐹):(Base‘𝐶)⟶(Base‘𝐷)) |
| 14 | | fcoi2 6783 |
. . . . 5
⊢
((1st ‘𝐹):(Base‘𝐶)⟶(Base‘𝐷) → (( I ↾ (Base‘𝐷)) ∘ (1st
‘𝐹)) =
(1st ‘𝐹)) |
| 15 | 13, 14 | syl 17 |
. . . 4
⊢ (𝜑 → (( I ↾
(Base‘𝐷)) ∘
(1st ‘𝐹))
= (1st ‘𝐹)) |
| 16 | 8, 15 | eqtrd 2777 |
. . 3
⊢ (𝜑 → ((1st
‘𝐼) ∘
(1st ‘𝐹))
= (1st ‘𝐹)) |
| 17 | 6 | 3ad2ant1 1134 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → 𝐷 ∈ Cat) |
| 18 | | eqid 2737 |
. . . . . . . 8
⊢ (Hom
‘𝐷) = (Hom
‘𝐷) |
| 19 | 13 | ffvelcdmda 7104 |
. . . . . . . . 9
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶)) → ((1st ‘𝐹)‘𝑥) ∈ (Base‘𝐷)) |
| 20 | 19 | 3adant3 1133 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → ((1st ‘𝐹)‘𝑥) ∈ (Base‘𝐷)) |
| 21 | 13 | ffvelcdmda 7104 |
. . . . . . . . 9
⊢ ((𝜑 ∧ 𝑦 ∈ (Base‘𝐶)) → ((1st ‘𝐹)‘𝑦) ∈ (Base‘𝐷)) |
| 22 | 21 | 3adant2 1132 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → ((1st ‘𝐹)‘𝑦) ∈ (Base‘𝐷)) |
| 23 | 1, 2, 17, 18, 20, 22 | idfu2nd 17922 |
. . . . . . 7
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → (((1st ‘𝐹)‘𝑥)(2nd ‘𝐼)((1st ‘𝐹)‘𝑦)) = ( I ↾ (((1st
‘𝐹)‘𝑥)(Hom ‘𝐷)((1st ‘𝐹)‘𝑦)))) |
| 24 | 23 | coeq1d 5872 |
. . . . . 6
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → ((((1st ‘𝐹)‘𝑥)(2nd ‘𝐼)((1st ‘𝐹)‘𝑦)) ∘ (𝑥(2nd ‘𝐹)𝑦)) = (( I ↾ (((1st
‘𝐹)‘𝑥)(Hom ‘𝐷)((1st ‘𝐹)‘𝑦))) ∘ (𝑥(2nd ‘𝐹)𝑦))) |
| 25 | | eqid 2737 |
. . . . . . . 8
⊢ (Hom
‘𝐶) = (Hom
‘𝐶) |
| 26 | 12 | 3ad2ant1 1134 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → (1st ‘𝐹)(𝐶 Func 𝐷)(2nd ‘𝐹)) |
| 27 | | simp2 1138 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → 𝑥 ∈ (Base‘𝐶)) |
| 28 | | simp3 1139 |
. . . . . . . 8
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → 𝑦 ∈ (Base‘𝐶)) |
| 29 | 9, 25, 18, 26, 27, 28 | funcf2 17913 |
. . . . . . 7
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → (𝑥(2nd ‘𝐹)𝑦):(𝑥(Hom ‘𝐶)𝑦)⟶(((1st ‘𝐹)‘𝑥)(Hom ‘𝐷)((1st ‘𝐹)‘𝑦))) |
| 30 | | fcoi2 6783 |
. . . . . . 7
⊢ ((𝑥(2nd ‘𝐹)𝑦):(𝑥(Hom ‘𝐶)𝑦)⟶(((1st ‘𝐹)‘𝑥)(Hom ‘𝐷)((1st ‘𝐹)‘𝑦)) → (( I ↾ (((1st
‘𝐹)‘𝑥)(Hom ‘𝐷)((1st ‘𝐹)‘𝑦))) ∘ (𝑥(2nd ‘𝐹)𝑦)) = (𝑥(2nd ‘𝐹)𝑦)) |
| 31 | 29, 30 | syl 17 |
. . . . . 6
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → (( I ↾ (((1st
‘𝐹)‘𝑥)(Hom ‘𝐷)((1st ‘𝐹)‘𝑦))) ∘ (𝑥(2nd ‘𝐹)𝑦)) = (𝑥(2nd ‘𝐹)𝑦)) |
| 32 | 24, 31 | eqtrd 2777 |
. . . . 5
⊢ ((𝜑 ∧ 𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶)) → ((((1st ‘𝐹)‘𝑥)(2nd ‘𝐼)((1st ‘𝐹)‘𝑦)) ∘ (𝑥(2nd ‘𝐹)𝑦)) = (𝑥(2nd ‘𝐹)𝑦)) |
| 33 | 32 | mpoeq3dva 7510 |
. . . 4
⊢ (𝜑 → (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((((1st ‘𝐹)‘𝑥)(2nd ‘𝐼)((1st ‘𝐹)‘𝑦)) ∘ (𝑥(2nd ‘𝐹)𝑦))) = (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ (𝑥(2nd ‘𝐹)𝑦))) |
| 34 | 9, 12 | funcfn2 17914 |
. . . . 5
⊢ (𝜑 → (2nd
‘𝐹) Fn
((Base‘𝐶) ×
(Base‘𝐶))) |
| 35 | | fnov 7564 |
. . . . 5
⊢
((2nd ‘𝐹) Fn ((Base‘𝐶) × (Base‘𝐶)) ↔ (2nd ‘𝐹) = (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ (𝑥(2nd ‘𝐹)𝑦))) |
| 36 | 34, 35 | sylib 218 |
. . . 4
⊢ (𝜑 → (2nd
‘𝐹) = (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ (𝑥(2nd ‘𝐹)𝑦))) |
| 37 | 33, 36 | eqtr4d 2780 |
. . 3
⊢ (𝜑 → (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((((1st ‘𝐹)‘𝑥)(2nd ‘𝐼)((1st ‘𝐹)‘𝑦)) ∘ (𝑥(2nd ‘𝐹)𝑦))) = (2nd ‘𝐹)) |
| 38 | 16, 37 | opeq12d 4881 |
. 2
⊢ (𝜑 → 〈((1st
‘𝐼) ∘
(1st ‘𝐹)),
(𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((((1st ‘𝐹)‘𝑥)(2nd ‘𝐼)((1st ‘𝐹)‘𝑦)) ∘ (𝑥(2nd ‘𝐹)𝑦)))〉 = 〈(1st
‘𝐹), (2nd
‘𝐹)〉) |
| 39 | 1 | idfucl 17926 |
. . . 4
⊢ (𝐷 ∈ Cat → 𝐼 ∈ (𝐷 Func 𝐷)) |
| 40 | 6, 39 | syl 17 |
. . 3
⊢ (𝜑 → 𝐼 ∈ (𝐷 Func 𝐷)) |
| 41 | 9, 3, 40 | cofuval 17927 |
. 2
⊢ (𝜑 → (𝐼 ∘func 𝐹) = 〈((1st
‘𝐼) ∘
(1st ‘𝐹)),
(𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((((1st ‘𝐹)‘𝑥)(2nd ‘𝐼)((1st ‘𝐹)‘𝑦)) ∘ (𝑥(2nd ‘𝐹)𝑦)))〉) |
| 42 | | 1st2nd 8064 |
. . 3
⊢ ((Rel
(𝐶 Func 𝐷) ∧ 𝐹 ∈ (𝐶 Func 𝐷)) → 𝐹 = 〈(1st ‘𝐹), (2nd ‘𝐹)〉) |
| 43 | 10, 3, 42 | sylancr 587 |
. 2
⊢ (𝜑 → 𝐹 = 〈(1st ‘𝐹), (2nd ‘𝐹)〉) |
| 44 | 38, 41, 43 | 3eqtr4d 2787 |
1
⊢ (𝜑 → (𝐼 ∘func 𝐹) = 𝐹) |