Metamath Proof Explorer


Theorem functhinclem1

Description: Lemma for functhinc . Given the object part, there is only one possible morphism part such that the mapped morphism is in its corresponding hom-set. (Contributed by Zhi Wang, 1-Oct-2024)

Ref Expression
Hypotheses functhinclem1.b 𝐵 = ( Base ‘ 𝐷 )
functhinclem1.c 𝐶 = ( Base ‘ 𝐸 )
functhinclem1.h 𝐻 = ( Hom ‘ 𝐷 )
functhinclem1.j 𝐽 = ( Hom ‘ 𝐸 )
functhinclem1.e ( 𝜑𝐸 ∈ ThinCat )
functhinclem1.f ( 𝜑𝐹 : 𝐵𝐶 )
functhinclem1.k 𝐾 = ( 𝑥𝐵 , 𝑦𝐵 ↦ ( ( 𝑥 𝐻 𝑦 ) × ( ( 𝐹𝑥 ) 𝐽 ( 𝐹𝑦 ) ) ) )
functhinclem1.1 ( ( 𝜑 ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) = ∅ → ( 𝑧 𝐻 𝑤 ) = ∅ ) )
Assertion functhinclem1 ( 𝜑 → ( ( 𝐺 ∈ V ∧ 𝐺 Fn ( 𝐵 × 𝐵 ) ∧ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ↔ 𝐺 = 𝐾 ) )

Proof

Step Hyp Ref Expression
1 functhinclem1.b 𝐵 = ( Base ‘ 𝐷 )
2 functhinclem1.c 𝐶 = ( Base ‘ 𝐸 )
3 functhinclem1.h 𝐻 = ( Hom ‘ 𝐷 )
4 functhinclem1.j 𝐽 = ( Hom ‘ 𝐸 )
5 functhinclem1.e ( 𝜑𝐸 ∈ ThinCat )
6 functhinclem1.f ( 𝜑𝐹 : 𝐵𝐶 )
7 functhinclem1.k 𝐾 = ( 𝑥𝐵 , 𝑦𝐵 ↦ ( ( 𝑥 𝐻 𝑦 ) × ( ( 𝐹𝑥 ) 𝐽 ( 𝐹𝑦 ) ) ) )
8 functhinclem1.1 ( ( 𝜑 ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) = ∅ → ( 𝑧 𝐻 𝑤 ) = ∅ ) )
9 simpl ( ( 𝜑 ∧ ( 𝐺 ∈ V ∧ 𝐺 Fn ( 𝐵 × 𝐵 ) ∧ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ) → 𝜑 )
10 simpr2 ( ( 𝜑 ∧ ( 𝐺 ∈ V ∧ 𝐺 Fn ( 𝐵 × 𝐵 ) ∧ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ) → 𝐺 Fn ( 𝐵 × 𝐵 ) )
11 simpr3 ( ( 𝜑 ∧ ( 𝐺 ∈ V ∧ 𝐺 Fn ( 𝐵 × 𝐵 ) ∧ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ) → ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) )
12 eqid ( ( 𝑧 𝐻 𝑤 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) = ( ( 𝑧 𝐻 𝑤 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) )
13 8 adantlr ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) = ∅ → ( 𝑧 𝐻 𝑤 ) = ∅ ) )
14 5 ad2antrr ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → 𝐸 ∈ ThinCat )
15 6 ad2antrr ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → 𝐹 : 𝐵𝐶 )
16 simprl ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → 𝑧𝐵 )
17 15 16 ffvelrnd ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( 𝐹𝑧 ) ∈ 𝐶 )
18 simprr ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → 𝑤𝐵 )
19 15 18 ffvelrnd ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( 𝐹𝑤 ) ∈ 𝐶 )
20 14 17 19 2 4 thincmo ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ∃* 𝑚 𝑚 ∈ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) )
21 12 13 20 mofeu ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ↔ ( 𝑧 𝐺 𝑤 ) = ( ( 𝑧 𝐻 𝑤 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ) )
22 oveq1 ( 𝑥 = 𝑧 → ( 𝑥 𝐻 𝑦 ) = ( 𝑧 𝐻 𝑦 ) )
23 fveq2 ( 𝑥 = 𝑧 → ( 𝐹𝑥 ) = ( 𝐹𝑧 ) )
24 23 oveq1d ( 𝑥 = 𝑧 → ( ( 𝐹𝑥 ) 𝐽 ( 𝐹𝑦 ) ) = ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑦 ) ) )
25 22 24 xpeq12d ( 𝑥 = 𝑧 → ( ( 𝑥 𝐻 𝑦 ) × ( ( 𝐹𝑥 ) 𝐽 ( 𝐹𝑦 ) ) ) = ( ( 𝑧 𝐻 𝑦 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑦 ) ) ) )
26 oveq2 ( 𝑦 = 𝑤 → ( 𝑧 𝐻 𝑦 ) = ( 𝑧 𝐻 𝑤 ) )
27 fveq2 ( 𝑦 = 𝑤 → ( 𝐹𝑦 ) = ( 𝐹𝑤 ) )
28 27 oveq2d ( 𝑦 = 𝑤 → ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑦 ) ) = ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) )
29 26 28 xpeq12d ( 𝑦 = 𝑤 → ( ( 𝑧 𝐻 𝑦 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑦 ) ) ) = ( ( 𝑧 𝐻 𝑤 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) )
30 ovex ( 𝑧 𝐻 𝑤 ) ∈ V
31 ovex ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ∈ V
32 30 31 xpex ( ( 𝑧 𝐻 𝑤 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ∈ V
33 25 29 7 32 ovmpo ( ( 𝑧𝐵𝑤𝐵 ) → ( 𝑧 𝐾 𝑤 ) = ( ( 𝑧 𝐻 𝑤 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) )
34 33 adantl ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( 𝑧 𝐾 𝑤 ) = ( ( 𝑧 𝐻 𝑤 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) )
35 34 eqeq2d ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( ( 𝑧 𝐺 𝑤 ) = ( 𝑧 𝐾 𝑤 ) ↔ ( 𝑧 𝐺 𝑤 ) = ( ( 𝑧 𝐻 𝑤 ) × ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ) )
36 21 35 bitr4d ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ( 𝑧𝐵𝑤𝐵 ) ) → ( ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ↔ ( 𝑧 𝐺 𝑤 ) = ( 𝑧 𝐾 𝑤 ) ) )
37 36 2ralbidva ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) → ( ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ↔ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) = ( 𝑧 𝐾 𝑤 ) ) )
38 simpr ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) → 𝐺 Fn ( 𝐵 × 𝐵 ) )
39 ovex ( 𝑥 𝐻 𝑦 ) ∈ V
40 ovex ( ( 𝐹𝑥 ) 𝐽 ( 𝐹𝑦 ) ) ∈ V
41 39 40 xpex ( ( 𝑥 𝐻 𝑦 ) × ( ( 𝐹𝑥 ) 𝐽 ( 𝐹𝑦 ) ) ) ∈ V
42 7 41 fnmpoi 𝐾 Fn ( 𝐵 × 𝐵 )
43 eqfnov2 ( ( 𝐺 Fn ( 𝐵 × 𝐵 ) ∧ 𝐾 Fn ( 𝐵 × 𝐵 ) ) → ( 𝐺 = 𝐾 ↔ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) = ( 𝑧 𝐾 𝑤 ) ) )
44 38 42 43 sylancl ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) → ( 𝐺 = 𝐾 ↔ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) = ( 𝑧 𝐾 𝑤 ) ) )
45 37 44 bitr4d ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) → ( ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ↔ 𝐺 = 𝐾 ) )
46 45 biimpa ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) → 𝐺 = 𝐾 )
47 9 10 11 46 syl21anc ( ( 𝜑 ∧ ( 𝐺 ∈ V ∧ 𝐺 Fn ( 𝐵 × 𝐵 ) ∧ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ) → 𝐺 = 𝐾 )
48 1 fvexi 𝐵 ∈ V
49 48 48 mpoex ( 𝑥𝐵 , 𝑦𝐵 ↦ ( ( 𝑥 𝐻 𝑦 ) × ( ( 𝐹𝑥 ) 𝐽 ( 𝐹𝑦 ) ) ) ) ∈ V
50 7 49 eqeltri 𝐾 ∈ V
51 eleq1 ( 𝐺 = 𝐾 → ( 𝐺 ∈ V ↔ 𝐾 ∈ V ) )
52 50 51 mpbiri ( 𝐺 = 𝐾𝐺 ∈ V )
53 52 adantl ( ( 𝜑𝐺 = 𝐾 ) → 𝐺 ∈ V )
54 fneq1 ( 𝐺 = 𝐾 → ( 𝐺 Fn ( 𝐵 × 𝐵 ) ↔ 𝐾 Fn ( 𝐵 × 𝐵 ) ) )
55 42 54 mpbiri ( 𝐺 = 𝐾𝐺 Fn ( 𝐵 × 𝐵 ) )
56 55 adantl ( ( 𝜑𝐺 = 𝐾 ) → 𝐺 Fn ( 𝐵 × 𝐵 ) )
57 simpl ( ( 𝜑𝐺 = 𝐾 ) → 𝜑 )
58 simpr ( ( 𝜑𝐺 = 𝐾 ) → 𝐺 = 𝐾 )
59 45 biimpar ( ( ( 𝜑𝐺 Fn ( 𝐵 × 𝐵 ) ) ∧ 𝐺 = 𝐾 ) → ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) )
60 57 56 58 59 syl21anc ( ( 𝜑𝐺 = 𝐾 ) → ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) )
61 53 56 60 3jca ( ( 𝜑𝐺 = 𝐾 ) → ( 𝐺 ∈ V ∧ 𝐺 Fn ( 𝐵 × 𝐵 ) ∧ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) )
62 47 61 impbida ( 𝜑 → ( ( 𝐺 ∈ V ∧ 𝐺 Fn ( 𝐵 × 𝐵 ) ∧ ∀ 𝑧𝐵𝑤𝐵 ( 𝑧 𝐺 𝑤 ) : ( 𝑧 𝐻 𝑤 ) ⟶ ( ( 𝐹𝑧 ) 𝐽 ( 𝐹𝑤 ) ) ) ↔ 𝐺 = 𝐾 ) )