MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  fullestrcsetc Structured version   Visualization version   GIF version

Theorem fullestrcsetc 18232
Description: The "natural forgetful functor" from the category of extensible structures into the category of sets which sends each extensible structure to its base set is full. (Contributed by AV, 2-Apr-2020.)
Hypotheses
Ref Expression
funcestrcsetc.e 𝐸 = (ExtStrCat‘𝑈)
funcestrcsetc.s 𝑆 = (SetCat‘𝑈)
funcestrcsetc.b 𝐵 = (Base‘𝐸)
funcestrcsetc.c 𝐶 = (Base‘𝑆)
funcestrcsetc.u (𝜑𝑈 ∈ WUni)
funcestrcsetc.f (𝜑𝐹 = (𝑥𝐵 ↦ (Base‘𝑥)))
funcestrcsetc.g (𝜑𝐺 = (𝑥𝐵, 𝑦𝐵 ↦ ( I ↾ ((Base‘𝑦) ↑m (Base‘𝑥)))))
Assertion
Ref Expression
fullestrcsetc (𝜑𝐹(𝐸 Full 𝑆)𝐺)
Distinct variable groups:   𝑥,𝐵   𝜑,𝑥   𝑥,𝐶   𝑦,𝐵,𝑥   𝜑,𝑦
Allowed substitution hints:   𝐶(𝑦)   𝑆(𝑥, 𝑦)   𝑈(𝑥, 𝑦)   𝐸(𝑥, 𝑦)   𝐹(𝑥, 𝑦)   𝐺(𝑥, 𝑦)

