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

Theorem fullpropd 18129
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 18117 . 2 Rel (𝐴 Full 𝐶)
2 relfull 18117 . 2 Rel (𝐵 Full 𝐷)
3 fullpropd.1 . . . . . . . 8 (𝜑 → (Homf ‘𝐴) = (Homf ‘𝐵))
43homfeqbas 17902 . . . . . . 7 (𝜑 → (Base‘𝐴) = (Base‘𝐵))
54adantr 486 . . . . . 6 ((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) → (Base‘𝐴) = (Base‘𝐵))
65adantr 486 . . . . . . 7 (((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) → (Base‘𝐴) = (Base‘𝐵))
7 eqid 2763 . . . . . . . . 9 (Base‘𝐶) = (Base‘𝐶)
8 eqid 2763 . . . . . . . . 9 (Hom ‘𝐶) = (Hom ‘𝐶)
9 eqid 2763 . . . . . . . . 9 (Hom ‘𝐷) = (Hom ‘𝐷)
10 fullpropd.3 . . . . . . . . . 10 (𝜑 → (Homf ‘𝐶) = (Homf ‘𝐷))
1110ad3antrrr 743 . . . . . . . . 9 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → (Homf ‘𝐶) = (Homf ‘𝐷))
12 eqid 2763 . . . . . . . . . . 11 (Base‘𝐴) = (Base‘𝐴)
13 simpllr 788 . . . . . . . . . . 11 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → 𝑓(𝐴 Func 𝐶)𝑔)
1412, 7, 13funcf1 18073 . . . . . . . . . 10 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → 𝑓:(Base‘𝐴)⟶(Base‘𝐶))
15 simplr 781 . . . . . . . . . 10 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → 𝑥 ∈ (Base‘𝐴))
1614, 15ffvelcdmd 7112 . . . . . . . . 9 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → (𝑓‘𝑥) ∈ (Base‘𝐶))
17 simpr 490 . . . . . . . . . 10 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → 𝑦 ∈ (Base‘𝐴))
1814, 17ffvelcdmd 7112 . . . . . . . . 9 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → (𝑓‘𝑦) ∈ (Base‘𝐶))
197, 8, 9, 11, 16, 18homfeqval 17903 . . . . . . . 8 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦)) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦)))
2019eqeq2d 2774 . . . . . . 7 ((((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) ∧ 𝑦 ∈ (Base‘𝐴)) → (ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦)) ↔ ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦))))
216, 20raleqbidva 3329 . . . . . 6 (((𝜑 ∧ 𝑓(𝐴 Func 𝐶)𝑔) ∧ 𝑥 ∈ (Base‘𝐴)) → (∀𝑦 ∈ (Base‘𝐴)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦)) ↔ ∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦))))
225, 21raleqbidva 3329 . . . . 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 18109 . . . . . 6 (𝜑 → (𝐴 Func 𝐶) = (𝐵 Func 𝐷))
3130breqd 5117 . . . . 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 18119 . . 3 (𝑓(𝐴 Full 𝐶)𝑔 ↔ (𝑓(𝐴 Func 𝐶)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐴)∀𝑦 ∈ (Base‘𝐴)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐶)(𝑓‘𝑦))))
35 eqid 2763 . . . 4 (Base‘𝐵) = (Base‘𝐵)
3635, 9isfull 18119 . . 3 (𝑓(𝐵 Full 𝐷)𝑔 ↔ (𝑓(𝐵 Func 𝐷)𝑔 ∧ ∀𝑥 ∈ (Base‘𝐵)∀𝑦 ∈ (Base‘𝐵)ran (𝑥𝑔𝑦) = ((𝑓‘𝑥)(Hom ‘𝐷)(𝑓‘𝑦))))
3733, 34, 363bitr4g 317 . 2 (𝜑 → (𝑓(𝐴 Full 𝐶)𝑔 ↔ 𝑓(𝐵 Full 𝐷)𝑔))
381, 2, 37eqbrrdiv 5776 1 (𝜑 → (𝐴 Full 𝐶) = (𝐵 Full 𝐷))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401   = wceq 1570   ∈ wcel 2147  ∀wral 3080   class class class wbr 5106  ran crn 5657  ‘cfv 6561  (class class class)co 7446  Basecbs 17419  Hom chom 17471  Homf chomf 17872  compfccomf 17873   Func cfunc 18061   Full cful 18111
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5236  ax-sep 5253  ax-nul 5264  ax-pow 5332  ax-pr 5396  ax-un 7778
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-iun 4956  df-br 5107  df-opab 5172  df-mpt 5191  df-id 5551  df-xp 5662  df-rel 5663  df-cnv 5664  df-co 5665  df-dm 5666  df-rn 5667  df-res 5668  df-ima 5669  df-iota 6515  df-fun 6563  df-fn 6564  df-f 6565  df-f1 6566  df-fo 6567  df-f1o 6568  df-fv 6569  df-riota 7403  df-ov 7449  df-oprab 7450  df-mpo 7451  df-1st 8028  df-2nd 8029  df-map 8880  df-ixp 8957  df-cat 17874  df-cid 17875  df-homf 17876  df-comf 17877  df-func 18065  df-full 18113
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator