Metamath Proof Explorer


Theorem setc1onsubc

Description: Construct a category with one object and two morphisms and prove that category ( SetCat1o ) satisfies all conditions for a subcategory but the compatibility of identity morphisms, showing the necessity of the latter condition in defining a subcategory. Exercise 4A of Adamek p. 58. (Contributed by Zhi Wang, 6-Nov-2025)

Ref Expression
Hypotheses setc1onsubc.c ⊢ C = Base ndx ∅ Hom ⁡ ndx ∅ ∅ 2 𝑜 comp ⁡ ndx ∅ ∅ ∅ · ˙
setc1onsubc.x ⊢ · ˙ = f ∈ 2 𝑜 , g ∈ 2 𝑜 ⟼ f ∩ g
setc1onsubc.e ⊢ E = SetCat ⁡ 1 𝑜
setc1onsubc.j ⊢ J = Hom 𝑓 ⁡ E
setc1onsubc.s ⊢ S = 1 𝑜
setc1onsubc.h ⊢ H = Hom 𝑓 ⁡ C
setc1onsubc.i ⊢ 1 ˙ = Id ⁡ C
setc1onsubc.d ⊢ D = C ↾ cat J
Assertion setc1onsubc ⊢ C ∈ Cat ∧ J Fn S × S ∧ J ⊆ cat H ∧ ¬ ∀ x ∈ S 1 ˙ ⁡ x ∈ x J x ∧ D ∈ Cat

Proof

