Definition 1.1.3 (Functor). Let $\mathfrak{A}$ and $\mathfrak{B}$ be categories. A covariant functor is a rule that assigns each $A \in \obj{\mathfrak{A}}$ to some $\lambda(A) \in \obj{\mathfrak{B}}$, and each $f \in \mor{A, B}$ to some $\lambda(f) \in \mor{\lambda(A), \lambda(B)}$, such that
For any $A \in \obj{\mathfrak{A}}$, $\lambda(\text{Id}_{A}) = \text{Id}_{\lambda(A)}$.
For any $A, B, C \in \obj{\mathfrak{A}}$, $f \in \mor{A, B}$, and $g \in \mor{B, C}$, $\lambda(g \circ f) = \lambda(g) \circ \lambda(f)$.
A contravariant functor is a rule that assigns each $A \in \obj{\mathfrak{A}}$ to some $\lambda(A) \in \obj{\mathfrak{B}}$, and each $f \in \mor{A, B}$ to some $\lambda(f) \in \mor{\lambda(B), \lambda(A)}$, that satisfies (FN1) and
For any $A, B, C \in \obj{\mathfrak{A}}$, $f \in \mor{A, B}$, and $g \in \mor{B, C}$, $\lambda(g \circ f) = \lambda(f) \circ \lambda(g)$.