... for an open covering $U = \bigcup U_i$, an $I$-indexed family of functions $f_i : U_i \to \Bbb{R}, \ i \in I$, is an element of the product set $\prod_i CU_i$, while the assignments $\{f_i\} \mapsto \{f_i \mid_{U_i \cap U_j}\}$ and $\{f_i\} \mapsto \{ f_j \mid_{U_i \cap U_j}\}$define two maps $p$ and $q$ of $I$-indexed sets to $(I\times I)$-index sets, as in the diagram
$$ e: C U \dashrightarrow \prod\limits_i C U_i \xrightarrow{p, q} \prod\limits_{i,j} C(U_i \cap U_j) $$
(from "Sheaves in Geometry & Logic" pg. 65)
I'm having trouble with the bolded part, in particular: do they mean $i \neq j$ or something? I'm not seeing why / how these $p, q$ definitions work.
I think that these become clearer when rewritten with a different restriction symbol and with explicit indexing. We're sending the $I$-indexed set $(f_i)_{i\in I}$ to the $I^2$-indexed set $(f_i\upharpoonright U_i\cap U_j)_{i,j\in I}$, respectively the $I^2$-indexed set $(f_j\upharpoonright U_i\cap U_j)_{i,j\in I}$.
(In particular, I think using "$\vert$" for restriction in the context of set builder notation is unnecessarily confusing. But oh well.)