Metamath Proof Explorer


Theorem swapfffth

Description: The swap functor is a fully faithful functor. (Contributed by Zhi Wang, 8-Oct-2025)

Ref Expression
Hypotheses swapfid.c ( 𝜑𝐶 ∈ Cat )
swapfid.d ( 𝜑𝐷 ∈ Cat )
swapfid.s 𝑆 = ( 𝐶 ×c 𝐷 )
swapfid.t 𝑇 = ( 𝐷 ×c 𝐶 )
swapfid.o ( 𝜑 → ( 𝐶 swapF 𝐷 ) = ⟨ 𝑂 , 𝑃 ⟩ )
Assertion swapfffth ( 𝜑𝑂 ( ( 𝑆 Full 𝑇 ) ∩ ( 𝑆 Faith 𝑇 ) ) 𝑃 )

Proof

Step Hyp Ref Expression
1 swapfid.c ( 𝜑𝐶 ∈ Cat )
2 swapfid.d ( 𝜑𝐷 ∈ Cat )
3 swapfid.s 𝑆 = ( 𝐶 ×c 𝐷 )
4 swapfid.t 𝑇 = ( 𝐷 ×c 𝐶 )
5 swapfid.o ( 𝜑 → ( 𝐶 swapF 𝐷 ) = ⟨ 𝑂 , 𝑃 ⟩ )
6 1 2 3 4 5 swapffunc ( 𝜑𝑂 ( 𝑆 Func 𝑇 ) 𝑃 )
7 5 adantr ( ( 𝜑 ∧ ( 𝑥 ∈ ( Base ‘ 𝑆 ) ∧ 𝑦 ∈ ( Base ‘ 𝑆 ) ) ) → ( 𝐶 swapF 𝐷 ) = ⟨ 𝑂 , 𝑃 ⟩ )
8 eqid ( Hom ‘ 𝑆 ) = ( Hom ‘ 𝑆 )
9 eqid ( Hom ‘ 𝑇 ) = ( Hom ‘ 𝑇 )
10 eqid ( Base ‘ 𝑆 ) = ( Base ‘ 𝑆 )
11 simprl ( ( 𝜑 ∧ ( 𝑥 ∈ ( Base ‘ 𝑆 ) ∧ 𝑦 ∈ ( Base ‘ 𝑆 ) ) ) → 𝑥 ∈ ( Base ‘ 𝑆 ) )
12 simprr ( ( 𝜑 ∧ ( 𝑥 ∈ ( Base ‘ 𝑆 ) ∧ 𝑦 ∈ ( Base ‘ 𝑆 ) ) ) → 𝑦 ∈ ( Base ‘ 𝑆 ) )
13 7 3 4 8 9 10 11 12 swapf2f1oa ( ( 𝜑 ∧ ( 𝑥 ∈ ( Base ‘ 𝑆 ) ∧ 𝑦 ∈ ( Base ‘ 𝑆 ) ) ) → ( 𝑥 𝑃 𝑦 ) : ( 𝑥 ( Hom ‘ 𝑆 ) 𝑦 ) –1-1-onto→ ( ( 𝑂𝑥 ) ( Hom ‘ 𝑇 ) ( 𝑂𝑦 ) ) )
14 13 ralrimivva ( 𝜑 → ∀ 𝑥 ∈ ( Base ‘ 𝑆 ) ∀ 𝑦 ∈ ( Base ‘ 𝑆 ) ( 𝑥 𝑃 𝑦 ) : ( 𝑥 ( Hom ‘ 𝑆 ) 𝑦 ) –1-1-onto→ ( ( 𝑂𝑥 ) ( Hom ‘ 𝑇 ) ( 𝑂𝑦 ) ) )
15 10 8 9 isffth2 ( 𝑂 ( ( 𝑆 Full 𝑇 ) ∩ ( 𝑆 Faith 𝑇 ) ) 𝑃 ↔ ( 𝑂 ( 𝑆 Func 𝑇 ) 𝑃 ∧ ∀ 𝑥 ∈ ( Base ‘ 𝑆 ) ∀ 𝑦 ∈ ( Base ‘ 𝑆 ) ( 𝑥 𝑃 𝑦 ) : ( 𝑥 ( Hom ‘ 𝑆 ) 𝑦 ) –1-1-onto→ ( ( 𝑂𝑥 ) ( Hom ‘ 𝑇 ) ( 𝑂𝑦 ) ) ) )
16 6 14 15 sylanbrc ( 𝜑𝑂 ( ( 𝑆 Full 𝑇 ) ∩ ( 𝑆 Faith 𝑇 ) ) 𝑃 )