Preliminaries: There are lots of variations on the settings in which we define sheaves. I am concerned with the details linking the general definition below to the Grothendieck topology it generates; particularly, the assertion that sheaves with respect to a coverage are the same as sheaves with respect to the generated Grothendieck coverage.


Let $\mathcal{C}$ be a (small) category. Do not assume $\mathcal{C}$ has pullbacks. Denote the Yoneda embedding of an object by $Yc$.


Descent can be phrased concisely in terms of subfunctors of Yoneda embeddings. We say, a presheaf $X$ satisfies *descent* with respect to a subfunctor $\iota \colon F \hookrightarrow Yc$ if and only if the precomposition $-\iota \colon \lbrack \mathcal{C}^{\operatorname{op}}, Set \rbrack (Yc,X) \rightarrow \lbrack \mathcal{C}^{\operatorname{op}}, Set \rbrack (F,X)$ is an isomorphism.


Any set of maps $f:=\{ f\_i \colon c\_i \rightarrow c \}\_I$ generates a subfunctor $\iota\_f \colon Y\_f \hookrightarrow Yc$ by declaring $Y\_f \bullet = \{ \alpha \colon \bullet \to c ~|~ \exists f\_i ~ \alpha \mbox{ factors through } f\_i \}$. In this manner, we can encode the usual "*$X$ descends along the cover $f$*" with "*precomosition with $\iota\_f$ is a isomorphism*".


A site is a category equipped with a [coverage](https://ncatlab.org/nlab/show/coverage) $\mathcal{J}$ assigning to each object $c$ a collection of covering families $\mathcal{J}c$ which are sets of maps $f = \{ f\_i \colon c\_i \rightarrow c \}\_I$ such that the covering families are *supported under pullback* i.e. $\forall f \in \mathcal{J}c,~\varphi \in \mathcal{C}(b,c)~ \exists g \in \mathcal{J}b: Y\_g \hookrightarrow \varphi^\*Y\_f$ where $\varphi^\*Y\_f$ is the pullback of $Y\_f \hookrightarrow Yc$ along composition with $\varphi$.


Then a *sheaf* with respect to the site $(\mathcal{C},\mathcal{J})$ is a presheaf $X \colon \mathcal{C}^{\operatorname{op}} \to Set$ satisfying descent for all the $Y\_f$.


We can generate a [Grothendieck coverage](https://ncatlab.org/nlab/show/Grothendieck+topology) $\mathcal{G}$ from any coverage (for each $c$ intersect $\mathcal{G}\_\lambda c$ all such coverages $\mathcal{G}\_\lambda$ and note that the trivial coverage assigning all subsets of maps to $c$ as covering families is Grothendieck). What is not clear to me is how, "One can then show that for every coverage, there is a unique Grothendieck coverage having the same sheaves." as the nLab entry for coverage claims.


Question:


How is it that sheaves with respect to $\mathcal{G}$ are the same as those with respect to $\mathcal{J}$? In particular, given $X \in Sh(\mathcal{C},\mathcal{J})$, a cover $f \in \mathcal{J}$, and map $\varphi$; support under pullback gives us $g \in \mathcal{J}$ with:


$ Y\_g \overset{\iota}{\hookrightarrow} \varphi^\*Y\_f \overset{\iota\_{\varphi^\*Y}}{\hookrightarrow} Yb$


That $X$ is a sheaf gives us precomposition with $\iota\_g = \iota\_{\varphi^\*Y}\iota$ is an isomorphism. How does that imply precomposition with $\iota\_{\varphi^\*Y\_f}$ is an isomorphism?



Why are sheaves of a coverage the same as those on its generated Grothendieck coverage?
Extend $g$ to any generating set for $\varphi^\*F$, say $\widehat{f} := \{ b\_k \overset{\widehat{f}\_k}{\longrightarrow} b \} \supseteq g := \{ b\_{k\_j} \overset{\widehat{f}\_{k\_j}}{\longrightarrow} b \}$, we will need to demonstrate that a sheaf with respect to the coverage $\mathcal{J}$ must satisfy descent for $\varphi^\*F$.


Let $(y\_k) \in \prod\_K Xb\_k$ be a $\varphi^\*F$-compatible tuple. Because $X$ descends along $Y\_g$, and $(y\_{k\_j})$ is $G$-compatible, $\exists!y \in Xb$ such that $X\widehat{f}\_{k\_j}y = y\_{k\_j}$. The problem can be restated as: there may be $\widehat{f}\_k$ not in $g$ and a priori we don't know that $X\widehat{f}\_k y = y\_k$.


Let $\widehat{f}\_t \in \widehat{f} - g$. Support under pullback of $Y\_g$ along $\widehat{f}\_t$ guarantees there is a cover $Y\_h \in \mathcal{J} b\_t$ generated by elements of $\widehat{f}\_t^\*G$ whence we have commuting squares $\widehat{f}\_t h\_s = \widehat{f}\_{k\_{j\_s}}\psi\_s$ with h = $\{ h\_s \}$. In particular note $(X\psi\_s y\_{k\_{j\_s}})$ is $Y\_h$-compatible and therefore applying descent, we may conclude $\exists!z \in Xb\_t$ such that $Xh\_sz = X\psi\_s y\_{k\_{j\_s}}$.


But by $Y\_g$-compatibility $\widehat{f}\_t h\_s = \widehat{f}\_{k\_{j\_s}}\psi\_s$, we know $Xh\_s y\_t = X\psi\_s y\_{k\_{j\_s}}$ and thus $z = y\_t$. In other words, $X$ satisfies descent for $\varphi^\*F$ as desired.


