| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | dmexg 7923 | . . . . . 6
⊢ (𝑥 ∈ V → dom 𝑥 ∈ V) | 
| 2 | 1 | adantl 481 | . . . . 5
⊢ ((𝐶 ∈ Cat ∧ 𝑥 ∈ V) → dom 𝑥 ∈ V) | 
| 3 | 2 | ralrimiva 3146 | . . . 4
⊢ (𝐶 ∈ Cat → ∀𝑥 ∈ V dom 𝑥 ∈ V) | 
| 4 |  | eqid 2737 | . . . . 5
⊢ (𝑥 ∈ V ↦ dom 𝑥) = (𝑥 ∈ V ↦ dom 𝑥) | 
| 5 | 4 | fnmpt 6708 | . . . 4
⊢
(∀𝑥 ∈ V
dom 𝑥 ∈ V →
(𝑥 ∈ V ↦ dom
𝑥) Fn V) | 
| 6 | 3, 5 | syl 17 | . . 3
⊢ (𝐶 ∈ Cat → (𝑥 ∈ V ↦ dom 𝑥) Fn V) | 
| 7 |  | ovex 7464 | . . . . . . . 8
⊢ (𝑥(Sect‘𝐶)𝑦) ∈ V | 
| 8 | 7 | inex1 5317 | . . . . . . 7
⊢ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥)) ∈ V | 
| 9 | 8 | a1i 11 | . . . . . 6
⊢ ((𝐶 ∈ Cat ∧ (𝑥 ∈ (Base‘𝐶) ∧ 𝑦 ∈ (Base‘𝐶))) → ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥)) ∈ V) | 
| 10 | 9 | ralrimivva 3202 | . . . . 5
⊢ (𝐶 ∈ Cat → ∀𝑥 ∈ (Base‘𝐶)∀𝑦 ∈ (Base‘𝐶)((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥)) ∈ V) | 
| 11 |  | eqid 2737 | . . . . . 6
⊢ (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥))) = (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥))) | 
| 12 | 11 | fnmpo 8094 | . . . . 5
⊢
(∀𝑥 ∈
(Base‘𝐶)∀𝑦 ∈ (Base‘𝐶)((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥)) ∈ V → (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥))) Fn ((Base‘𝐶) × (Base‘𝐶))) | 
| 13 | 10, 12 | syl 17 | . . . 4
⊢ (𝐶 ∈ Cat → (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥))) Fn ((Base‘𝐶) × (Base‘𝐶))) | 
| 14 |  | df-inv 17792 | . . . . . 6
⊢ Inv =
(𝑐 ∈ Cat ↦
(𝑥 ∈ (Base‘𝑐), 𝑦 ∈ (Base‘𝑐) ↦ ((𝑥(Sect‘𝑐)𝑦) ∩ ◡(𝑦(Sect‘𝑐)𝑥)))) | 
| 15 |  | fveq2 6906 | . . . . . . 7
⊢ (𝑐 = 𝐶 → (Base‘𝑐) = (Base‘𝐶)) | 
| 16 |  | fveq2 6906 | . . . . . . . . 9
⊢ (𝑐 = 𝐶 → (Sect‘𝑐) = (Sect‘𝐶)) | 
| 17 | 16 | oveqd 7448 | . . . . . . . 8
⊢ (𝑐 = 𝐶 → (𝑥(Sect‘𝑐)𝑦) = (𝑥(Sect‘𝐶)𝑦)) | 
| 18 | 16 | oveqd 7448 | . . . . . . . . 9
⊢ (𝑐 = 𝐶 → (𝑦(Sect‘𝑐)𝑥) = (𝑦(Sect‘𝐶)𝑥)) | 
| 19 | 18 | cnveqd 5886 | . . . . . . . 8
⊢ (𝑐 = 𝐶 → ◡(𝑦(Sect‘𝑐)𝑥) = ◡(𝑦(Sect‘𝐶)𝑥)) | 
| 20 | 17, 19 | ineq12d 4221 | . . . . . . 7
⊢ (𝑐 = 𝐶 → ((𝑥(Sect‘𝑐)𝑦) ∩ ◡(𝑦(Sect‘𝑐)𝑥)) = ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥))) | 
| 21 | 15, 15, 20 | mpoeq123dv 7508 | . . . . . 6
⊢ (𝑐 = 𝐶 → (𝑥 ∈ (Base‘𝑐), 𝑦 ∈ (Base‘𝑐) ↦ ((𝑥(Sect‘𝑐)𝑦) ∩ ◡(𝑦(Sect‘𝑐)𝑥))) = (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥)))) | 
| 22 |  | id 22 | . . . . . 6
⊢ (𝐶 ∈ Cat → 𝐶 ∈ Cat) | 
| 23 |  | fvex 6919 | . . . . . . . 8
⊢
(Base‘𝐶)
∈ V | 
| 24 | 23, 23 | pm3.2i 470 | . . . . . . 7
⊢
((Base‘𝐶)
∈ V ∧ (Base‘𝐶) ∈ V) | 
| 25 |  | mpoexga 8102 | . . . . . . 7
⊢
(((Base‘𝐶)
∈ V ∧ (Base‘𝐶) ∈ V) → (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥))) ∈ V) | 
| 26 | 24, 25 | mp1i 13 | . . . . . 6
⊢ (𝐶 ∈ Cat → (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥))) ∈ V) | 
| 27 | 14, 21, 22, 26 | fvmptd3 7039 | . . . . 5
⊢ (𝐶 ∈ Cat →
(Inv‘𝐶) = (𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥)))) | 
| 28 | 27 | fneq1d 6661 | . . . 4
⊢ (𝐶 ∈ Cat →
((Inv‘𝐶) Fn
((Base‘𝐶) ×
(Base‘𝐶)) ↔
(𝑥 ∈ (Base‘𝐶), 𝑦 ∈ (Base‘𝐶) ↦ ((𝑥(Sect‘𝐶)𝑦) ∩ ◡(𝑦(Sect‘𝐶)𝑥))) Fn ((Base‘𝐶) × (Base‘𝐶)))) | 
| 29 | 13, 28 | mpbird 257 | . . 3
⊢ (𝐶 ∈ Cat →
(Inv‘𝐶) Fn
((Base‘𝐶) ×
(Base‘𝐶))) | 
| 30 |  | ssv 4008 | . . . 4
⊢ ran
(Inv‘𝐶) ⊆
V | 
| 31 | 30 | a1i 11 | . . 3
⊢ (𝐶 ∈ Cat → ran
(Inv‘𝐶) ⊆
V) | 
| 32 |  | fnco 6686 | . . 3
⊢ (((𝑥 ∈ V ↦ dom 𝑥) Fn V ∧ (Inv‘𝐶) Fn ((Base‘𝐶) × (Base‘𝐶)) ∧ ran (Inv‘𝐶) ⊆ V) → ((𝑥 ∈ V ↦ dom 𝑥) ∘ (Inv‘𝐶)) Fn ((Base‘𝐶) × (Base‘𝐶))) | 
| 33 | 6, 29, 31, 32 | syl3anc 1373 | . 2
⊢ (𝐶 ∈ Cat → ((𝑥 ∈ V ↦ dom 𝑥) ∘ (Inv‘𝐶)) Fn ((Base‘𝐶) × (Base‘𝐶))) | 
| 34 |  | isofval 17801 | . . 3
⊢ (𝐶 ∈ Cat →
(Iso‘𝐶) = ((𝑥 ∈ V ↦ dom 𝑥) ∘ (Inv‘𝐶))) | 
| 35 | 34 | fneq1d 6661 | . 2
⊢ (𝐶 ∈ Cat →
((Iso‘𝐶) Fn
((Base‘𝐶) ×
(Base‘𝐶)) ↔
((𝑥 ∈ V ↦ dom
𝑥) ∘ (Inv‘𝐶)) Fn ((Base‘𝐶) × (Base‘𝐶)))) | 
| 36 | 33, 35 | mpbird 257 | 1
⊢ (𝐶 ∈ Cat →
(Iso‘𝐶) Fn
((Base‘𝐶) ×
(Base‘𝐶))) |