# How to tell if two points are separated by hyperplanes?

Consider $n$ dimensional space and consider a set of hyperplanes $h_1, \dots h_k$, each one of which goes through the origin. Each hyperplane $h_i$ is defined by an $n$-dimensional vector $v_i$ which has one end at the origin and is normal to the hyperplane.

Given two points $a$ and $b$, how can you determine if there is a continuous path from $a$ to $b$ which doesn't touch any of the $k$ hyperplanes?

• Do all the hyperplanes pass through the origin? If not, you'll need more than just a normal vector to specify each hyperplane. Oct 1 '14 at 18:15
• @JimmyK4542 Yes they do. It is in "each one of which goes through the origin"
– user66307
Oct 1 '14 at 18:16
• Ahh, I did not see that. Thanks. Oct 1 '14 at 18:16
• @JimmyK4542 No problem.
– user66307
Oct 1 '14 at 18:17

Each hyperplane $h_i$ consists of the points $x$ such that $v_i^Tx = 0$.
Suppose that for some $i$, we have $v_i^Ta > 0 > v_i^Tb$ or $v_i^Ta < 0 < v_i^Tb$, that is the points $a$ and $b$ are on opposite sides of the hyperplane $h_i$. Then, for any continuous path $x(t)$ that starts at $x(t_1) = a$ and $x(t_2) = b$, we will have $v_i^Tx(t) = 0$ for some $t \in (t_1,t_2)$. This is a direct consequence of the intermediate value theorem. Hence, there is no continuous path that doesn't intersect the hyperplane $h_i$.
Now, consider the case where for every $i$, we have either ($v_i^Ta > 0$ and $v_i^Tb > 0$) or ($v_i^Ta < 0$ and $v_i^Tb < 0$), that is the points $a$ and $b$ are on the same side of every hyperplane $h_i$. Then, consider the path $x(t) = (1-t)a+tb$ for $t \in [0,1]$ (this is the straight line path between $a$ and $b$). If $v_i^Ta > 0$ and $v_i^Tb > 0$, then $v_i^Tx(t) = (1-t)v_i^Ta + tv_i^Tb > 0$ for all $t \in [0,1]$. If $v_i^Ta < 0$ and $v_i^Tb < 0$, then $v_i^Tx(t) = (1-t)v_i^Ta + tv_i^Tb < 0$ for all $t \in [0,1]$. Thus, if $a$ and $b$ are on the same side of every hyperplane, then the straight line segment between $a$ and $b$ does not intersect any hyperplane.
Therefore, there is a continuous path from $a$ to $b$ that doesn't intersect any of the hyperplanes if and only if $\text{sign}(v_i^Ta) = \text{sign}(v_i^Tb)$ for all $i$, i.e. $a$ and $b$ are on the same side of every hyperplane.