Users' Mathboxes Mathbox for Zhi Wang < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  fucofunc Structured version   Visualization version   GIF version

Theorem fucofunc 50686
Description: The functor composition bifunctor is a functor. See also fucofunca 50687.

Its object function need not determine its morphism function; see fuconuniqex2 50992. In fuconuniqex 50991 both source categories are (SetCat‘1o). The witness target is the category of par2cat 50973, with two objects and two parallel nonidentity arrows. The map in fuconuniq 50987 exchanges those arrows and gives another functor with exactly the same object function; fuconuniq2 50990 states its existence. At a natural-transformation/identity pair, the canonical and alternative components are respectively ∅ and 1o, as proved in fuconuniqvals 50989.

For arbitrary categories, fucoisfunc 50692 characterizes all morphism parts with the object function ( ∘func ↾ 𝑊) of functor composition. The componentwise version fucoisfunc2 50695 expresses the three exact function domains suggested by df-fuco 50644 and fuco23 50668, together with component typing, naturality, and the identity and composition laws. These conditions allow component values other than those of the canonical construction.

(Contributed by Zhi Wang, 3-Oct-2025.)

Hypotheses
Ref Expression
fucoco2.t 𝑇 = ((𝐷 FuncCat 𝐸) ×c (𝐶 FuncCat 𝐷))
fucoco2.q 𝑄 = (𝐶 FuncCat 𝐸)
fucoco2.o (𝜑 → (⟨𝐶, 𝐷⟩ ∘F 𝐸) = ⟨𝑂, 𝑃⟩)
fucofunc.c (𝜑 → 𝐶 ∈ Cat)
fucofunc.d (𝜑 → 𝐷 ∈ Cat)
fucofunc.e (𝜑 → 𝐸 ∈ Cat)
Assertion
Ref Expression
fucofunc (𝜑 → 𝑂(𝑇 Func 𝑄)𝑃)

