How do you compute the normal vector to a hyperplane in $\mathbb{R}^n$ given $n$ representative points?

Given $n$ points (no two identical, no three colinear, no four coplanar, etc.), I'd like to find a formula for the normal vector to the unique hyperplane that intersects each of these points.

In three dimensions, we use a cross product: given $x_1, x_2, x_3$, the normal vector is given by $(x_1 - x_2) \times (x_1 - x_3)$. How does this generalize?

-
Do you mean "normal vector"? –  Ben Oct 12 '12 at 1:32
Oops, yes, I totally do. I'll edit that in. –  GMB Oct 12 '12 at 1:33

You want a normal vector rather than "tangent vector." You make an $(n-1)$ by $n$ matrix with row $i$ given by $x_i - x_n.$ Then the normal vector is the null space of this matrix. The fast way to do this is Gauss elimination, but it can also be done as a recipe by pretending the matrix is square, and find the entries of the proper column of the adjoint matrix, given by cofactors with certain $\pm$ signs. The traditional cross product is often taught this way in physics classes.

-
Thanks. When you say "proper column" of the adjoint matrix, what do you mean? When we "pretend the matrix is square," are we filling in the missing row with $0$s? If so, does this tactic generalize to computing nullspaces of, say, $(n-k) \times n$ matrices? –  GMB Oct 12 '12 at 1:54
@LevDub, see en.wikipedia.org/wiki/Cross_product#Matrix_notation and consider doing the analogous thing with a 4 by 4 matrix. For the $n-k$ idea I'm not sure. –  Will Jagy Oct 12 '12 at 3:04
In $R^n$, if we have $n-1$ n-vectors, form the n by n matrix with the first row being the n unit vectors, and the next n-1 rows being the components of the vectors. the resulting vector is orthogonal to each of the n-1 vectors.