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

Theorem fullestrcsetc 18245
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 18243 . 2 (𝜑𝐹(𝐸 Func 𝑆)𝐺)
91, 2, 3, 4, 5, 6, 7funcestrcsetclem8 18241 . . . 4 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)⟶((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)))
105adantr 486 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → 𝑈 ∈ WUni)
11 eqid 2762 . . . . . . . 8 (Hom ‘𝑆) = (Hom ‘𝑆)
121, 2, 3, 4, 5, 6funcestrcsetclem2 18235 . . . . . . . . 9 ((𝜑𝑎𝐵) → (𝐹𝑎) ∈ 𝑈)
1312adantrr 730 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝐹𝑎) ∈ 𝑈)
141, 2, 3, 4, 5, 6funcestrcsetclem2 18235 . . . . . . . . 9 ((𝜑𝑏𝐵) → (𝐹𝑏) ∈ 𝑈)
1514adantrl 729 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝐹𝑏) ∈ 𝑈)
162, 10, 11, 13, 15elsetchom 18176 . . . . . . 7 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → ( ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) ↔ :(𝐹𝑎)⟶(𝐹𝑏)))
171, 2, 3, 4, 5, 6funcestrcsetclem1 18234 . . . . . . . . 9 ((𝜑𝑎𝐵) → (𝐹𝑎) = (Base‘𝑎))
1817adantrr 730 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝐹𝑎) = (Base‘𝑎))
191, 2, 3, 4, 5, 6funcestrcsetclem1 18234 . . . . . . . . 9 ((𝜑𝑏𝐵) → (𝐹𝑏) = (Base‘𝑏))
2019adantrl 729 . . . . . . . 8 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝐹𝑏) = (Base‘𝑏))
2118, 20feq23d 6701 . . . . . . 7 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (:(𝐹𝑎)⟶(𝐹𝑏) ↔ :(Base‘𝑎)⟶(Base‘𝑏)))
2216, 21bitrd 282 . . . . . 6 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → ( ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) ↔ :(Base‘𝑎)⟶(Base‘𝑏)))
23 fvex 6895 . . . . . . . . . . . . 13 (Base‘𝑏) ∈ V
24 fvex 6895 . . . . . . . . . . . . 13 (Base‘𝑎) ∈ V
2523, 24pm3.2i 476 . . . . . . . . . . . 12 ((Base‘𝑏) ∈ V ∧ (Base‘𝑎) ∈ V)
26 elmapg 8842 . . . . . . . . . . . 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 2763 . . . . . . . . . 10 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → = )
3228, 30, 31rspcedvd 3581 . . . . . . . . 9 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ :(Base‘𝑎)⟶(Base‘𝑏)) → ∃𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎)) = 𝑘)
33 eqid 2762 . . . . . . . . . . . . . 14 (Base‘𝑎) = (Base‘𝑎)
34 eqid 2762 . . . . . . . . . . . . . 14 (Base‘𝑏) = (Base‘𝑏)
351, 2, 3, 4, 5, 6, 7, 33, 34funcestrcsetclem6 18239 . . . . . . . . . . . . 13 ((𝜑 ∧ (𝑎𝐵𝑏𝐵) ∧ 𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎))) → ((𝑎𝐺𝑏)‘𝑘) = 𝑘)
36353expa 1136 . . . . . . . . . . . 12 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ 𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎))) → ((𝑎𝐺𝑏)‘𝑘) = 𝑘)
3736eqeq2d 2773 . . . . . . . . . . 11 (((𝜑 ∧ (𝑎𝐵𝑏𝐵)) ∧ 𝑘 ∈ ((Base‘𝑏) ↑m (Base‘𝑎))) → ( = ((𝑎𝐺𝑏)‘𝑘) ↔ = 𝑘))
3837rexbidva 3186 . . . . . . . . . 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 2762 . . . . . . . . . . 11 (Hom ‘𝐸) = (Hom ‘𝐸)
421, 5estrcbas 18219 . . . . . . . . . . . . . . . 16 (𝜑𝑈 = (Base‘𝐸))
433, 42eqtr4id 2816 . . . . . . . . . . . . . . 15 (𝜑𝐵 = 𝑈)
4443eleq2d 2848 . . . . . . . . . . . . . 14 (𝜑 → (𝑎𝐵𝑎𝑈))
4544biimpcd 252 . . . . . . . . . . . . 13 (𝑎𝐵 → (𝜑𝑎𝑈))
4645adantr 486 . . . . . . . . . . . 12 ((𝑎𝐵𝑏𝐵) → (𝜑𝑎𝑈))
4746impcom 413 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → 𝑎𝑈)
4843eleq2d 2848 . . . . . . . . . . . . . 14 (𝜑 → (𝑏𝐵𝑏𝑈))
4948biimpcd 252 . . . . . . . . . . . . 13 (𝑏𝐵 → (𝜑𝑏𝑈))
5049adantl 487 . . . . . . . . . . . 12 ((𝑎𝐵𝑏𝐵) → (𝜑𝑏𝑈))
5150impcom 413 . . . . . . . . . . 11 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → 𝑏𝑈)
521, 10, 41, 47, 51, 33, 34estrchom 18221 . . . . . . . . . 10 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝑎(Hom ‘𝐸)𝑏) = ((Base‘𝑏) ↑m (Base‘𝑎)))
5352rexeqdv 3322 . . . . . . . . 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 3155 . . . 4 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → ∀ ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏))∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘))
59 dffo3 7099 . . . 4 ((𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)–onto→((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) ↔ ((𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)⟶((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)) ∧ ∀ ∈ ((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏))∃𝑘 ∈ (𝑎(Hom ‘𝐸)𝑏) = ((𝑎𝐺𝑏)‘𝑘)))
609, 58, 59sylanbrc 595 . . 3 ((𝜑 ∧ (𝑎𝐵𝑏𝐵)) → (𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)–onto→((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)))
6160ralrimivva 3207 . 2 (𝜑 → ∀𝑎𝐵𝑏𝐵 (𝑎𝐺𝑏):(𝑎(Hom ‘𝐸)𝑏)–onto→((𝐹𝑎)(Hom ‘𝑆)(𝐹𝑏)))
623, 11, 41isfull2 18008 . 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 2145  wral 3078  wrex 3088  Vcvv 3453   class class class wbr 5107  cmpt 5190   I cid 5553  cres 5661  wf 6533  ontowfo 6535  cfv 6537  (class class class)co 7417  cmpo 7419  m cmap 8830  WUnicwun 10713  Basecbs 17307  Hom chom 17359   Func cfunc 17949   Full cful 17999  SetCatcsetc 18170  ExtStrCatcestrc 18216
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 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7740  ax-cnex 11184  ax-resscn 11185  ax-1cn 11186  ax-icn 11187  ax-addcl 11188  ax-addrcl 11189  ax-mulcl 11190  ax-mulrcl 11191  ax-mulcom 11192  ax-addass 11193  ax-mulass 11194  ax-distr 11195  ax-i2m1 11196  ax-1ne0 11197  ax-1rid 11198  ax-rnegex 11199  ax-rrecex 11200  ax-cnre 11201  ax-pre-lttri 11202  ax-pre-lttrn 11203  ax-pre-ltadd 11204  ax-pre-mulgt0 11205
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 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-tp 4592  df-op 4594  df-uni 4871  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-riota 7374  df-ov 7420  df-oprab 7421  df-mpo 7422  df-om 7867  df-1st 7990  df-2nd 7991  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-1o 8459  df-er 8700  df-map 8832  df-ixp 8909  df-en 8957  df-dom 8958  df-sdom 8959  df-fin 8960  df-wun 10715  df-pnf 11273  df-mnf 11274  df-xr 11275  df-ltxr 11276  df-le 11277  df-sub 11471  df-neg 11472  df-nn 12262  df-2 12331  df-3 12332  df-4 12333  df-5 12334  df-6 12335  df-7 12336  df-8 12337  df-9 12338  df-n0 12533  df-z 12620  df-dec 12741  df-uz 12892  df-fz 13566  df-struct 17245  df-slot 17280  df-ndx 17292  df-base 17308  df-hom 17372  df-cco 17373  df-cat 17762  df-cid 17763  df-func 17953  df-full 18001  df-setc 18171  df-estrc 18217
This theorem is used by:  equivestrcsetc  18246
  Copyright terms: Public domain W3C validator