Proof of Theorem fucofunc
Dummy variables 𝑚 𝑛 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fucoco2.t . . 3 𝑇 = ((𝐷 FuncCat 𝐸) ×c (𝐶 FuncCat 𝐷))
21xpcfucbas 50579 . 2 ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) = (Base‘𝑇)
3 fucoco2.q . . 3 𝑄 = (𝐶 FuncCat 𝐸)
43fucbas 18167 . 2 (𝐶 Func 𝐸) = (Base‘𝑄)
5 eqid 2763 . 2 (Hom ‘𝑇) = (Hom ‘𝑇)
6 eqid 2763 . . 3 (𝐶 Nat 𝐸) = (𝐶 Nat 𝐸)
73, 6fuchom 18168 . 2 (𝐶 Nat 𝐸) = (Hom ‘𝑄)
8 eqid 2763 . 2 (Id‘𝑇) = (Id‘𝑇)
9 eqid 2763 . 2 (Id‘𝑄) = (Id‘𝑄)
10 eqid 2763 . 2 (comp‘𝑇) = (comp‘𝑇)
11 eqid 2763 . 2 (comp‘𝑄) = (comp‘𝑄)
12 eqid 2763 . . . 4 (𝐷 FuncCat 𝐸) = (𝐷 FuncCat 𝐸)
13 fucofunc.d . . . 4 (𝜑 → 𝐷 ∈ Cat)
14 fucofunc.e . . . 4 (𝜑 → 𝐸 ∈ Cat)
1512, 13, 14fuccat 18177 . . 3 (𝜑 → (𝐷 FuncCat 𝐸) ∈ Cat)
16 eqid 2763 . . . 4 (𝐶 FuncCat 𝐷) = (𝐶 FuncCat 𝐷)
17 fucofunc.c . . . 4 (𝜑 → 𝐶 ∈ Cat)
1816, 17, 13fuccat 18177 . . 3 (𝜑 → (𝐶 FuncCat 𝐷) ∈ Cat)
191, 15, 18xpccat 18393 . 2 (𝜑 → 𝑇 ∈ Cat)
203, 17, 14fuccat 18177 . 2 (𝜑 → 𝑄 ∈ Cat)
21 fucoco2.o . . 3 (𝜑 → (⟨𝐶, 𝐷⟩ ∘F 𝐸) = ⟨𝑂, 𝑃⟩)
22 eqidd 2764 . . 3 (𝜑 → ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) = ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
2317, 13, 14, 21, 22fucof1 50649 . 2 (𝜑 → 𝑂:((𝐷 Func 𝐸) × (𝐶 Func 𝐷))⟶(𝐶 Func 𝐸))
2417, 13, 14, 21, 22fucofn2 50651 . 2 (𝜑 → 𝑃 Fn (((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) × ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))))
2521adantr 486 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))) → (⟨𝐶, 𝐷⟩ ∘F 𝐸) = ⟨𝑂, 𝑃⟩)
26 eqidd 2764 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))) → ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) = ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
27 simprl 783 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))) → 𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
28 simprr 785 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))) → 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
2925, 1, 5, 26, 27, 28fucof21 50674 . 2 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))) → (𝑥𝑃𝑦):(𝑥(Hom ‘𝑇)𝑦)⟶((𝑂‘𝑥)(𝐶 Nat 𝐸)(𝑂‘𝑦)))
3021adantr 486 . . 3 ((𝜑 ∧ 𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) → (⟨𝐶, 𝐷⟩ ∘F 𝐸) = ⟨𝑂, 𝑃⟩)
31 eqidd 2764 . . 3 ((𝜑 ∧ 𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) → ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) = ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
32 simpr 490 . . 3 ((𝜑 ∧ 𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) → 𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
3330, 1, 8, 3, 9, 31, 32fucoid2 50676 . 2 ((𝜑 ∧ 𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) → ((𝑥𝑃𝑥)‘((Id‘𝑇)‘𝑥)) = ((Id‘𝑄)‘(𝑂‘𝑥)))
34213ad2ant1 1151 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) ∧ (𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))) → (⟨𝐶, 𝐷⟩ ∘F 𝐸) = ⟨𝑂, 𝑃⟩)
35 eqidd 2764 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) ∧ (𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) = ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
36 simp21 1225 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) ∧ (𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
37 simp22 1226 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) ∧ (𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
38 simp23 1227 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) ∧ (𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)))
39 simp3l 1220 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) ∧ (𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦))
40 simp3r 1221 . . 3 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) ∧ (𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))) → 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))
411, 3, 34, 10, 11, 35, 36, 37, 38, 5, 39, 40fucoco2 50685 . 2 ((𝜑 ∧ (𝑥 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑦 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷)) ∧ 𝑧 ∈ ((𝐷 Func 𝐸) × (𝐶 Func 𝐷))) ∧ (𝑚 ∈ (𝑥(Hom ‘𝑇)𝑦) ∧ 𝑛 ∈ (𝑦(Hom ‘𝑇)𝑧))) → ((𝑥𝑃𝑧)‘(𝑛(⟨𝑥, 𝑦⟩(comp‘𝑇)𝑧)𝑚)) = (((𝑦𝑃𝑧)‘𝑛)(⟨(𝑂‘𝑥), (𝑂‘𝑦)⟩(comp‘𝑄)(𝑂‘𝑧))((𝑥𝑃𝑦)‘𝑚)))
422, 4, 5, 7, 8, 9, 10, 11, 19, 20, 23, 24, 29, 33, 41isfuncd 18069 1 (𝜑 → 𝑂(𝑇 Func 𝑄)𝑃)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147  ⟨cop 4838   class class class wbr 5106   × cxp 5653  ‘cfv 6558  (class class class)co 7443  Hom chom 17468  compcco 17469  Catccat 17867  Idccid 17868   Func cfunc 18058   Nat cnat 18148   FuncCat cfuc 18149   ×c cxpc 18371   ∘F cfuco 50643
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 5235  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7775  ax-cnex 11283  ax-resscn 11284  ax-1cn 11285  ax-icn 11286  ax-addcl 11287  ax-addrcl 11288  ax-mulcl 11289  ax-mulrcl 11290  ax-mulcom 11291  ax-addass 11292  ax-mulass 11293  ax-distr 11294  ax-i2m1 11295  ax-1ne0 11296  ax-1rid 11297  ax-rnegex 11298  ax-rrecex 11299  ax-cnre 11300  ax-pre-lttri 11301  ax-pre-lttrn 11302  ax-pre-ltadd 11303  ax-pre-mulgt0 11304
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  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-tp 4593  df-op 4839  df-uni 4871  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  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-pred 6322  df-ord 6383  df-on 6384  df-lim 6385  df-suc 6386  df-iota 6512  df-fun 6560  df-fn 6561  df-f 6562  df-f1 6563  df-fo 6564  df-f1o 6565  df-fv 6566  df-riota 7400  df-ov 7446  df-oprab 7447  df-mpo 7448  df-om 7902  df-1st 8025  df-2nd 8026  df-frecs 8327  df-wrecs 8358  df-recs 8407  df-rdg 8446  df-1o 8504  df-er 8745  df-map 8877  df-ixp 8954  df-en 9002  df-dom 9003  df-sdom 9004  df-fin 9005  df-pnf 11372  df-mnf 11373  df-xr 11374  df-ltxr 11375  df-le 11376  df-sub 11570  df-neg 11571  df-nn 12363  df-2 12432  df-3 12433  df-4 12434  df-5 12435  df-6 12436  df-7 12437  df-8 12438  df-9 12439  df-n0 12634  df-z 12721  df-dec 12842  df-uz 12993  df-fz 13667  df-struct 17354  df-slot 17389  df-ndx 17401  df-base 17417  df-hom 17481  df-cco 17482  df-cat 17871  df-cid 17872  df-func 18062  df-cofu 18064  df-nat 18150  df-fuc 18151  df-xpc 18375  df-fuco 50644
This theorem is used by:  fucofunca  50687
  Copyright terms: Public domain W3C validator