Metamath Proof Explorer


Theorem fullsetcestrc

Description: The "embedding functor" from the category of sets into the category of extensible structures which sends each set to an extensible structure consisting of the base set slot only is full. (Contributed by AV, 1-Apr-2020)

Ref Expression
Hypotheses funcsetcestrc.s ⊢ S = SetCat ⁡ U
funcsetcestrc.c ⊢ C = Base S
funcsetcestrc.f ⊢ φ → F = x ∈ C ⟼ Base ndx x
funcsetcestrc.u ⊢ φ → U ∈ WUni
funcsetcestrc.o ⊢ φ → ω ∈ U
funcsetcestrc.g ⊢ φ → G = x ∈ C , y ∈ C ⟼ I ↾ y x
funcsetcestrc.e ⊢ E = ExtStrCat ⁡ U
Assertion fullsetcestrc ⊢ φ → F S Full E G

Proof

Step Hyp Ref Expression
1 funcsetcestrc.s ⊢ S = SetCat ⁡ U
2 funcsetcestrc.c ⊢ C = Base S
3 funcsetcestrc.f ⊢ φ → F = x ∈ C ⟼ Base ndx x
4 funcsetcestrc.u ⊢ φ → U ∈ WUni
5 funcsetcestrc.o ⊢ φ → ω ∈ U
6 funcsetcestrc.g ⊢ φ → G = x ∈ C , y ∈ C ⟼ I ↾ y x
7 funcsetcestrc.e ⊢ E = ExtStrCat ⁡ U
8 1 2 3 4 5 6 7 funcsetcestrc ⊢ φ → F S Func E G
9 1 2 3 4 5 6 7 funcsetcestrclem8 ⊢ φ ∧ a ∈ C ∧ b ∈ C → a G b : a Hom ⁡ S b ⟶ F ⁡ a Hom ⁡ E F ⁡ b
10 4 adantr ⊢ φ ∧ a ∈ C ∧ b ∈ C → U ∈ WUni
11 eqid ⊢ Hom ⁡ E = Hom ⁡ E
12 1 2 3 4 5 funcsetcestrclem2 ⊢ φ ∧ a ∈ C → F ⁡ a ∈ U
13 12 adantrr ⊢ φ ∧ a ∈ C ∧ b ∈ C → F ⁡ a ∈ U
14 1 2 3 4 5 funcsetcestrclem2 ⊢ φ ∧ b ∈ C → F ⁡ b ∈ U
15 14 adantrl ⊢ φ ∧ a ∈ C ∧ b ∈ C → F ⁡ b ∈ U
16 eqid ⊢ Base F ⁡ a = Base F ⁡ a
17 eqid ⊢ Base F ⁡ b = Base F ⁡ b
18 7 10 11 13 15 16 17 elestrchom ⊢ φ ∧ a ∈ C ∧ b ∈ C → h ∈ F ⁡ a Hom ⁡ E F ⁡ b ↔ h : Base F ⁡ a ⟶ Base F ⁡ b
19 1 2 3 funcsetcestrclem1 ⊢ φ ∧ a ∈ C → F ⁡ a = Base ndx a
20 19 adantrr ⊢ φ ∧ a ∈ C ∧ b ∈ C → F ⁡ a = Base ndx a
21 20 fveq2d ⊢ φ ∧ a ∈ C ∧ b ∈ C → Base F ⁡ a = Base Base ndx a
22 eqid ⊢ Base ndx a = Base ndx a
23 22 1strbas ⊢ a ∈ C → a = Base Base ndx a
24 23 ad2antrl ⊢ φ ∧ a ∈ C ∧ b ∈ C → a = Base Base ndx a
25 21 24 eqtr4d ⊢ φ ∧ a ∈ C ∧ b ∈ C → Base F ⁡ a = a
26 1 2 3 funcsetcestrclem1 ⊢ φ ∧ b ∈ C → F ⁡ b = Base ndx b
27 26 adantrl ⊢ φ ∧ a ∈ C ∧ b ∈ C → F ⁡ b = Base ndx b
28 27 fveq2d ⊢ φ ∧ a ∈ C ∧ b ∈ C → Base F ⁡ b = Base Base ndx b
29 eqid ⊢ Base ndx b = Base ndx b
30 29 1strbas ⊢ b ∈ C → b = Base Base ndx b
31 30 ad2antll ⊢ φ ∧ a ∈ C ∧ b ∈ C → b = Base Base ndx b
32 28 31 eqtr4d ⊢ φ ∧ a ∈ C ∧ b ∈ C → Base F ⁡ b = b
33 25 32 feq23d ⊢ φ ∧ a ∈ C ∧ b ∈ C → h : Base F ⁡ a ⟶ Base F ⁡ b ↔ h : a ⟶ b
34 simpr ⊢ φ ∧ a ∈ C ∧ b ∈ C → a ∈ C ∧ b ∈ C
35 34 ancomd ⊢ φ ∧ a ∈ C ∧ b ∈ C → b ∈ C ∧ a ∈ C
36 elmapg ⊢ b ∈ C ∧ a ∈ C → h ∈ b a ↔ h : a ⟶ b
37 35 36 syl ⊢ φ ∧ a ∈ C ∧ b ∈ C → h ∈ b a ↔ h : a ⟶ b
38 37 biimpar ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ h : a ⟶ b → h ∈ b a
39 equequ2 ⊢ k = h → h = k ↔ h = h
40 39 adantl ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ h : a ⟶ b ∧ k = h → h = k ↔ h = h
41 eqidd ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ h : a ⟶ b → h = h
42 38 40 41 rspcedvd ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ h : a ⟶ b → ∃ k ∈ b a h = k
43 1 2 3 4 5 6 funcsetcestrclem6 ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ k ∈ b a → a G b ⁡ k = k
44 43 3expa ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ k ∈ b a → a G b ⁡ k = k
45 44 eqeq2d ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ k ∈ b a → h = a G b ⁡ k ↔ h = k
46 45 rexbidva ⊢ φ ∧ a ∈ C ∧ b ∈ C → ∃ k ∈ b a h = a G b ⁡ k ↔ ∃ k ∈ b a h = k
47 46 adantr ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ h : a ⟶ b → ∃ k ∈ b a h = a G b ⁡ k ↔ ∃ k ∈ b a h = k
48 42 47 mpbird ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ h : a ⟶ b → ∃ k ∈ b a h = a G b ⁡ k
49 eqid ⊢ Hom ⁡ S = Hom ⁡ S
50 1 4 setcbas ⊢ φ → U = Base S
51 2 50 eqtr4id ⊢ φ → C = U
52 51 eleq2d ⊢ φ → a ∈ C ↔ a ∈ U
53 52 biimpcd ⊢ a ∈ C → φ → a ∈ U
54 53 adantr ⊢ a ∈ C ∧ b ∈ C → φ → a ∈ U
55 54 impcom ⊢ φ ∧ a ∈ C ∧ b ∈ C → a ∈ U
56 51 eleq2d ⊢ φ → b ∈ C ↔ b ∈ U
57 56 biimpcd ⊢ b ∈ C → φ → b ∈ U
58 57 adantl ⊢ a ∈ C ∧ b ∈ C → φ → b ∈ U
59 58 impcom ⊢ φ ∧ a ∈ C ∧ b ∈ C → b ∈ U
60 1 10 49 55 59 setchom ⊢ φ ∧ a ∈ C ∧ b ∈ C → a Hom ⁡ S b = b a
61 60 rexeqdv ⊢ φ ∧ a ∈ C ∧ b ∈ C → ∃ k ∈ a Hom ⁡ S b h = a G b ⁡ k ↔ ∃ k ∈ b a h = a G b ⁡ k
62 61 adantr ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ h : a ⟶ b → ∃ k ∈ a Hom ⁡ S b h = a G b ⁡ k ↔ ∃ k ∈ b a h = a G b ⁡ k
63 48 62 mpbird ⊢ φ ∧ a ∈ C ∧ b ∈ C ∧ h : a ⟶ b → ∃ k ∈ a Hom ⁡ S b h = a G b ⁡ k
64 63 ex ⊢ φ ∧ a ∈ C ∧ b ∈ C → h : a ⟶ b → ∃ k ∈ a Hom ⁡ S b h = a G b ⁡ k
65 33 64 sylbid ⊢ φ ∧ a ∈ C ∧ b ∈ C → h : Base F ⁡ a ⟶ Base F ⁡ b → ∃ k ∈ a Hom ⁡ S b h = a G b ⁡ k
66 18 65 sylbid ⊢ φ ∧ a ∈ C ∧ b ∈ C → h ∈ F ⁡ a Hom ⁡ E F ⁡ b → ∃ k ∈ a Hom ⁡ S b h = a G b ⁡ k
67 66 ralrimiv ⊢ φ ∧ a ∈ C ∧ b ∈ C → ∀ h ∈ F ⁡ a Hom ⁡ E F ⁡ b ∃ k ∈ a Hom ⁡ S b h = a G b ⁡ k
68 dffo3 ⊢ a G b : a Hom ⁡ S b ⟶ onto F ⁡ a Hom ⁡ E F ⁡ b ↔ a G b : a Hom ⁡ S b ⟶ F ⁡ a Hom ⁡ E F ⁡ b ∧ ∀ h ∈ F ⁡ a Hom ⁡ E F ⁡ b ∃ k ∈ a Hom ⁡ S b h = a G b ⁡ k
69 9 67 68 sylanbrc ⊢ φ ∧ a ∈ C ∧ b ∈ C → a G b : a Hom ⁡ S b ⟶ onto F ⁡ a Hom ⁡ E F ⁡ b
70 69 ralrimivva ⊢ φ → ∀ a ∈ C ∀ b ∈ C a G b : a Hom ⁡ S b ⟶ onto F ⁡ a Hom ⁡ E F ⁡ b
71 2 11 49 isfull2 ⊢ F S Full E G ↔ F S Func E G ∧ ∀ a ∈ C ∀ b ∈ C a G b : a Hom ⁡ S b ⟶ onto F ⁡ a Hom ⁡ E F ⁡ b
72 8 70 71 sylanbrc ⊢ φ → F S Full E G