An insight into category theory and epimorphism.


To study epimorphism, it will be necessary to study category theory, because epimorphism is a concept used in category theory that studies the categorical analogues of surjective functions(onto functions).

What is category theory?
Category theory is a concept that formalizes a mathematical structure in terms of labelled directed graphs called category, whose vertices are called "objects" and whose edges are called "arrows" or morphisms, the term morphisms is used in category theory specifically to obey conditions that are specific to category theory itself. 
The category has two known properties:
  1.  Associativity in terms of composition of arrows and
  2. existence of identity arrow for each object. 
A good example of category, is the category of sets where the objects are the sets and the arrows are morphisms(functions) from one set to another. As the definition of category theory entails, any mathematical structure or concept that is formalized to meet the conditions on the behavior of objects and arrows is a valid category and all results of category theory applies. 
A category is itself a type of mathematical structure, so we can look for "processes" which preserve this structure in some sense; such a process is called a functor. Functors are represented by arrows between categories, subject to specific defining commutativity conditions. 
So when we talk about epimorphism in category theory, we say it is a morphism $f$ between two set or objects say $X$ and $Y$ defined by $f:X\rightarrow{Y}$ that is right cancellative such that for all objects $Z$ and all morphisms $g_1,g_2:Y\rightarrow{Z}$ is represented as:




It is important to note that the dual of an epimorphism is a monomorphism and every morphism in a concrete category whose underlying function is surjective is an epimorphism. 
In non-concrete category, a good example of an epimorphism is when a monoid or a ring is considered as a category with a single object, then the epimorphisms are the right cancellable elements. Also if a directed graph is considered as a category then every morphism in the graph is an epimorphism. 
In concrete categories like sets, a set is an epimorphism, if the morphism of the set is surjective since the surjectiveness of a morphism is a prerequisite for the existence of epimorphism. 
We can go on and on to formalize different mathematical structures to show they are epimorphic since every morphism in a concrete category whose underlying function is surjective is an epimorphism. 
Other concrete structures like groups, finite groups, abelian groups and topological spaces are all epimorphic.