Definition 5.0.0.3. Let $U: \operatorname{\mathcal{E}}\rightarrow \operatorname{\mathcal{C}}$ be a functor between categories. We say that $U$ is a cartesian fibration if it satisfies the following condition:
For every object $Y$ of the category $\operatorname{\mathcal{E}}$ and every morphism $\overline{f}: \overline{X} \rightarrow U(Y)$ in the category $\operatorname{\mathcal{C}}$, there exists a pair $(X, f)$ where $X$ is an object of $\operatorname{\mathcal{E}}$ satisfying $U(X) = \overline{X}$ and $f: X \rightarrow Y$ is a $U$-cartesian morphism of $\operatorname{\mathcal{E}}$ satisfying $U(f) = \overline{f}$.
We say that $U$ is a cocartesian fibration if it satisfies the following dual condition:
For every object $X$ of the category $\operatorname{\mathcal{E}}$ and every morphism $\overline{f}: U(X) \rightarrow \overline{Y}$ in the category $\operatorname{\mathcal{C}}$, there exists a pair $(Y, f)$ where $Y$ is an object of $\operatorname{\mathcal{E}}$ satisfying $U(Y) = \overline{Y}$ and $f: X \rightarrow Y$ is a $U$-cocartesian morphism of $\operatorname{\mathcal{E}}$ satisfying $U(f) = \overline{f}$.