The $2$-fiber product of two functors $f : A \to C$ and $g : B \to C$ is given by the category of triples $(a,b,\theta)$, where $a \in A, b \in B, \theta : f(a) \cong g(b)$. This is the correct notion of fiber product when we think of $\mathrm{Cat}$ as a $2$-category. When we just regard it as a $1$-category, we consider the $1$-fiber product which is the category of pairs $(a,b)$ with $a\in A, b \in B$ such that $f(a)=g(b)$. In both cases, it is clear how to define the morphisms. In his paper [Algebraic K-Theory of Spaces](http://www.math.uni-bielefeld.de/%257Efw/algebraic_K_theory_of_spaces.pdf) (page 8), Waldhausen claims that the $2$-fiber product is equivalent to the $1$-fiber product provided that $f$ has a section, which probably means that there is a functor $s : C \to A$ with $fs=\mathrm{id}\_C$.


Although this is a basic statement about categories and functors, I have some problems with it. Here is what I've tried: There is a fully faithful functor from the $1$-fiber product $A \times\_C B$ to the $2$-fiber product $A \times^{2}\_C B$, namely $(a,b) \mapsto (a,b,\mathrm{id})$. In the other direction, the only functor which comes into my mind is $(a,b,\theta) \mapsto (s(g(b)),b)$. But now it is not clear at all why the compositions of these functors - in either order - are isomorphic to the identity. It seems to me that one needs $sf \cong \mathrm{id}\_A$ for that.


So I will assume now that this general statement is wrong and that Waldhausen had in mind another statement. Which one? If my assumption is correct, one has to use other arguments e.g. for the observations that extension categories of Waldhausen categories are again Waldhausen (page 8) and that the relative S-construction makes sense (page 26).


In each case, it seems to me that one actually wants the $1$-fiber product of exact functors between Waldhausen categories to be again a Waldhausen category. In [Rognes' lectures notes](http://folk.uio.no/rognes/kurs/mat9570v10/akt.pdf) on algebraic K-theory this is claimed in Lemma 8.1.31 with the annotation [[Clear?]]. But it is not clear at all to me if pushouts along cofibrations exist: If $(c,d) \leftarrow (a,b) \rightarrowtail (a',b')$ in $A \times\_C B$, then we can find pushouts $c \coprod\_a a'$ and $d \coprod\_b b'$, but why can we choose them in such a way that $f(c \coprod\_a a')=g(d \coprod\_b b')$? This observation is due to Eva Höning. In any case this $1$-fiber product seems to be [evil](http://ncatlab.org/nlab/show/evil).


A specific example is the S-construction of an exact functor between Waldhausen categories, which then leads to relative K-theory. Waldhausen defines this as a $2$-fiber product, which is then a nice Waldhausen category, but Weibel ([K-Book](http://www.math.rutgers.edu/~weibel/Kbook.html), IV.8.5.3) defines this as a $1$-fiber product, so that it is not clear at all why this is a Waldhausen category.


Can anyone clear up all this confusion?



Pullbacks of (Waldhausen) categories
Nice observation. A sufficient condition so that the $2$-categoricall pull-back coincides with the strict one is that either $f\colon A\rightarrow C$ or $g\colon A\rightarrow C$ is a fibration, in the sense that it satisfies the isomorphism lifting property. These are fibrations for a model category structure on small categories with equivalences of categories as weak equivalences.


Let me recall the isomorphism lifting property. The functor $f$ satisfies that property if given an isomorphism $\epsilon\colon f(a)\rightarrow c$ in $C$ there exists an isomorphism $\delta\colon a\rightarrow b$ in $A$ with $f(\delta)=\epsilon$. In particular $f(b)=c$.


If $f$ satisfies this property then the fully-faithful functor
$$A\times\_CB\longrightarrow A\times^2\_CB$$
$$(a,b)\mapsto (a,\operatorname{id},b)$$
is also essentially surjective, hence an equivalence of categories. Indeed, given $(a,\epsilon, b)$ in the target, $\epsilon$ an isomorphism $\epsilon\colon f(a)\rightarrow g(b)$, we take an isomorphism $\delta\colon a\rightarrow b'$ with $f(\delta)=\epsilon$, and then $(\delta, \operatorname{id})\colon (a,\epsilon, b)\rightarrow (b',\operatorname{id},b)$ is an isomorphism.


If I remember well Waldhausen's paper, this condition applies whenever he invokes the apparently wrong condition.


