Step |
Hyp |
Ref |
Expression |
1 |
|
oppcval.b |
⊢ 𝐵 = ( Base ‘ 𝐶 ) |
2 |
|
oppcval.h |
⊢ 𝐻 = ( Hom ‘ 𝐶 ) |
3 |
|
oppcval.x |
⊢ · = ( comp ‘ 𝐶 ) |
4 |
|
oppcval.o |
⊢ 𝑂 = ( oppCat ‘ 𝐶 ) |
5 |
|
elex |
⊢ ( 𝐶 ∈ 𝑉 → 𝐶 ∈ V ) |
6 |
|
id |
⊢ ( 𝑐 = 𝐶 → 𝑐 = 𝐶 ) |
7 |
|
fveq2 |
⊢ ( 𝑐 = 𝐶 → ( Hom ‘ 𝑐 ) = ( Hom ‘ 𝐶 ) ) |
8 |
7 2
|
eqtr4di |
⊢ ( 𝑐 = 𝐶 → ( Hom ‘ 𝑐 ) = 𝐻 ) |
9 |
8
|
tposeqd |
⊢ ( 𝑐 = 𝐶 → tpos ( Hom ‘ 𝑐 ) = tpos 𝐻 ) |
10 |
9
|
opeq2d |
⊢ ( 𝑐 = 𝐶 → 〈 ( Hom ‘ ndx ) , tpos ( Hom ‘ 𝑐 ) 〉 = 〈 ( Hom ‘ ndx ) , tpos 𝐻 〉 ) |
11 |
6 10
|
oveq12d |
⊢ ( 𝑐 = 𝐶 → ( 𝑐 sSet 〈 ( Hom ‘ ndx ) , tpos ( Hom ‘ 𝑐 ) 〉 ) = ( 𝐶 sSet 〈 ( Hom ‘ ndx ) , tpos 𝐻 〉 ) ) |
12 |
|
fveq2 |
⊢ ( 𝑐 = 𝐶 → ( Base ‘ 𝑐 ) = ( Base ‘ 𝐶 ) ) |
13 |
12 1
|
eqtr4di |
⊢ ( 𝑐 = 𝐶 → ( Base ‘ 𝑐 ) = 𝐵 ) |
14 |
13
|
sqxpeqd |
⊢ ( 𝑐 = 𝐶 → ( ( Base ‘ 𝑐 ) × ( Base ‘ 𝑐 ) ) = ( 𝐵 × 𝐵 ) ) |
15 |
|
fveq2 |
⊢ ( 𝑐 = 𝐶 → ( comp ‘ 𝑐 ) = ( comp ‘ 𝐶 ) ) |
16 |
15 3
|
eqtr4di |
⊢ ( 𝑐 = 𝐶 → ( comp ‘ 𝑐 ) = · ) |
17 |
16
|
oveqd |
⊢ ( 𝑐 = 𝐶 → ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 ( comp ‘ 𝑐 ) ( 1st ‘ 𝑢 ) ) = ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) |
18 |
17
|
tposeqd |
⊢ ( 𝑐 = 𝐶 → tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 ( comp ‘ 𝑐 ) ( 1st ‘ 𝑢 ) ) = tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) |
19 |
14 13 18
|
mpoeq123dv |
⊢ ( 𝑐 = 𝐶 → ( 𝑢 ∈ ( ( Base ‘ 𝑐 ) × ( Base ‘ 𝑐 ) ) , 𝑧 ∈ ( Base ‘ 𝑐 ) ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 ( comp ‘ 𝑐 ) ( 1st ‘ 𝑢 ) ) ) = ( 𝑢 ∈ ( 𝐵 × 𝐵 ) , 𝑧 ∈ 𝐵 ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) ) |
20 |
19
|
opeq2d |
⊢ ( 𝑐 = 𝐶 → 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( ( Base ‘ 𝑐 ) × ( Base ‘ 𝑐 ) ) , 𝑧 ∈ ( Base ‘ 𝑐 ) ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 ( comp ‘ 𝑐 ) ( 1st ‘ 𝑢 ) ) ) 〉 = 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( 𝐵 × 𝐵 ) , 𝑧 ∈ 𝐵 ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) 〉 ) |
21 |
11 20
|
oveq12d |
⊢ ( 𝑐 = 𝐶 → ( ( 𝑐 sSet 〈 ( Hom ‘ ndx ) , tpos ( Hom ‘ 𝑐 ) 〉 ) sSet 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( ( Base ‘ 𝑐 ) × ( Base ‘ 𝑐 ) ) , 𝑧 ∈ ( Base ‘ 𝑐 ) ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 ( comp ‘ 𝑐 ) ( 1st ‘ 𝑢 ) ) ) 〉 ) = ( ( 𝐶 sSet 〈 ( Hom ‘ ndx ) , tpos 𝐻 〉 ) sSet 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( 𝐵 × 𝐵 ) , 𝑧 ∈ 𝐵 ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) 〉 ) ) |
22 |
|
df-oppc |
⊢ oppCat = ( 𝑐 ∈ V ↦ ( ( 𝑐 sSet 〈 ( Hom ‘ ndx ) , tpos ( Hom ‘ 𝑐 ) 〉 ) sSet 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( ( Base ‘ 𝑐 ) × ( Base ‘ 𝑐 ) ) , 𝑧 ∈ ( Base ‘ 𝑐 ) ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 ( comp ‘ 𝑐 ) ( 1st ‘ 𝑢 ) ) ) 〉 ) ) |
23 |
|
ovex |
⊢ ( ( 𝐶 sSet 〈 ( Hom ‘ ndx ) , tpos 𝐻 〉 ) sSet 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( 𝐵 × 𝐵 ) , 𝑧 ∈ 𝐵 ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) 〉 ) ∈ V |
24 |
21 22 23
|
fvmpt |
⊢ ( 𝐶 ∈ V → ( oppCat ‘ 𝐶 ) = ( ( 𝐶 sSet 〈 ( Hom ‘ ndx ) , tpos 𝐻 〉 ) sSet 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( 𝐵 × 𝐵 ) , 𝑧 ∈ 𝐵 ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) 〉 ) ) |
25 |
5 24
|
syl |
⊢ ( 𝐶 ∈ 𝑉 → ( oppCat ‘ 𝐶 ) = ( ( 𝐶 sSet 〈 ( Hom ‘ ndx ) , tpos 𝐻 〉 ) sSet 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( 𝐵 × 𝐵 ) , 𝑧 ∈ 𝐵 ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) 〉 ) ) |
26 |
4 25
|
eqtrid |
⊢ ( 𝐶 ∈ 𝑉 → 𝑂 = ( ( 𝐶 sSet 〈 ( Hom ‘ ndx ) , tpos 𝐻 〉 ) sSet 〈 ( comp ‘ ndx ) , ( 𝑢 ∈ ( 𝐵 × 𝐵 ) , 𝑧 ∈ 𝐵 ↦ tpos ( 〈 𝑧 , ( 2nd ‘ 𝑢 ) 〉 · ( 1st ‘ 𝑢 ) ) ) 〉 ) ) |