 In general a category \(C\) consists of objects \(a, b, c\) and morphisms \(f: a\rightarrow b\), together with an associative composition law for “composable” morphisms \(f: b\rightarrow c\), \(g: a\rightarrow b\) yielding the morphism \(fg: a\rightarrow c\). Furthermore every object a has an identity element \(1_a : a\rightarrow a\) which whenever composable with a morphism \(f\) (on one side or the other) composes with it to yield \(f\). A functor \(F: C\rightarrow D\) maps objects of \(C\) to objects of \(D\) and morphisms of \(C\) to morphisms of \(D\), such that \(F(fg) = F(f)F(g)\) and \(F(1_a) = 1_{F(a)}\). That is, functors are “homomorphisms of categories,” preserving composition and identities.