Step Hyp Ref Expression
1 setc1onsubc.c ⊢ C = Base ndx ∅ Hom ⁡ ndx ∅ ∅ 2 𝑜 comp ⁡ ndx ∅ ∅ ∅ · ˙
2 setc1onsubc.x ⊢ · ˙ = f ∈ 2 𝑜 , g ∈ 2 𝑜 ⟼ f ∩ g
3 setc1onsubc.e ⊢ E = SetCat ⁡ 1 𝑜
4 setc1onsubc.j ⊢ J = Hom 𝑓 ⁡ E
5 setc1onsubc.s ⊢ S = 1 𝑜
6 setc1onsubc.h ⊢ H = Hom 𝑓 ⁡ C
7 setc1onsubc.i ⊢ 1 ˙ = Id ⁡ C
8 setc1onsubc.d ⊢ D = C ↾ cat J
9 0ss ⊢ ∅ ⊆ 1 𝑜
10 1oex ⊢ 1 𝑜 ∈ V
11 df2o3 ⊢ 2 𝑜 = ∅ 1 𝑜
12 1 11 2 incat ⊢ ∅ ⊆ 1 𝑜 ∧ 1 𝑜 ∈ V → C ∈ Cat ∧ Id ⁡ C = y ∈ ∅ ⟼ 1 𝑜
13 9 10 12 mp2an ⊢ C ∈ Cat ∧ Id ⁡ C = y ∈ ∅ ⟼ 1 𝑜
14 13 simpli ⊢ C ∈ Cat
15 3 setc1obas ⊢ 1 𝑜 = Base E
16 5 15 eqtri ⊢ S = Base E
17 4 16 homffn ⊢ J Fn S × S
18 ssid ⊢ ∅ ⊆ ∅
19 snsspr1 ⊢ ∅ ⊆ ∅ 1 𝑜
20 3 setc1ohomfval ⊢ ∅ ∅ 1 𝑜 = Hom ⁡ E
21 0lt1o ⊢ ∅ ∈ 1 𝑜
22 21 a1i ⊢ ⊤ → ∅ ∈ 1 𝑜
23 4 15 20 22 22 homfval ⊢ ⊤ → ∅ J ∅ = ∅ ∅ ∅ 1 𝑜 ∅
24 23 mptru ⊢ ∅ J ∅ = ∅ ∅ ∅ 1 𝑜 ∅
25 10 ovsn2 ⊢ ∅ ∅ ∅ 1 𝑜 ∅ = 1 𝑜
26 df1o2 ⊢ 1 𝑜 = ∅
27 24 25 26 3eqtri ⊢ ∅ J ∅ = ∅
28 snex ⊢ ∅ ∈ V
29 1 28 catbas ⊢ ∅ = Base C
30 snex ⊢ ∅ ∅ 2 𝑜 ∈ V
31 1 30 cathomfval ⊢ ∅ ∅ 2 𝑜 = Hom ⁡ C
32 0ex ⊢ ∅ ∈ V
33 32 snid ⊢ ∅ ∈ ∅
34 33 a1i ⊢ ⊤ → ∅ ∈ ∅
35 6 29 31 34 34 homfval ⊢ ⊤ → ∅ H ∅ = ∅ ∅ ∅ 2 𝑜 ∅
36 35 mptru ⊢ ∅ H ∅ = ∅ ∅ ∅ 2 𝑜 ∅
37 2oex ⊢ 2 𝑜 ∈ V
38 37 ovsn2 ⊢ ∅ ∅ ∅ 2 𝑜 ∅ = 2 𝑜
39 36 38 11 3eqtri ⊢ ∅ H ∅ = ∅ 1 𝑜
40 19 27 39 3sstr4i ⊢ ∅ J ∅ ⊆ ∅ H ∅
41 oveq1 ⊢ p = ∅ → p J q = ∅ J q
42 oveq1 ⊢ p = ∅ → p H q = ∅ H q
43 41 42 sseq12d ⊢ p = ∅ → p J q ⊆ p H q ↔ ∅ J q ⊆ ∅ H q
44 43 ralbidv ⊢ p = ∅ → ∀ q ∈ ∅ p J q ⊆ p H q ↔ ∀ q ∈ ∅ ∅ J q ⊆ ∅ H q
45 32 44 ralsn ⊢ ∀ p ∈ ∅ ∀ q ∈ ∅ p J q ⊆ p H q ↔ ∀ q ∈ ∅ ∅ J q ⊆ ∅ H q
46 oveq2 ⊢ q = ∅ → ∅ J q = ∅ J ∅
47 oveq2 ⊢ q = ∅ → ∅ H q = ∅ H ∅
48 46 47 sseq12d ⊢ q = ∅ → ∅ J q ⊆ ∅ H q ↔ ∅ J ∅ ⊆ ∅ H ∅
49 32 48 ralsn ⊢ ∀ q ∈ ∅ ∅ J q ⊆ ∅ H q ↔ ∅ J ∅ ⊆ ∅ H ∅
50 45 49 bitri ⊢ ∀ p ∈ ∅ ∀ q ∈ ∅ p J q ⊆ p H q ↔ ∅ J ∅ ⊆ ∅ H ∅
51 40 50 mpbir ⊢ ∀ p ∈ ∅ ∀ q ∈ ∅ p J q ⊆ p H q
52 26 15 eqtr3i ⊢ ∅ = Base E
53 4 52 homffn ⊢ J Fn ∅ × ∅
54 53 a1i ⊢ ⊤ → J Fn ∅ × ∅
55 6 29 homffn ⊢ H Fn ∅ × ∅
56 55 a1i ⊢ ⊤ → H Fn ∅ × ∅
57 28 a1i ⊢ ⊤ → ∅ ∈ V
58 54 56 57 isssc ⊢ ⊤ → J ⊆ cat H ↔ ∅ ⊆ ∅ ∧ ∀ p ∈ ∅ ∀ q ∈ ∅ p J q ⊆ p H q
59 58 mptru ⊢ J ⊆ cat H ↔ ∅ ⊆ ∅ ∧ ∀ p ∈ ∅ ∀ q ∈ ∅ p J q ⊆ p H q
60 18 51 59 mpbir2an ⊢ J ⊆ cat H
61 1on ⊢ 1 𝑜 ∈ On
62 26 61 eqeltrri ⊢ ∅ ∈ On
63 62 onirri ⊢ ¬ ∅ ∈ ∅
64 5 26 eqtri ⊢ S = ∅
65 biid ⊢ ¬ 1 ˙ ⁡ x ∈ x J x ↔ ¬ 1 ˙ ⁡ x ∈ x J x
66 64 65 rexeqbii ⊢ ∃ x ∈ S ¬ 1 ˙ ⁡ x ∈ x J x ↔ ∃ x ∈ ∅ ¬ 1 ˙ ⁡ x ∈ x J x
67 rexnal ⊢ ∃ x ∈ S ¬ 1 ˙ ⁡ x ∈ x J x ↔ ¬ ∀ x ∈ S 1 ˙ ⁡ x ∈ x J x
68 fveq2 ⊢ x = ∅ → 1 ˙ ⁡ x = 1 ˙ ⁡ ∅
69 26 a1i ⊢ y = ∅ → 1 𝑜 = ∅
70 13 simpri ⊢ Id ⁡ C = y ∈ ∅ ⟼ 1 𝑜
71 7 70 eqtri ⊢ 1 ˙ = y ∈ ∅ ⟼ 1 𝑜
72 69 71 28 fvmpt ⊢ ∅ ∈ ∅ → 1 ˙ ⁡ ∅ = ∅
73 33 72 ax-mp ⊢ 1 ˙ ⁡ ∅ = ∅
74 68 73 eqtrdi ⊢ x = ∅ → 1 ˙ ⁡ x = ∅
75 oveq12 ⊢ x = ∅ ∧ x = ∅ → x J x = ∅ J ∅
76 75 anidms ⊢ x = ∅ → x J x = ∅ J ∅
77 76 27 eqtrdi ⊢ x = ∅ → x J x = ∅
78 74 77 eleq12d ⊢ x = ∅ → 1 ˙ ⁡ x ∈ x J x ↔ ∅ ∈ ∅
79 78 notbid ⊢ x = ∅ → ¬ 1 ˙ ⁡ x ∈ x J x ↔ ¬ ∅ ∈ ∅
80 32 79 rexsn ⊢ ∃ x ∈ ∅ ¬ 1 ˙ ⁡ x ∈ x J x ↔ ¬ ∅ ∈ ∅
81 66 67 80 3bitr3ri ⊢ ¬ ∅ ∈ ∅ ↔ ¬ ∀ x ∈ S 1 ˙ ⁡ x ∈ x J x
82 63 81 mpbi ⊢ ¬ ∀ x ∈ S 1 ˙ ⁡ x ∈ x J x
83 setc1oterm Could not format ( SetCat ` 1o ) e. TermCat : No typesetting found for |- ( SetCat ` 1o ) e. TermCat with typecode |-
84 83 a1i Could not format ( T. -> ( SetCat ` 1o ) e. TermCat ) : No typesetting found for |- ( T. -> ( SetCat ` 1o ) e. TermCat ) with typecode |-
85 84 termccatd ⊢ ⊤ → SetCat ⁡ 1 𝑜 ∈ Cat
86 85 mptru ⊢ SetCat ⁡ 1 𝑜 ∈ Cat
87 3 86 eqeltri ⊢ E ∈ Cat
88 snex ⊢ ∅ ∅ ∅ · ˙ ∈ V
89 1 88 catcofval ⊢ ∅ ∅ ∅ · ˙ = comp ⁡ C
90 3 setc1ocofval ⊢ ∅ ∅ ∅ ∅ ∅ ∅ = comp ⁡ E
91 velsn ⊢ a ∈ ∅ ↔ a = ∅
92 velsn ⊢ b ∈ ∅ ↔ b = ∅
93 velsn ⊢ c ∈ ∅ ↔ c = ∅
94 91 92 93 3anbi123i ⊢ a ∈ ∅ ∧ b ∈ ∅ ∧ c ∈ ∅ ↔ a = ∅ ∧ b = ∅ ∧ c = ∅
95 94 anbi1i ⊢ a ∈ ∅ ∧ b ∈ ∅ ∧ c ∈ ∅ ∧ m ∈ a J b ∧ n ∈ b J c ↔ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m ∈ a J b ∧ n ∈ b J c
96 simp1 ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → a = ∅
97 simp2 ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → b = ∅
98 96 97 oveq12d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → a J b = ∅ J ∅
99 98 27 eqtrdi ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → a J b = ∅
100 99 eleq2d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → m ∈ a J b ↔ m ∈ ∅
101 velsn ⊢ m ∈ ∅ ↔ m = ∅
102 100 101 bitrdi ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → m ∈ a J b ↔ m = ∅
103 simp3 ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → c = ∅
104 97 103 oveq12d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → b J c = ∅ J ∅
105 104 27 eqtrdi ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → b J c = ∅
106 105 eleq2d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → n ∈ b J c ↔ n ∈ ∅
107 velsn ⊢ n ∈ ∅ ↔ n = ∅
108 106 107 bitrdi ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → n ∈ b J c ↔ n = ∅
109 102 108 anbi12d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ → m ∈ a J b ∧ n ∈ b J c ↔ m = ∅ ∧ n = ∅
110 109 pm5.32i ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m ∈ a J b ∧ n ∈ b J c ↔ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅
111 95 110 bitri ⊢ a ∈ ∅ ∧ b ∈ ∅ ∧ c ∈ ∅ ∧ m ∈ a J b ∧ n ∈ b J c ↔ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅
112 32 prid1 ⊢ ∅ ∈ ∅ 1 𝑜
113 112 11 eleqtrri ⊢ ∅ ∈ 2 𝑜
114 ineq12 ⊢ f = ∅ ∧ g = ∅ → f ∩ g = ∅ ∩ ∅
115 0in ⊢ ∅ ∩ ∅ = ∅
116 114 115 eqtrdi ⊢ f = ∅ ∧ g = ∅ → f ∩ g = ∅
117 116 2 32 ovmpoa ⊢ ∅ ∈ 2 𝑜 ∧ ∅ ∈ 2 𝑜 → ∅ · ˙ ∅ = ∅
118 113 113 117 mp2an ⊢ ∅ · ˙ ∅ = ∅
119 32 ovsn2 ⊢ ∅ ∅ ∅ ∅ ∅ = ∅
120 118 119 eqtr4i ⊢ ∅ · ˙ ∅ = ∅ ∅ ∅ ∅ ∅
121 simpl1 ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → a = ∅
122 simpl2 ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → b = ∅
123 121 122 opeq12d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → a b = ∅ ∅
124 simpl3 ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → c = ∅
125 123 124 oveq12d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → a b ∅ ∅ ∅ · ˙ c = ∅ ∅ ∅ ∅ ∅ · ˙ ∅
126 37 37 mpoex ⊢ f ∈ 2 𝑜 , g ∈ 2 𝑜 ⟼ f ∩ g ∈ V
127 2 126 eqeltri ⊢ · ˙ ∈ V
128 127 ovsn2 ⊢ ∅ ∅ ∅ ∅ ∅ · ˙ ∅ = · ˙
129 125 128 eqtrdi ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → a b ∅ ∅ ∅ · ˙ c = · ˙
130 simprr ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → n = ∅
131 simprl ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → m = ∅
132 129 130 131 oveq123d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → n a b ∅ ∅ ∅ · ˙ c m = ∅ · ˙ ∅
133 123 124 oveq12d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → a b ∅ ∅ ∅ ∅ ∅ ∅ c = ∅ ∅ ∅ ∅ ∅ ∅ ∅ ∅ ∅
134 snex ⊢ ∅ ∅ ∅ ∈ V
135 134 ovsn2 ⊢ ∅ ∅ ∅ ∅ ∅ ∅ ∅ ∅ ∅ = ∅ ∅ ∅
136 133 135 eqtrdi ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → a b ∅ ∅ ∅ ∅ ∅ ∅ c = ∅ ∅ ∅
137 136 130 131 oveq123d ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → n a b ∅ ∅ ∅ ∅ ∅ ∅ c m = ∅ ∅ ∅ ∅ ∅
138 120 132 137 3eqtr4a ⊢ a = ∅ ∧ b = ∅ ∧ c = ∅ ∧ m = ∅ ∧ n = ∅ → n a b ∅ ∅ ∅ · ˙ c m = n a b ∅ ∅ ∅ ∅ ∅ ∅ c m
139 111 138 sylbi ⊢ a ∈ ∅ ∧ b ∈ ∅ ∧ c ∈ ∅ ∧ m ∈ a J b ∧ n ∈ b J c → n a b ∅ ∅ ∅ · ˙ c m = n a b ∅ ∅ ∅ ∅ ∅ ∅ c m
140 139 adantll ⊢ ⊤ ∧ a ∈ ∅ ∧ b ∈ ∅ ∧ c ∈ ∅ ∧ m ∈ a J b ∧ n ∈ b J c → n a b ∅ ∅ ∅ · ˙ c m = n a b ∅ ∅ ∅ ∅ ∅ ∅ c m
141 87 a1i ⊢ ⊤ → E ∈ Cat
142 18 a1i ⊢ ⊤ → ∅ ⊆ ∅
143 8 29 52 4 89 90 140 141 142 resccat ⊢ ⊤ → D ∈ Cat ↔ E ∈ Cat
144 143 mptru ⊢ D ∈ Cat ↔ E ∈ Cat
145 87 144 mpbir ⊢ D ∈ Cat
146 60 82 145 3pm3.2i ⊢ J ⊆ cat H ∧ ¬ ∀ x ∈ S 1 ˙ ⁡ x ∈ x J x ∧ D ∈ Cat
147 14 17 146 3pm3.2i ⊢ C ∈ Cat ∧ J Fn S × S ∧ J ⊆ cat H ∧ ¬ ∀ x ∈ S 1 ˙ ⁡ x ∈ x J x ∧ D ∈ Cat