For tetrahedra, a normal surface has a vector counting four triangle types and three quadrilateral types in each tetrahedron. On every glued face, the numbers of arcs of each of its three types must agree on the two sides. These give homogeneous integer linear equations
For closed surfaces the coordinates of disks meeting an unglued boundary face must also vanish. The nonnegativity and matching equations are not the whole admissibility condition: in each tetrahedron at most one of its three quadrilateral coordinates can be nonzero. Conversely, for an admissible vector, arrange the prescribed parallel disks and glue their face arcs in order. This reconstructs an embedded normal surface, unique up to normal isotopy.
A fundamental normal surface corresponds to a nonzero admissible vector which cannot be written as with both and nonzero admissible vectors. These indecomposable vectors form a fundamental set: every admissible vector is their finite sum. To find them, fix which quadrilateral type is allowed in each tetrahedron. This leaves the integer points of a rational polyhedral cone , with some coordinates set to zero. Compute its Hilbert basis of a rational cone, for example by subdividing into rational simplicial cones and enumerating the lattice points in their fundamental parallelepipeds along with their integral ray generators, then removing decomposable generators. Repeat the finite list of quadrilateral choices, remove duplicates, and remove vectors decomposable in their compatible sector. Finiteness follows because each of these pointed rational cones has a finite Hilbert basis.
Let be the link exterior. By Alexander duality, for a two-component link
An embedded connected closed surface separates ; its mod-two class is nonzero exactly when the two link components lie on different sides. The connectedness qualification matters: two parallel splitting spheres form a disconnected surface with zero total class. We use the criterion only for connected surfaces.
Normalize a splitting sphere by isotopy, disk compressions and removal of components lying inside tetrahedra. A compression replaces a sphere by two spheres whose mod-two classes add to the old class; at least one is still a splitting sphere. The discarded tetrahedral spheres have zero class. Thus there is a normal splitting sphere. Choose one, , of least normal surface weight.
Suppose its vector is decomposable. Realize as a Haken sum, choosing a decomposition with the least possible number of intersection curves. Two elementary exchange observations are useful. First, and can be taken connected. If their total union has more than two components, perform regular exchanges connecting components until exactly two embedded groups remain, resolving any intersections within each group. Since the final sum is connected, this can be done before the last joining exchange; it uses up at least one of the old intersection curves. The resulting two normal surfaces still have total vector , contradicting minimality. Second, no intersection curve separates both and . If it did, resolve that curve first: the two separated sides give two groups. Resolve any remaining self-intersections within each group and continue exchanges between groups only while the result remains disconnected. Just before the exchange making the final connected surface, there are again exactly two embedded normal groups with fewer intersection curves. Both assertions follow from the local four-bank resolution at an intersection circle; internal crossings are resolved before regarding a group as one embedded summand.
Every closed embedded surface in is orientable. Additivity of Euler characteristic in the Haken sum gives
For connected orientable closed surfaces the positive Euler characteristic is , and the only zero Euler characteristic is that of a torus. Thus one summand, say , is a sphere and the other is a torus. Both have smaller weight than . The sphere cannot split the link by minimality, so
Each intersection circle separates the sphere , so the second exchange observation makes it nonseparating on . In particular, these circles are essential parallel curves on the torus.
Cut along the intersection circles. There are at least two innermost disk patches. Choose one of smallest weight, ; then . Its interior misses , and its boundary is essential on . Compress the torus along two slightly separated copies of . The result is a sphere , and the compression takes place in the exterior, so
Thus is a splitting sphere.
This alone is not quite a contradiction if the last weight inequality is equality: need not yet be normal. At the compression seam it uses the alternative, rather than regular, exchange between the disk patch and the torus. An intersection circle of normal disk sheets must cross a tetrahedral face; it cannot be a closed curve entirely in two disk interiors in one tetrahedron, which can be put in standard position with only intersection arcs. In a face, parallel arcs of the same type do not cross. At a crossing of different normal arc types, the alternative exchange joins two endpoints on the same edge, producing a returning arc. Pushing across its edge bigon strictly reduces weight. Normalize the resulting surface, retaining a nonzero-class sphere at each compression as before. We obtain a normal splitting sphere of weight strictly less than , a contradiction. Therefore
The algorithm is now finite. Triangulate the exterior from a link diagram, enumerate its fundamental admissible vectors with the closed-surface boundary condition, reconstruct their surfaces, and inspect the connected components and Euler characteristics. A fundamental vector yields a connected surface, since otherwise its component vectors decompose it. A connected closed surface in with Euler characteristic two is a sphere. Compute its mod-two class in the finite simplicial chain complex, or equivalently check which link boundary tori lie on either side. Answer yes exactly when such a sphere has nonzero class. The argument proves that every split link is detected, and every detected sphere witnesses splitting. For more than two components, and a nonzero sphere class separates a nonempty proper subset of the components; the same least-weight argument and finite enumeration apply.