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

Theorem fullpropd 18102
Description: If two categories have the same set of objects, morphisms, and compositions, then they have the same full functors. (Contributed by Mario Carneiro, 27-Jan-2017.)
Hypotheses
Ref Expression
fullpropd.1 (𝜑 → (Homf ‘𝐴) = (Homf ‘𝐵))
fullpropd.2 (𝜑 → (compf‘𝐴) = (compf‘𝐵))
fullpropd.3 (𝜑 → (Homf ‘𝐶) = (Homf ‘𝐷))
fullpropd.4 (𝜑 → (compf‘𝐶) = (compf‘𝐷))
fullpropd.a (𝜑 → 𝐴 ∈ 𝑉)
fullpropd.b (𝜑 → 𝐵 ∈ 𝑉)
fullpropd.c (𝜑 → 𝐶 ∈ 𝑉)
fullpropd.d (𝜑 → 𝐷 ∈ 𝑉)
Assertion
Ref Expression
fullpropd (𝜑 → (𝐴 Full 𝐶) = (𝐵 Full 𝐷))

Proof of Theorem fullpropd
Dummy variables 𝑓 𝑔 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 relfull 18090 . 2 Rel (𝐴 Full 𝐶)
2 relfull 18090 . 2 Rel (𝐵 Full 𝐷)
3 fullpropd.1 . . . . . . . 8 (𝜑 → (Homf ‘𝐴) = (Homf ‘𝐵))
43homfeqbas 17875 . . . . . . 7 (𝜑 → (Base‘𝐴) = (Base‘𝐵))
54adantr 486 . . . . . 6 ((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) → (Base‘𝐴) = (Base‘𝐵))
65adantr 486 . . . . . . 7 (((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) → (Base‘𝐴) = (Base‘𝐵))
7 eqid 2760 . . . . . . . . 9 (Base‘𝐶) = (Base‘𝐶)
8 eqid 2760 . . . . . . . . 9 (Hom ‘𝐶) = (Hom ‘𝐶)
9 eqid 2760 . . . . . . . . 9 (Hom ‘𝐷) = (Hom ‘𝐷)
10 fullpropd.3 . . . . . . . . . 10 (𝜑 → (Homf ‘𝐶) = (Homf ‘𝐷))
1110ad3antrrr 743 . . . . . . . . 9 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → (Homf ‘𝐶) = (Homf ‘𝐷))
12 eqid 2760 . . . . . . . . . . 11 (Base‘𝐴) = (Base‘𝐴)
13 simpllr 788 . . . . . . . . . . 11 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → 𝑓(𝐴 Func 𝐶)𝑔)
1412, 7, 13funcf1 18046 . . . . . . . . . 10 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → 𝑓:(Base‘𝐴)⟶(Base‘𝐶))
15 simplr 781 . . . . . . . . . 10 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → 𝑥 ∈ (Base‘𝐴))
1614, 15ffvelcdmd 7085 . . . . . . . . 9 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → (𝑓‘𝑥) ∈ (Base‘𝐶))
17 simpr 490 . . . . . . . . . 10 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → 𝑦 ∈ (Base‘𝐴))
1814, 17ffvelcdmd 7085 . . . . . . . . 9 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → (𝑓‘𝑦) ∈ (Base‘𝐶))
197, 8, 9, 11, 16, 18homfeqval 17876 . . . . . . . 8 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦)) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦)))
2019eqeq2d 2771 . . . . . . 7 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → (ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦)) ↔ ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦))))
216, 20raleqbidva 3325 . . . . . 6 (((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) → (∀𝑦 ∈ (Base‘𝐴)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦)) ↔ ∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦))))
225, 21raleqbidva 3325 . . . . 5 ((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) → (∀𝑥 ∈ (Base‘𝐴)∀𝑦 ∈ (Base‘𝐴)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦)) ↔ ∀𝑥 ∈ (Base‘𝐵)∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦))))
2322pm5.32da 590 . . . 4 (𝜑 → ((𝑓(𝐴 Func 𝐶)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐴)∀𝑦 ∈ (Base‘𝐴)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦))) ↔ (𝑓(𝐴 Func 𝐶)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐵)∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦)))))
24 fullpropd.2 . . . . . . 7 (𝜑 → (compf‘𝐴) = (compf‘𝐵))
25 fullpropd.4 . . . . . . 7 (𝜑 → (compf‘𝐶) = (compf‘𝐷))
26 fullpropd.a . . . . . . 7 (𝜑 → 𝐴 ∈ 𝑉)
27 fullpropd.b . . . . . . 7 (𝜑 → 𝐵 ∈ 𝑉)
28 fullpropd.c . . . . . . 7 (𝜑 → 𝐶 ∈ 𝑉)
29 fullpropd.d . . . . . . 7 (𝜑 → 𝐷 ∈ 𝑉)
303, 24, 10, 25, 26, 27, 28, 29funcpropd 18082 . . . . . 6 (𝜑 → (𝐴 Func 𝐶) = (𝐵 Func 𝐷))
3130breqd 5113 . . . . 5 (𝜑 → (𝑓(𝐴 Func 𝐶)𝑔 ↔ 𝑓(𝐵 Func 𝐷)𝑔))
3231anbi1d 643 . . . 4 (𝜑 → ((𝑓(𝐴 Func 𝐶)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐵)∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦))) ↔ (𝑓(𝐵 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐵)∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦)))))
3323, 32bitrd 282 . . 3 (𝜑 → ((𝑓(𝐴 Func 𝐶)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐴)∀𝑦 ∈ (Base‘𝐴)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦))) ↔ (𝑓(𝐵 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐵)∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦)))))
3412, 8isfull 18092 . . 3 (𝑓(𝐴 Full 𝐶)𝑔 ↔ (𝑓(𝐴 Func 𝐶)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐴)∀𝑦 ∈ (Base‘𝐴)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦))))
35 eqid 2760 . . . 4 (Base‘𝐵) = (Base‘𝐵)
3635, 9isfull 18092 . . 3 (𝑓(𝐵 Full 𝐷)𝑔 ↔ (𝑓(𝐵 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐵)∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦))))
3733, 34, 363bitr4g 317 . 2 (𝜑 → (𝑓(𝐴 Full 𝐶)𝑔 ↔ 𝑓(𝐵 Full 𝐷)𝑔))
381, 2, 37eqbrrdiv 5769 1 (𝜑 → (𝐴 Full 𝐶) = (𝐵 Full 𝐷))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401   = wceq 1569   ∈ wcel 2144  ∀wral 3076   class class class wbr 5102  ran crn 5651  ‘cfv 6538  (class class class)co 7420  Basecbs 17392  Hom chom 17444  Homf chomf 17845  compfccomf 17846   Func cfunc 18034   Full cful 18084
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7751
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-ss 3896  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4585  df-pr 4587  df-op 4835  df-uni 4867  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-id 5545  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-res 5662  df-ima 5663  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-riota 7377  df-ov 7423  df-oprab 7424  df-mpo 7425  df-1st 8001  df-2nd 8002  df-map 8852  df-ixp 8929  df-cat 17847  df-cid 17848  df-homf 17849  df-comf 17850  df-func 18038  df-full 18086
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator