Metamath Proof Explorer


Theorem estrcval

Description: Value of the category of extensible structures (in a universe). (Contributed by AV, 7-Mar-2020)

Ref Expression
Hypotheses estrcval.c 𝐶 = ( ExtStrCat ‘ 𝑈 )
estrcval.u ( 𝜑𝑈𝑉 )
estrcval.h ( 𝜑𝐻 = ( 𝑥𝑈 , 𝑦𝑈 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) )
estrcval.o ( 𝜑· = ( 𝑣 ∈ ( 𝑈 × 𝑈 ) , 𝑧𝑈 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) )
Assertion estrcval ( 𝜑𝐶 = { ⟨ ( Base ‘ ndx ) , 𝑈 ⟩ , ⟨ ( Hom ‘ ndx ) , 𝐻 ⟩ , ⟨ ( comp ‘ ndx ) , · ⟩ } )

Proof

Step Hyp Ref Expression
1 estrcval.c 𝐶 = ( ExtStrCat ‘ 𝑈 )
2 estrcval.u ( 𝜑𝑈𝑉 )
3 estrcval.h ( 𝜑𝐻 = ( 𝑥𝑈 , 𝑦𝑈 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) )
4 estrcval.o ( 𝜑· = ( 𝑣 ∈ ( 𝑈 × 𝑈 ) , 𝑧𝑈 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) )
5 df-estrc ExtStrCat = ( 𝑢 ∈ V ↦ { ⟨ ( Base ‘ ndx ) , 𝑢 ⟩ , ⟨ ( Hom ‘ ndx ) , ( 𝑥𝑢 , 𝑦𝑢 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) ⟩ , ⟨ ( comp ‘ ndx ) , ( 𝑣 ∈ ( 𝑢 × 𝑢 ) , 𝑧𝑢 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) ⟩ } )
6 simpr ( ( 𝜑𝑢 = 𝑈 ) → 𝑢 = 𝑈 )
7 6 opeq2d ( ( 𝜑𝑢 = 𝑈 ) → ⟨ ( Base ‘ ndx ) , 𝑢 ⟩ = ⟨ ( Base ‘ ndx ) , 𝑈 ⟩ )
8 eqidd ( ( 𝜑𝑢 = 𝑈 ) → ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) = ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) )
9 6 6 8 mpoeq123dv ( ( 𝜑𝑢 = 𝑈 ) → ( 𝑥𝑢 , 𝑦𝑢 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) = ( 𝑥𝑈 , 𝑦𝑈 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) )
10 3 adantr ( ( 𝜑𝑢 = 𝑈 ) → 𝐻 = ( 𝑥𝑈 , 𝑦𝑈 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) )
11 9 10 eqtr4d ( ( 𝜑𝑢 = 𝑈 ) → ( 𝑥𝑢 , 𝑦𝑢 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) = 𝐻 )
12 11 opeq2d ( ( 𝜑𝑢 = 𝑈 ) → ⟨ ( Hom ‘ ndx ) , ( 𝑥𝑢 , 𝑦𝑢 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) ⟩ = ⟨ ( Hom ‘ ndx ) , 𝐻 ⟩ )
13 6 sqxpeqd ( ( 𝜑𝑢 = 𝑈 ) → ( 𝑢 × 𝑢 ) = ( 𝑈 × 𝑈 ) )
14 eqidd ( ( 𝜑𝑢 = 𝑈 ) → ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) = ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) )
15 13 6 14 mpoeq123dv ( ( 𝜑𝑢 = 𝑈 ) → ( 𝑣 ∈ ( 𝑢 × 𝑢 ) , 𝑧𝑢 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) = ( 𝑣 ∈ ( 𝑈 × 𝑈 ) , 𝑧𝑈 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) )
16 4 adantr ( ( 𝜑𝑢 = 𝑈 ) → · = ( 𝑣 ∈ ( 𝑈 × 𝑈 ) , 𝑧𝑈 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) )
17 15 16 eqtr4d ( ( 𝜑𝑢 = 𝑈 ) → ( 𝑣 ∈ ( 𝑢 × 𝑢 ) , 𝑧𝑢 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) = · )
18 17 opeq2d ( ( 𝜑𝑢 = 𝑈 ) → ⟨ ( comp ‘ ndx ) , ( 𝑣 ∈ ( 𝑢 × 𝑢 ) , 𝑧𝑢 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) ⟩ = ⟨ ( comp ‘ ndx ) , · ⟩ )
19 7 12 18 tpeq123d ( ( 𝜑𝑢 = 𝑈 ) → { ⟨ ( Base ‘ ndx ) , 𝑢 ⟩ , ⟨ ( Hom ‘ ndx ) , ( 𝑥𝑢 , 𝑦𝑢 ↦ ( ( Base ‘ 𝑦 ) ↑m ( Base ‘ 𝑥 ) ) ) ⟩ , ⟨ ( comp ‘ ndx ) , ( 𝑣 ∈ ( 𝑢 × 𝑢 ) , 𝑧𝑢 ↦ ( 𝑔 ∈ ( ( Base ‘ 𝑧 ) ↑m ( Base ‘ ( 2nd𝑣 ) ) ) , 𝑓 ∈ ( ( Base ‘ ( 2nd𝑣 ) ) ↑m ( Base ‘ ( 1st𝑣 ) ) ) ↦ ( 𝑔𝑓 ) ) ) ⟩ } = { ⟨ ( Base ‘ ndx ) , 𝑈 ⟩ , ⟨ ( Hom ‘ ndx ) , 𝐻 ⟩ , ⟨ ( comp ‘ ndx ) , · ⟩ } )
20 2 elexd ( 𝜑𝑈 ∈ V )
21 tpex { ⟨ ( Base ‘ ndx ) , 𝑈 ⟩ , ⟨ ( Hom ‘ ndx ) , 𝐻 ⟩ , ⟨ ( comp ‘ ndx ) , · ⟩ } ∈ V
22 21 a1i ( 𝜑 → { ⟨ ( Base ‘ ndx ) , 𝑈 ⟩ , ⟨ ( Hom ‘ ndx ) , 𝐻 ⟩ , ⟨ ( comp ‘ ndx ) , · ⟩ } ∈ V )
23 5 19 20 22 fvmptd2 ( 𝜑 → ( ExtStrCat ‘ 𝑈 ) = { ⟨ ( Base ‘ ndx ) , 𝑈 ⟩ , ⟨ ( Hom ‘ ndx ) , 𝐻 ⟩ , ⟨ ( comp ‘ ndx ) , · ⟩ } )
24 1 23 eqtrid ( 𝜑𝐶 = { ⟨ ( Base ‘ ndx ) , 𝑈 ⟩ , ⟨ ( Hom ‘ ndx ) , 𝐻 ⟩ , ⟨ ( comp ‘ ndx ) , · ⟩ } )