Metamath Proof Explorer


Theorem tposcurf2

Description: Value of the transposed curry functor at a morphism. (Contributed by Zhi Wang, 10-Oct-2025)

Ref Expression
Hypotheses tposcurf2.g No typesetting found for |- ( ph -> G = ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) with typecode |-
tposcurf2.a ⊢ A = Base C
tposcurf2.c ⊢ φ → C ∈ Cat
tposcurf2.d ⊢ φ → D ∈ Cat
tposcurf2.f ⊢ φ → F ∈ D × c C Func E
tposcurf2.b ⊢ B = Base D
tposcurf2.h ⊢ H = Hom ⁡ C
tposcurf2.i ⊢ I = Id ⁡ D
tposcurf2.x ⊢ φ → X ∈ A
tposcurf2.y ⊢ φ → Y ∈ A
tposcurf2.k ⊢ φ → K ∈ X H Y
tposcurf2.l ⊢ φ → L = X 2 nd ⁡ G Y ⁡ K
Assertion tposcurf2 ⊢ φ → L = z ∈ B ⟼ I ⁡ z z X 2 nd ⁡ F z Y K

Proof

Step Hyp Ref Expression
1 tposcurf2.g Could not format ( ph -> G = ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) : No typesetting found for |- ( ph -> G = ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) with typecode |-
2 tposcurf2.a ⊢ A = Base C
3 tposcurf2.c ⊢ φ → C ∈ Cat
4 tposcurf2.d ⊢ φ → D ∈ Cat
5 tposcurf2.f ⊢ φ → F ∈ D × c C Func E
6 tposcurf2.b ⊢ B = Base D
7 tposcurf2.h ⊢ H = Hom ⁡ C
8 tposcurf2.i ⊢ I = Id ⁡ D
9 tposcurf2.x ⊢ φ → X ∈ A
10 tposcurf2.y ⊢ φ → Y ∈ A
11 tposcurf2.k ⊢ φ → K ∈ X H Y
12 tposcurf2.l ⊢ φ → L = X 2 nd ⁡ G Y ⁡ K
13 1 fveq2d Could not format ( ph -> ( 2nd ` G ) = ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) ) : No typesetting found for |- ( ph -> ( 2nd ` G ) = ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) ) with typecode |-
14 13 oveqd Could not format ( ph -> ( X ( 2nd ` G ) Y ) = ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ) : No typesetting found for |- ( ph -> ( X ( 2nd ` G ) Y ) = ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ) with typecode |-
15 14 fveq1d Could not format ( ph -> ( ( X ( 2nd ` G ) Y ) ` K ) = ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) ) : No typesetting found for |- ( ph -> ( ( X ( 2nd ` G ) Y ) ` K ) = ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) ) with typecode |-
16 12 15 eqtrd Could not format ( ph -> L = ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) ) : No typesetting found for |- ( ph -> L = ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) ) with typecode |-
17 eqid Could not format ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) = ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) : No typesetting found for |- ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) = ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) with typecode |-
18 eqidd Could not format ( ph -> ( F o.func ( C swapF D ) ) = ( F o.func ( C swapF D ) ) ) : No typesetting found for |- ( ph -> ( F o.func ( C swapF D ) ) = ( F o.func ( C swapF D ) ) ) with typecode |-
19 3 4 5 18 cofuswapfcl Could not format ( ph -> ( F o.func ( C swapF D ) ) e. ( ( C Xc. D ) Func E ) ) : No typesetting found for |- ( ph -> ( F o.func ( C swapF D ) ) e. ( ( C Xc. D ) Func E ) ) with typecode |-
20 eqid Could not format ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) = ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) : No typesetting found for |- ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) = ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) with typecode |-
21 17 2 3 4 19 6 7 8 9 10 11 20 curf2 Could not format ( ph -> ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) = ( z e. B |-> ( K ( <. X , z >. ( 2nd ` ( F o.func ( C swapF D ) ) ) <. Y , z >. ) ( I ` z ) ) ) ) : No typesetting found for |- ( ph -> ( ( X ( 2nd ` ( <. C , D >. curryF ( F o.func ( C swapF D ) ) ) ) Y ) ` K ) = ( z e. B |-> ( K ( <. X , z >. ( 2nd ` ( F o.func ( C swapF D ) ) ) <. Y , z >. ) ( I ` z ) ) ) ) with typecode |-
22 3 adantr ⊢ φ ∧ z ∈ B → C ∈ Cat
23 4 adantr ⊢ φ ∧ z ∈ B → D ∈ Cat
24 5 adantr ⊢ φ ∧ z ∈ B → F ∈ D × c C Func E
25 eqidd Could not format ( ( ph /\ z e. B ) -> ( F o.func ( C swapF D ) ) = ( F o.func ( C swapF D ) ) ) : No typesetting found for |- ( ( ph /\ z e. B ) -> ( F o.func ( C swapF D ) ) = ( F o.func ( C swapF D ) ) ) with typecode |-
26 9 adantr ⊢ φ ∧ z ∈ B → X ∈ A
27 simpr ⊢ φ ∧ z ∈ B → z ∈ B
28 10 adantr ⊢ φ ∧ z ∈ B → Y ∈ A
29 eqid ⊢ Hom ⁡ D = Hom ⁡ D
30 11 adantr ⊢ φ ∧ z ∈ B → K ∈ X H Y
31 6 29 8 23 27 catidcl ⊢ φ ∧ z ∈ B → I ⁡ z ∈ z Hom ⁡ D z
32 22 23 24 25 2 6 26 27 28 27 7 29 30 31 cofuswapf2 Could not format ( ( ph /\ z e. B ) -> ( K ( <. X , z >. ( 2nd ` ( F o.func ( C swapF D ) ) ) <. Y , z >. ) ( I ` z ) ) = ( ( I ` z ) ( <. z , X >. ( 2nd ` F ) <. z , Y >. ) K ) ) : No typesetting found for |- ( ( ph /\ z e. B ) -> ( K ( <. X , z >. ( 2nd ` ( F o.func ( C swapF D ) ) ) <. Y , z >. ) ( I ` z ) ) = ( ( I ` z ) ( <. z , X >. ( 2nd ` F ) <. z , Y >. ) K ) ) with typecode |-
33 32 mpteq2dva Could not format ( ph -> ( z e. B |-> ( K ( <. X , z >. ( 2nd ` ( F o.func ( C swapF D ) ) ) <. Y , z >. ) ( I ` z ) ) ) = ( z e. B |-> ( ( I ` z ) ( <. z , X >. ( 2nd ` F ) <. z , Y >. ) K ) ) ) : No typesetting found for |- ( ph -> ( z e. B |-> ( K ( <. X , z >. ( 2nd ` ( F o.func ( C swapF D ) ) ) <. Y , z >. ) ( I ` z ) ) ) = ( z e. B |-> ( ( I ` z ) ( <. z , X >. ( 2nd ` F ) <. z , Y >. ) K ) ) ) with typecode |-
34 16 21 33 3eqtrd ⊢ φ → L = z ∈ B ⟼ I ⁡ z z X 2 nd ⁡ F z Y K