Step |
Hyp |
Ref |
Expression |
1 |
|
coafval.o |
⊢ · = ( compa ‘ 𝐶 ) |
2 |
|
coafval.a |
⊢ 𝐴 = ( Arrow ‘ 𝐶 ) |
3 |
|
coafval.x |
⊢ ∙ = ( comp ‘ 𝐶 ) |
4 |
|
fveq2 |
⊢ ( 𝑐 = 𝐶 → ( Arrow ‘ 𝑐 ) = ( Arrow ‘ 𝐶 ) ) |
5 |
4 2
|
eqtr4di |
⊢ ( 𝑐 = 𝐶 → ( Arrow ‘ 𝑐 ) = 𝐴 ) |
6 |
5
|
rabeqdv |
⊢ ( 𝑐 = 𝐶 → { ℎ ∈ ( Arrow ‘ 𝑐 ) ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } = { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ) |
7 |
|
fveq2 |
⊢ ( 𝑐 = 𝐶 → ( comp ‘ 𝑐 ) = ( comp ‘ 𝐶 ) ) |
8 |
7 3
|
eqtr4di |
⊢ ( 𝑐 = 𝐶 → ( comp ‘ 𝑐 ) = ∙ ) |
9 |
8
|
oveqd |
⊢ ( 𝑐 = 𝐶 → ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ( comp ‘ 𝑐 ) ( coda ‘ 𝑔 ) ) = ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ) |
10 |
9
|
oveqd |
⊢ ( 𝑐 = 𝐶 → ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ( comp ‘ 𝑐 ) ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) = ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) ) |
11 |
10
|
oteq3d |
⊢ ( 𝑐 = 𝐶 → 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ( comp ‘ 𝑐 ) ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 = 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) |
12 |
5 6 11
|
mpoeq123dv |
⊢ ( 𝑐 = 𝐶 → ( 𝑔 ∈ ( Arrow ‘ 𝑐 ) , 𝑓 ∈ { ℎ ∈ ( Arrow ‘ 𝑐 ) ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ( comp ‘ 𝑐 ) ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) = ( 𝑔 ∈ 𝐴 , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) ) |
13 |
|
df-coa |
⊢ compa = ( 𝑐 ∈ Cat ↦ ( 𝑔 ∈ ( Arrow ‘ 𝑐 ) , 𝑓 ∈ { ℎ ∈ ( Arrow ‘ 𝑐 ) ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ( comp ‘ 𝑐 ) ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) ) |
14 |
2
|
fvexi |
⊢ 𝐴 ∈ V |
15 |
14
|
rabex |
⊢ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ∈ V |
16 |
14 15
|
mpoex |
⊢ ( 𝑔 ∈ 𝐴 , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) ∈ V |
17 |
12 13 16
|
fvmpt |
⊢ ( 𝐶 ∈ Cat → ( compa ‘ 𝐶 ) = ( 𝑔 ∈ 𝐴 , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) ) |
18 |
13
|
fvmptndm |
⊢ ( ¬ 𝐶 ∈ Cat → ( compa ‘ 𝐶 ) = ∅ ) |
19 |
2
|
arwrcl |
⊢ ( 𝑓 ∈ 𝐴 → 𝐶 ∈ Cat ) |
20 |
19
|
con3i |
⊢ ( ¬ 𝐶 ∈ Cat → ¬ 𝑓 ∈ 𝐴 ) |
21 |
20
|
eq0rdv |
⊢ ( ¬ 𝐶 ∈ Cat → 𝐴 = ∅ ) |
22 |
|
eqidd |
⊢ ( ¬ 𝐶 ∈ Cat → { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } = { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ) |
23 |
|
eqidd |
⊢ ( ¬ 𝐶 ∈ Cat → 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 = 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) |
24 |
21 22 23
|
mpoeq123dv |
⊢ ( ¬ 𝐶 ∈ Cat → ( 𝑔 ∈ 𝐴 , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) = ( 𝑔 ∈ ∅ , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) ) |
25 |
|
mpo0 |
⊢ ( 𝑔 ∈ ∅ , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) = ∅ |
26 |
24 25
|
eqtrdi |
⊢ ( ¬ 𝐶 ∈ Cat → ( 𝑔 ∈ 𝐴 , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) = ∅ ) |
27 |
18 26
|
eqtr4d |
⊢ ( ¬ 𝐶 ∈ Cat → ( compa ‘ 𝐶 ) = ( 𝑔 ∈ 𝐴 , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) ) |
28 |
17 27
|
pm2.61i |
⊢ ( compa ‘ 𝐶 ) = ( 𝑔 ∈ 𝐴 , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) |
29 |
1 28
|
eqtri |
⊢ · = ( 𝑔 ∈ 𝐴 , 𝑓 ∈ { ℎ ∈ 𝐴 ∣ ( coda ‘ ℎ ) = ( doma ‘ 𝑔 ) } ↦ 〈 ( doma ‘ 𝑓 ) , ( coda ‘ 𝑔 ) , ( ( 2nd ‘ 𝑔 ) ( 〈 ( doma ‘ 𝑓 ) , ( doma ‘ 𝑔 ) 〉 ∙ ( coda ‘ 𝑔 ) ) ( 2nd ‘ 𝑓 ) ) 〉 ) |