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

Theorem nati 18048
Description: Naturality property of a natural transformation. (Contributed by Mario Carneiro, 6-Jan-2017.)
Hypotheses
Ref Expression
natrcl.1 𝑁 = (𝐶 Nat 𝐷)
natixp.2 (𝜑𝐴 ∈ (⟨𝐹, 𝐺𝑁𝐾, 𝐿⟩))
natixp.b 𝐵 = (Base‘𝐶)
nati.h 𝐻 = (Hom ‘𝐶)
nati.o · = (comp‘𝐷)
nati.x (𝜑𝑋𝐵)
nati.y (𝜑𝑌𝐵)
nati.r (𝜑𝑅 ∈ (𝑋𝐻𝑌))
Assertion
Ref Expression
nati (𝜑 → ((𝐴𝑌)(⟨(𝐹𝑋), (𝐹𝑌)⟩ · (𝐾𝑌))((𝑋𝐺𝑌)‘𝑅)) = (((𝑋𝐿𝑌)‘𝑅)(⟨(𝐹𝑋), (𝐾𝑋)⟩ · (𝐾𝑌))(𝐴𝑋)))

Proof of Theorem nati
Dummy variables 𝑥 𝑓 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 natixp.2 . . . 4 (𝜑𝐴 ∈ (⟨𝐹, 𝐺𝑁𝐾, 𝐿⟩))
2 natrcl.1 . . . . 5 𝑁 = (𝐶 Nat 𝐷)
3 natixp.b . . . . 5 𝐵 = (Base‘𝐶)
4 nati.h . . . . 5 𝐻 = (Hom ‘𝐶)
5 eqid 2760 . . . . 5 (Hom ‘𝐷) = (Hom ‘𝐷)
6 nati.o . . . . 5 · = (comp‘𝐷)
72natrcl 18043 . . . . . . . 8 (𝐴 ∈ (⟨𝐹, 𝐺𝑁𝐾, 𝐿⟩) → (⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷) ∧ ⟨𝐾, 𝐿⟩ ∈ (𝐶 Func 𝐷)))
81, 7syl 18 . . . . . . 7 (𝜑 → (⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷) ∧ ⟨𝐾, 𝐿⟩ ∈ (𝐶 Func 𝐷)))
98simpld 500 . . . . . 6 (𝜑 → ⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷))
10 df-br 5104 . . . . . 6 (𝐹(𝐶 Func 𝐷)𝐺 ↔ ⟨𝐹, 𝐺⟩ ∈ (𝐶 Func 𝐷))
119, 10sylibr 237 . . . . 5 (𝜑𝐹(𝐶 Func 𝐷)𝐺)
128simprd 501 . . . . . 6 (𝜑 → ⟨𝐾, 𝐿⟩ ∈ (𝐶 Func 𝐷))
13 df-br 5104 . . . . . 6 (𝐾(𝐶 Func 𝐷)𝐿 ↔ ⟨𝐾, 𝐿⟩ ∈ (𝐶 Func 𝐷))
1412, 13sylibr 237 . . . . 5 (𝜑𝐾(𝐶 Func 𝐷)𝐿)
152, 3, 4, 5, 6, 11, 14isnat 18040 . . . 4 (𝜑 → (𝐴 ∈ (⟨𝐹, 𝐺𝑁𝐾, 𝐿⟩) ↔ (𝐴X𝑥𝐵 ((𝐹𝑥)(Hom ‘𝐷)(𝐾𝑥)) ∧ ∀𝑥𝐵𝑦𝐵𝑓 ∈ (𝑥𝐻𝑦)((𝐴𝑦)(⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦))((𝑥𝐺𝑦)‘𝑓)) = (((𝑥𝐿𝑦)‘𝑓)(⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦))(𝐴𝑥)))))
161, 15mpbid 235 . . 3 (𝜑 → (𝐴X𝑥𝐵 ((𝐹𝑥)(Hom ‘𝐷)(𝐾𝑥)) ∧ ∀𝑥𝐵𝑦𝐵𝑓 ∈ (𝑥𝐻𝑦)((𝐴𝑦)(⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦))((𝑥𝐺𝑦)‘𝑓)) = (((𝑥𝐿𝑦)‘𝑓)(⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦))(𝐴𝑥))))
1716simprd 501 . 2 (𝜑 → ∀𝑥𝐵𝑦𝐵𝑓 ∈ (𝑥𝐻𝑦)((𝐴𝑦)(⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦))((𝑥𝐺𝑦)‘𝑓)) = (((𝑥𝐿𝑦)‘𝑓)(⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦))(𝐴𝑥)))
18 nati.x . . 3 (𝜑𝑋𝐵)
19 nati.y . . . . 5 (𝜑𝑌𝐵)
2019adantr 486 . . . 4 ((𝜑𝑥 = 𝑋) → 𝑌𝐵)
21 nati.r . . . . . . 7 (𝜑𝑅 ∈ (𝑋𝐻𝑌))
2221ad2antrr 739 . . . . . 6 (((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) → 𝑅 ∈ (𝑋𝐻𝑌))
23 simplr 781 . . . . . . 7 (((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) → 𝑥 = 𝑋)
24 simpr 490 . . . . . . 7 (((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) → 𝑦 = 𝑌)
2523, 24oveq12d 7432 . . . . . 6 (((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) → (𝑥𝐻𝑦) = (𝑋𝐻𝑌))
2622, 25eleqtrrd 2863 . . . . 5 (((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) → 𝑅 ∈ (𝑥𝐻𝑦))
27 simpllr 788 . . . . . . . . . 10 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → 𝑥 = 𝑋)
2827fveq2d 6883 . . . . . . . . 9 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (𝐹𝑥) = (𝐹𝑋))
29 simplr 781 . . . . . . . . . 10 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → 𝑦 = 𝑌)
3029fveq2d 6883 . . . . . . . . 9 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (𝐹𝑦) = (𝐹𝑌))
3128, 30opeq12d 4841 . . . . . . . 8 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → ⟨(𝐹𝑥), (𝐹𝑦)⟩ = ⟨(𝐹𝑋), (𝐹𝑌)⟩)
3229fveq2d 6883 . . . . . . . 8 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (𝐾𝑦) = (𝐾𝑌))
3331, 32oveq12d 7432 . . . . . . 7 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦)) = (⟨(𝐹𝑋), (𝐹𝑌)⟩ · (𝐾𝑌)))
3429fveq2d 6883 . . . . . . 7 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (𝐴𝑦) = (𝐴𝑌))
3527, 29oveq12d 7432 . . . . . . . 8 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (𝑥𝐺𝑦) = (𝑋𝐺𝑌))
36 simpr 490 . . . . . . . 8 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → 𝑓 = 𝑅)
3735, 36fveq12d 6886 . . . . . . 7 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → ((𝑥𝐺𝑦)‘𝑓) = ((𝑋𝐺𝑌)‘𝑅))
3833, 34, 37oveq123d 7435 . . . . . 6 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → ((𝐴𝑦)(⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦))((𝑥𝐺𝑦)‘𝑓)) = ((𝐴𝑌)(⟨(𝐹𝑋), (𝐹𝑌)⟩ · (𝐾𝑌))((𝑋𝐺𝑌)‘𝑅)))
3927fveq2d 6883 . . . . . . . . 9 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (𝐾𝑥) = (𝐾𝑋))
4028, 39opeq12d 4841 . . . . . . . 8 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → ⟨(𝐹𝑥), (𝐾𝑥)⟩ = ⟨(𝐹𝑋), (𝐾𝑋)⟩)
4140, 32oveq12d 7432 . . . . . . 7 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦)) = (⟨(𝐹𝑋), (𝐾𝑋)⟩ · (𝐾𝑌)))
4227, 29oveq12d 7432 . . . . . . . 8 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (𝑥𝐿𝑦) = (𝑋𝐿𝑌))
4342, 36fveq12d 6886 . . . . . . 7 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → ((𝑥𝐿𝑦)‘𝑓) = ((𝑋𝐿𝑌)‘𝑅))
4427fveq2d 6883 . . . . . . 7 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (𝐴𝑥) = (𝐴𝑋))
4541, 43, 44oveq123d 7435 . . . . . 6 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (((𝑥𝐿𝑦)‘𝑓)(⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦))(𝐴𝑥)) = (((𝑋𝐿𝑌)‘𝑅)(⟨(𝐹𝑋), (𝐾𝑋)⟩ · (𝐾𝑌))(𝐴𝑋)))
4638, 45eqeq12d 2776 . . . . 5 ((((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) ∧ 𝑓 = 𝑅) → (((𝐴𝑦)(⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦))((𝑥𝐺𝑦)‘𝑓)) = (((𝑥𝐿𝑦)‘𝑓)(⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦))(𝐴𝑥)) ↔ ((𝐴𝑌)(⟨(𝐹𝑋), (𝐹𝑌)⟩ · (𝐾𝑌))((𝑋𝐺𝑌)‘𝑅)) = (((𝑋𝐿𝑌)‘𝑅)(⟨(𝐹𝑋), (𝐾𝑋)⟩ · (𝐾𝑌))(𝐴𝑋))))
4726, 46rspcdv 3568 . . . 4 (((𝜑𝑥 = 𝑋) ∧ 𝑦 = 𝑌) → (∀𝑓 ∈ (𝑥𝐻𝑦)((𝐴𝑦)(⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦))((𝑥𝐺𝑦)‘𝑓)) = (((𝑥𝐿𝑦)‘𝑓)(⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦))(𝐴𝑥)) → ((𝐴𝑌)(⟨(𝐹𝑋), (𝐹𝑌)⟩ · (𝐾𝑌))((𝑋𝐺𝑌)‘𝑅)) = (((𝑋𝐿𝑌)‘𝑅)(⟨(𝐹𝑋), (𝐾𝑋)⟩ · (𝐾𝑌))(𝐴𝑋))))
4820, 47rspcimdv 3566 . . 3 ((𝜑𝑥 = 𝑋) → (∀𝑦𝐵𝑓 ∈ (𝑥𝐻𝑦)((𝐴𝑦)(⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦))((𝑥𝐺𝑦)‘𝑓)) = (((𝑥𝐿𝑦)‘𝑓)(⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦))(𝐴𝑥)) → ((𝐴𝑌)(⟨(𝐹𝑋), (𝐹𝑌)⟩ · (𝐾𝑌))((𝑋𝐺𝑌)‘𝑅)) = (((𝑋𝐿𝑌)‘𝑅)(⟨(𝐹𝑋), (𝐾𝑋)⟩ · (𝐾𝑌))(𝐴𝑋))))
4918, 48rspcimdv 3566 . 2 (𝜑 → (∀𝑥𝐵𝑦𝐵𝑓 ∈ (𝑥𝐻𝑦)((𝐴𝑦)(⟨(𝐹𝑥), (𝐹𝑦)⟩ · (𝐾𝑦))((𝑥𝐺𝑦)‘𝑓)) = (((𝑥𝐿𝑦)‘𝑓)(⟨(𝐹𝑥), (𝐾𝑥)⟩ · (𝐾𝑦))(𝐴𝑥)) → ((𝐴𝑌)(⟨(𝐹𝑋), (𝐹𝑌)⟩ · (𝐾𝑌))((𝑋𝐺𝑌)‘𝑅)) = (((𝑋𝐿𝑌)‘𝑅)(⟨(𝐹𝑋), (𝐾𝑋)⟩ · (𝐾𝑌))(𝐴𝑋))))
5017, 49mpd 16 1 (𝜑 → ((𝐴𝑌)(⟨(𝐹𝑋), (𝐹𝑌)⟩ · (𝐾𝑌))((𝑋𝐺𝑌)‘𝑅)) = (((𝑋𝐿𝑌)‘𝑅)(⟨(𝐹𝑋), (𝐾𝑋)⟩ · (𝐾𝑌))(𝐴𝑋)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401   = wceq 1570  wcel 2145  wral 3076  cop 4590   class class class wbr 5103  cfv 6533  (class class class)co 7414  Xcixp 8905  Basecbs 17302  Hom chom 17354  compcco 17355   Func cfunc 17944   Nat cnat 18034
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 2213  ax-ext 2732  ax-rep 5232  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7737
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 2100  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 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5550  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-ov 7417  df-oprab 7418  df-mpo 7419  df-1st 7987  df-2nd 7988  df-ixp 8906  df-func 17948  df-nat 18036
This theorem is used by:  fuccocl  18057  invfuc  18067  evlfcllem  18310  yonedalem3b  18368  yonedainv  18370  natoppf  50156  fuco22natlem1  50269  fuco22natlem2  50270  fuco23alem  50278  concom  50590  coccom  50591
  Copyright terms: Public domain W3C validator