When do coherence spaces have pullbacks and pushouts?
I now see how to define equalizers for coherence spaces, which means pullbacks always exist (since products do). I don't know how to do this, actually....

Recall that composition is the usual relational composition, so if $f : A \to B$ and $g : B \to C$, then: 

$f ; g = \{(a,c) \in A \times C \;|\; \exists b \in B.\; (a,b) \in f \land (b,c) \in g\}$

(In this definition, the existential actually implies unique existence. Suppose that we have $b&#39; \in B$ such that $(a,b&#39;) \in f$ and $(b&#39;, c) \in g$. Since we know that $a \Bumpeq_A a$, this means that $b \Bumpeq_B b&#39;$. Then this means that we have $b \Bumpeq_B b&#39;$ and $(b,c) \in g$ and $(b&#39;,c) \in g$, so consequently $b = b&#39;$.)

We now construct equalizers. Suppose we have coherence spaces $A$ and $B$, and morphisms $f, g : A \to B$. Now define the equalizer $(E, e : E \to A)$ as follows. 


For the web, take 
$$E = \left\{ 
\begin{array}{l|c}
&amp; \forall b.\; (a,b) \in f \implies \exists a&#39; \Bumpeq_A a.\; (a&#39;,b) \in g \\
a \in A &amp; \land \\
&amp; \forall b.\; (a,b) \in g \implies \exists a&#39; \Bumpeq_A a.\; (a&#39;,b) \in f \\
\end{array}
\right\}
$$
This picks out the subset of tokens of $A$ on which either $f$ and $g$ agree (up to coherence -- I had this wrong in my first version), or are both undefined. 
Define the coherence relation on $\Bumpeq_E = \{ (a,a&#39;) \in \Bumpeq_A \;|\; a \in E \land a&#39; \in E\}$. This is just the restriction of the coherence relation on $A$ to the subset $E$. This will be reflexive and symmetric since $\Bumpeq_A$ is. 
The equalizer map $e$ is just the diagonal $e : E \to A = \{(a, a)\;|\;a \in E\}$. 


Since I messed up my first version of the proof, I'll give the universality property explicitly. Suppose we have any other object $X$ and morphism $m : X \to A$ such that $m;f = m;g$.

Now define $h : X \to E$ as $\{(x,a) \;|\; a \in E\}$. Obviously $h;i \subseteq m$, but to show the equality we need to show the converse $m \subseteq h;i$. 

So assume $(x,a) \in m$. We now need to show that $\forall b.\; (a,b) \in f \implies \exists a&#39; \Bumpeq_A a.\; (a&#39;,b) \in g$ and $\forall b.\; (a,b) \in g \implies \exists a&#39; \Bumpeq_A a.\; (a&#39;,b) \in f$. 

First, assume $b \in B$ and $(a,b) \in f$. So we know that $(x,a) \in m$ and $(a,b) \in f$, so $(x,b) \in m;f$. Therefore $(x,b) \in m;g$, and so there is an $a&#39; \in A$ such that $(x,a&#39;) \in m$ and $(a&#39;,b) \in g$. Since $x \Bumpeq x$, we know $a \Bumpeq a&#39;$, and so there is an $a&#39; \Bumpeq a$ such that $(a&#39;,b) \in g$. 

Symmetrically, assume $b \in B$ and $(a,b) \in g$. So we know that $(x,a) \in m$ and $(a,b) \in g$, so $(x,b) \in m;g$. Therefore $(x,b) \in m;f$, and so there is an $a&#39; \in A$ such that $(x,a&#39;) \in m$ and $(a&#39;,b) \in f$. Since $x \Bumpeq x$, we know $a \Bumpeq a&#39;$, and so there is an $a&#39; \Bumpeq a$ such that $(a&#39;,b) \in f$.