Resolving the base locus of a linear system on product projective space Consider a linear system $\lvert D \rvert \subset H^0(\mathbf{P}^2 \times \mathbf{P}^2, \mathcal{O}(a,b))$ with nonempty base locus $B$. This linear system defines a rational map $\mathbf{P}^2 \times \mathbf{P}^2 \dashrightarrow \mathbf{P}^n$, defined on the complement of $B$. (Here $n$ is of course one less than the dimension of the linear system.) By resolving the base locus of $D$, I mean resolving the indeterminacy locus of this rational map, i.e. finding a regular map $X \to \mathbf P^n$ from some smooth variety $X$ birational to $\mathbf{P}^2 \times \mathbf{P}^2$, extending the rational map. That such a resolution exists is a standard fact; I am seeking to describe it explicitly.
For instance, if the base locus of $B$ consists of a disjoint union of irreducible components, it seems clear to me that $X$ can be obtained as the blowup along these components; in fact, I believe the same should apply if the irreducible components intersect transversally. However, things seem more complicated if the irreducible components of the base locus do not intersect transversally.
For a simple example, consider the linear system
$$\langle x_1y_2, x_2y_1 \rangle,$$
where the coordinates on $\mathbf{P}^2 \times \mathbf{P}^2$ are $((x_1,x_2,x_3),(y_1,y_2,y_3))$.  This gives a rational map $\mathbf{P}^2 \times \mathbf{P}^2 \dashrightarrow \mathbf{P}^1$.
The base locus of this linear system has irreducible components $X_1 = V(x_1,x_2)$, $Y_1 = V(y_1,y_2)$, $Z_1 = V(x_1,y_1)$, and $Z_2 = V(x_2,y_2)$. Evidently we have $X_1 \cap Y_1 = Z_1 \cap Z_2$ is a point, and these intersections are transversal; however, the intersections $X_1 \cap Z_i$ and $Y_1 \cap Z_i$ are not transversal: each such intersection has dimension $1$ rather than the expected dimension $0$.
In this case, how can we explicitly resolve the base locus? Simply blowing up the irreducible components seems like it would cause problems, because of these non-transversal intersections, so my next guess would be to first blowup the intersections of the irreducible components (and, in general, the intersections of the intersections, and so on, in increasing order of dimension). Intuitively, each blowup will make the proper transforms of the next subvarieties disjoint, hence reducing the problem to the easy case.
I've attempted this approach for similar linear systems on $\mathbf{P}^n$ and it seems to be valid. However, I have reason to suspect that this does not work quite as well for $\mathbf{P}^2 \times \mathbf{P}^2$. Without getting into too much detail, computing the intersection theory for this sequence of blowups seems to give some incorrect intersection numbers for pullbacks of divisors from $\mathbf{P}^1$.
Is there anything obviously wrong with my approach to resolving this base locus, and if so, is there a better technique I should be looking at for performing such a resolution? Perhaps more to the point, after performing a sequence of blowups, how can I actually check that the resulting linear system is basepoint-free or not? (For this last question, it seems possible to explicitly compute coordinates for the blowup, but as you can imagine such computations would get unwieldy quite quickly.)
 A: The main problem in your approach is that you are only looking at the set of points in the base locus. You really have to look at it with its natural scheme structure. 
By the way, a linear system $|D|$ forms a projective linear subspace of $\mathbb P(H^0(X, \mathscr O_X(D)))$. (I.e., it is not a subspace of $H^0(X, \mathscr O_X(D))$.)
So, let $V\subseteq H^0(X, \mathscr L)$ be a space of sections (of a line bundle $\mathscr L$) defining a rational map $\phi: X\dashrightarrow \mathbb P^N$. Then the base locus of $V$ is the closed subset of $X$ where the morphism of sheaves
$$
V\otimes \mathscr O_X \to \mathscr L 
$$
is not surjective. This naturally defines an ideal sheaf:
$$
\mathscr J:= \mathrm{Im}\left[ V\otimes \mathscr L^{-1} \to \mathscr O_X \right]\subseteq \mathscr O_X,
$$
which gives you the natural scheme structure of the base locus. 
So, to resolve the indeterminacy, blow up the ideal sheaf $\mathscr J$:
$$
\pi: \widetilde X:=\mathrm{Bl}_{\!\mathscr J}X\to X.
$$
Then by the standard properties of blowing up, the pre-image 
$$
\mathscr J'=\pi^{-1}\!\!\mathscr J\cdot \mathscr O_{\widetilde X} \subseteq \mathscr O_{\widetilde X}
$$
is a line bundle, so the sections $\pi^*V\subseteq H^0(\widetilde X, \pi^*\mathscr L)$ generate a sub-line bundle $\mathscr L'$ of $\pi^* \mathscr L$. In other words, the rational map $\phi\circ \pi$ is given by a space of global sections of $\mathscr L'$ that generate $\mathscr L'$, i.e., the rational map $\phi\circ\pi: \widetilde X\dashrightarrow \mathbb P^N$ is defined everywhere and hence it is a morphism. 
Now to compare to your original approach, the issue is whether the blow up of $\mathscr J$ is the same as the blow up of $\sqrt {\mathscr J}$ (which is the same as blowing up the support). They could be the same, even if the ideals are different. For instance blowing up a power of an ideal gives the same thing, but more generally it is usually hard to tell if there is a difference.