Proof of Theorem fullestrcsetc
Dummy variables 𝑎 𝑏 𝑘 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 funcestrcsetc.e . . 3 𝐸 = (ExtStrCat‘𝑈)
2 funcestrcsetc.s . . 3 𝑆 = (SetCat‘𝑈)
3 funcestrcsetc.b . . 3 𝐵 = (Base‘𝐸)
4 funcestrcsetc.c . . 3 𝐶 = (Base‘𝑆)
5 funcestrcsetc.u . . 3 (𝜑𝑈 ∈ WUni)
6 funcestrcsetc.f . . 3 (𝜑𝐹 = (𝑥𝐵 ↦ (Base‘𝑥)))
7 funcestrcsetc.g . . 3 (𝜑𝐺 = (𝑥𝐵, 𝑦𝐵 ↦ ( I ↾ ((Base‘𝑦) ↑m (Base‘𝑥)))))
81, 2, 3, 4, 5, 6, 7funcestrcsetc 18230 . 2 (𝜑𝐹(𝐸 Func 𝑆)𝐺)
91, 2, 3, 4, 5, 6, 7funcestrcsetclem8 18228 . . . 4 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)⟶((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)))
105adantr 486 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → 𝑈 ∈ WUni)
11 eqid 2766 . . . . . . . 8 (Hom ‘𝑆) = (Hom ‘𝑆)
121, 2, 3, 4, 5, 6funcestrcsetclem2 18222 . . . . . . . . 9 ((𝜑𝑎𝐵) → (𝐹𝑎) ∈ 𝑈)
1312adantrr 730 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝐹𝑎) ∈ 𝑈)
141, 2, 3, 4, 5, 6funcestrcsetclem2 18222 . . . . . . . . 9 ((𝜑𝑏𝐵) → (𝐹𝑏) ∈ 𝑈)
1514adantrl 729 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝐹𝑏) ∈ 𝑈)
162, 10, 11, 13, 15elsetchom 18163 . . . . . . 7 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → ( ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) ↔ :(𝐹𝑎)⟶(𝐹𝑏)))
171, 2, 3, 4, 5, 6funcestrcsetclem1 18221 . . . . . . . . 9 ((𝜑𝑎𝐵) → (𝐹𝑎) = (Base‘𝑎))
1817adantrr 730 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝐹𝑎) = (Base‘𝑎))
191, 2, 3, 4, 5, 6funcestrcsetclem1 18221 . . . . . . . . 9 ((𝜑𝑏𝐵) → (𝐹𝑏) = (Base‘𝑏))
2019adantrl 729 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝐹𝑏) = (Base‘𝑏))
2118, 20feq23d 6707 . . . . . . 7 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (:(𝐹𝑎)⟶(𝐹𝑏) ↔ :(Base‘𝑎)⟶(Base‘𝑏)))
2216, 21bitrd 282 . . . . . 6 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → ( ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) ↔ :(Base‘𝑎)⟶(Base‘𝑏)))
23 fvex 6901 . . . . . . . . . . . . 13 (Base‘𝑏) ∈ V
24 fvex 6901 . . . . . . . . . . . . 13 (Base‘𝑎) ∈ V
2523, 24pm3.2i 476 . . . . . . . . . . . 12 ((Base‘𝑏) ∈ V ∧ (Base‘𝑎) ∈ V)
26 elmapg 8845 . . . . . . . . . . . 12 (((Base‘𝑏) ∈ V ∧ (Base‘𝑎) ∈ V) → ( ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) ↔ :(Base‘𝑎)⟶(Base‘𝑏)))
2725, 26mp1i 14 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → ( ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) ↔ :(Base‘𝑎)⟶(Base‘𝑏)))
2827biimpar 483 . . . . . . . . . 10 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → ∈ ((Base‘𝑏) ↑m (Base‘𝑎)))
29 equequ2 2059 . . . . . . . . . . 11 (𝑘 = → ( = 𝑘 = ))
3029adantl 487 . . . . . . . . . 10 ((((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) ∧ 𝑘 = ) → ( = 𝑘 = ))
31 eqidd 2767 . . . . . . . . . 10 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → = )
3228, 30, 31rspcedvd 3586 . . . . . . . . 9 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → ∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = 𝑘)
33 eqid 2766 . . . . . . . . . . . . . 14 (Base‘𝑎) = (Base‘𝑎)
34 eqid 2766 . . . . . . . . . . . . . 14 (Base‘𝑏) = (Base‘𝑏)
351, 2, 3, 4, 5, 6, 7, 33, 34funcestrcsetclem6 18226 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎𝐵𝑏𝐵) ∧ 𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎))) → ((𝑎𝐺𝑏)‘𝑘) = 𝑘)
36353expa 1136 . . . . . . . . . . . 12 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ 𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎))) → ((𝑎𝐺𝑏)‘𝑘) = 𝑘)
3736eqeq2d 2777 . . . . . . . . . . 11 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ 𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎))) → ( = ((𝑎𝐺𝑏)‘𝑘) ↔ = 𝑘))
3837rexbidva 3190 . . . . . . . . . 10 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = ((𝑎𝐺𝑏)‘𝑘) ↔ ∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = 𝑘))
3938adantr 486 . . . . . . . . 9 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → (∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = ((𝑎𝐺𝑏)‘𝑘) ↔ ∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = 𝑘))
4032, 39mpbird 260 . . . . . . . 8 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → ∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = ((𝑎𝐺𝑏)‘𝑘))
41 eqid 2766 . . . . . . . . . . 11 (Hom ‘𝐸) = (Hom ‘𝐸)
421, 5estrcbas 18206 . . . . . . . . . . . . . . . 16 (𝜑𝑈 = (Base‘𝐸))
433, 42eqtr4id 2820 . . . . . . . . . . . . . . 15 (𝜑𝐵 = 𝑈)
4443eleq2d 2852 . . . . . . . . . . . . . 14 (𝜑 → (𝑎𝐵𝑎𝑈))
4544biimpcd 252 . . . . . . . . . . . . 13 (𝑎𝐵 → (𝜑𝑎𝑈))
4645adantr 486 . . . . . . . . . . . 12 ((𝑎𝐵𝑏𝐵) → (𝜑𝑎𝑈))
4746impcom 413 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → 𝑎𝑈)
4843eleq2d 2852 . . . . . . . . . . . . . 14 (𝜑 → (𝑏𝐵𝑏𝑈))
4948biimpcd 252 . . . . . . . . . . . . 13 (𝑏𝐵 → (𝜑𝑏𝑈))
5049adantl 487 . . . . . . . . . . . 12 ((𝑎𝐵𝑏𝐵) → (𝜑𝑏𝑈))
5150impcom 413 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → 𝑏𝑈)
521, 10, 41, 47, 51, 33, 34estrchom 18208 . . . . . . . . . 10 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝑎(Hom ‘𝐸)𝑏) = ((Base‘𝑏) ↑m (Base‘𝑎)))
5352rexeqdv 3327 . . . . . . . . 9 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘) ↔ ∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = ((𝑎𝐺𝑏)‘𝑘)))
5453adantr 486 . . . . . . . 8 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → (∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘) ↔ ∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = ((𝑎𝐺𝑏)‘𝑘)))
5540, 54mpbird 260 . . . . . . 7 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → ∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘))
5655ex 418 . . . . . 6 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (:(Base‘𝑎)⟶(Base‘𝑏) → ∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘)))
5722, 56sylbid 243 . . . . 5 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → ( ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) → ∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘)))
5857ralrimiv 3159 . . . 4 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → ∀ ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏))∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘))
59 dffo3 7104 . . . 4 ((𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)–onto→((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) ↔ ((𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)⟶((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) ∧ ∀ ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏))∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘)))
609, 58, 59sylanbrc 595 . . 3 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)–onto→((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)))
6160ralrimivva 3211 . 2 (𝜑 → ∀𝑎𝐵𝑏𝐵 (𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)–onto→((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)))
623, 11, 41isfull2 17995 . 2 (𝐹(𝐸 Full 𝑆)𝐺 ↔ (𝐹(𝐸 Func 𝑆)𝐺 ∧ ∀𝑎𝐵𝑏𝐵 (𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)–onto→((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏))))
638, 61, 62sylanbrc 595 1 (𝜑𝐹(𝐸 Full 𝑆)𝐺)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401   = wceq 1570  wcel 2146  wral 3082  wrex 3092  Vcvv 3458   class class class wbr 5114  cmpt 5197   I cid 5560  cres 5668  wf 6539  ontowfo 6541  cfv 6543  (class class class)co 7423  cmpo 7425  m cmap 8833  WUnicwun 10703  Basecbs 17294  Hom chom 17346   Func cfunc 17936   Full cful 17986  SetCatcsetc 18157  ExtStrCatcestrc 18203
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-rep 5243  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745  ax-cnex 11174  ax-resscn 11175  ax-1cn 11176  ax-icn 11177  ax-addcl 11178  ax-addrcl 11179  ax-mulcl 11180  ax-mulrcl 11181  ax-mulcom 11182  ax-addass 11183  ax-mulass 11184  ax-distr 11185  ax-i2m1 11186  ax-1ne0 11187  ax-1rid 11188  ax-rnegex 11189  ax-rrecex 11190  ax-cnre 11191  ax-pre-lttri 11192  ax-pre-lttrn 11193  ax-pre-ltadd 11194  ax-pre-mulgt0 11195
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-nel 3068  df-ral 3083  df-rex 3093  df-rmo 3372  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-tp 4599  df-op 4601  df-uni 4878  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-tr 5224  df-id 5561  df-eprel 5566  df-po 5574  df-so 5575  df-fr 5619  df-we 5621  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-pred 6309  df-ord 6370  df-on 6371  df-lim 6372  df-suc 6373  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-riota 7380  df-ov 7426  df-oprab 7427  df-mpo 7428  df-om 7872  df-1st 7995  df-2nd 7996  df-frecs 8287  df-wrecs 8318  df-recs 8367  df-rdg 8406  df-1o 8462  df-er 8703  df-map 8835  df-ixp 8905  df-en 8953  df-dom 8954  df-sdom 8955  df-fin 8956  df-wun 10705  df-pnf 11263  df-mnf 11264  df-xr 11265  df-ltxr 11266  df-le 11267  df-sub 11461  df-neg 11462  df-nn 12252  df-2 12321  df-3 12322  df-4 12323  df-5 12324  df-6 12325  df-7 12326  df-8 12327  df-9 12328  df-n0 12523  df-z 12610  df-dec 12730  df-uz 12881  df-fz 13554  df-struct 17232  df-slot 17267  df-ndx 17279  df-base 17295  df-hom 17359  df-cco 17360  df-cat 17749  df-cid 17750  df-func 17940  df-full 17988  df-setc 18158  df-estrc 18204
This theorem is used by:  equivestrcsetc  18233
  Copyright terms: Public domain W3C validator