How do you prove that an instantaneous center of rotation exists? Many textbooks tell you that "there always exists a point that has zero velocity (the instantaneous center of rotation) and is therefore a center of rotation" but they never show a proof of this. I haven't been able to find any online either and was wondering if someone could prove why such a point should always exist.
 A: Fix a reference frame $R$ with axes $x,y,z$ and origin $O$ and suppose that the solid body $B$ is moving with a planar motion, let's say, parallel to the plane $x,y$.
If $O'$ is a fixed point of $B$, but generally moving in $R$,  the velocity of a point $P \in B$ in $R$ satisfies 
$$\vec{v}_P(t) = \vec{v}_{O'}(t) + \vec{\omega}(t)\times \vec{O'P}(t)\:.$$
Since the motion is planar $\vec{\omega}(t) = \omega(t) {\bf e}_z$ and $\vec{v}_{O'}(t) =v_{O'x}(t){\bf e}_x + v_{O'y}(t){\bf e}_y $.
The question now is if it is possible to fix $P(t)$, i.e.,  a point on $B$ at a given instant $t$, such that 
$$\vec{v}_{O'}(t) + \vec{\omega}(t)\times \vec{O'P}(t)=0\:.$$
Here $\vec{\omega}(t)$ and $\vec{v}_{O'}(t)$ are given. So the equation for the unknown $\vec{X}= \vec{O'P}(t)$ is
$$\vec{\omega}(t) \times \vec{X}= -\vec{v}_{O'}(t)\:.$$
If $\vec{X}= X{\bf e}_x+ Y{\bf e}_y + Z{\bf e}_z$, the above equation reads
$$\omega(t) X = v_{O'y}(t)\:, \quad \omega(t) Y = -v_{O'x}(t)$$ so that
$$X = v_{O'y}(t)/\omega(t) \:, \quad Y = -v_{O'x}(t)/\omega(t)\:, \quad Z=0$$ 
defines a point on $B$ (more precisely a point in the rest space of $B$ but not necessarily coinciding with a material point of $B$) which has zero velocity at time $t$ in $R$.
I stress that if the motion is not planar, the statement is generally false. This is evident when trying to solve the system of equations above in the general case.
A: In the planar case the rotation axis is "out of the plane" and we can call this direction $\hat{k}$ and the two planar directions $\hat{i}$ and $\hat{j}$. I am going to prove that for the general 3D case the motion of a rigid body along the axis of rotation is that of translation along the axis. That is $\vec{v}_{\rm axis} = h\,\vec{\omega}$, where $h$ is some scalar value called the pitch.
Project the 3D case down to a plane and the axis of rotation becomes a point (the center of rotation) and the motion at that point being zero as translation out of the plane isn't allowed considered. For planar cases, the pitch $h$ must be zero.
This is a two-step proof. First, we will find a location for the axis of rotation, and then we will examine the conditions (locus) of points away from this location which would produce identical motion for the rigid body.
Problem Definition
This is the setup. There is a translating and rotating rigid body in 3D space which at some instance in time we measure the linear velocity $\vec{v}_A$ of a reference point A and we also know the rotational velocity $\vec{\omega}$ of the body. This point can be the center of mass, or any other point on the body, or outside of the body as long as its location is fixed as seen by on observer riding on the body.
The location of the axis of rotation $\vec{r}_{\rm axis}$ is going to be described relative to this reference point.
Rotation axis point closest to the reference

*

*Lemma 1 - The point on the rotation axis that is closest to the reference point A is given by $$ \vec{r}_{\rm axis} = \frac{ \vec{\omega} \times \vec{v}_A }{ \| \vec{\omega} \|^2} \tag{1}$$
Where $\times$ is the vector cross product, and $\| \|$ is the vector magnitude. Note that $\| \vec{a} \|^2 = \vec{a} \cdot \vec{a}$ with $\cdot$ being the dot product.
Proof - Transform the velocity from A to the axis with $\vec{v}_{\rm axis} = \vec{v}_A + \vec{\omega} \times (\vec{r}_{\rm axis})$ and show that only parallel components to $\vec{\omega}$ remain.

$$ \begin{aligned}
\vec{v}_{\rm axis} & = \vec{v}_A + \vec{\omega} \times \left( \frac{ \vec{\omega} \times \vec{v}_A }{ \| \vec{\omega} \|^2} \right) \\
 & = \vec{v}_A + \frac{ \vec{\omega} ( \vec{\omega} \cdot \vec{v}_A) - \vec{v}_A ( \vec{\omega} \cdot \vec{\omega}) }{ \| \vec{\omega} \|^2 } \\
 & = \vec{v}_A +  \frac{(\vec{\omega} \cdot \vec{v}_A) \vec{\omega}}{\| \vec{\omega} \|^2}  - \vec{v}_A \tfrac{\| \vec{\omega} \|^2}{\| \vec{\omega} \|^2} \\
 &=   \underbrace{\left( \frac{\vec{\omega} \cdot \vec{v}_A}{\| \vec{\omega} \|^2} \right) }_{h} \; \vec{\omega} = h\,\vec{\omega}
\end{aligned}$$
Vector $\vec{v}_{\rm axis}$ is parallel to $\vec{\omega}$ since $h$ is a scalar, a result of dividing the dot product $\vec{\omega} \cdot \vec{v}_A$ with the length squared of rotation.

Motion pitch
The motion pitch $h$ is calculated with
$$ h = \frac{ \vec{\omega} \cdot \vec{v}_A }{ \| \vec{\omega} \|^2} \tag{2}$$
Uniqueness of the rotation axis

*

*Lemma 2 - The axis of rotation is uniquely defined as the points on a line that passes through $\vec{r}_{\rm axis}$ and is parallel to $\vec{\omega}$. So any point $\vec{r} = \vec{r}_{\rm axis} + \vec{d}$ belongs to the axis of rotation only if $\vec{d}$ is parallel to $\vec{\omega}$.
Proof - Transform the velocity to $\vec{r}$ from $\vec{r}_{\rm axis}$ and note the conditions needed to keep the velocity parallel to $\vec{\omega}$. The velocity of the point a distance $\vec{d}$ away from $\vec{r}_{\rm axis}$ is

$$ \begin{aligned} \vec{v} & = \vec{v}_{\rm axis} + \vec{\omega} \times \vec{d} \\
 & = h\, \vec{\omega} + \vec{\omega} \times \vec{d} \end{aligned} $$ and note that $\vec{\omega} \times \vec{d} = \vec{0}$ only iff $\vec{d}=\vec{0}$ or $\vec{d} \parallel \vec{\omega}$.

So no other point in space can exist that produces parallel translation motion unless that point belongs to the line defined by the point $\vec{r}_{\rm axis}$ and $\vec{\omega}$ direction.
Summary
For any moving rigid body the location of the axis of rotation is found from the velocity at a reference point $\vec{v}_A$ and the rotation vector $\vec{\omega}$ as such
$$ \vec{r}_{\rm axis} = \frac{ \vec{\omega} \times \vec{v}_A }{ \| \vec{\omega} \|^2} \tag{1}$$
In addition, the geometry of motion yields the pitch value describing the parallel motion of the points coinciding with the axis of rotation.
$$ h = \frac{ \vec{\omega} \cdot \vec{v}_A }{ \| \vec{\omega} \|^2} \tag{2}$$
In reverse, given the location of the rotation axis $\vec{r}_{\rm axis}$, the pitch value $h$ and the rotation vector $\vec{\omega}$ the velocity of the body on any point in space $\vec{r}$ is given by
$$ \vec{v} = h\,\vec{\omega} + ( \vec{r} - \vec{r}_{\rm axis}) \times \vec{\omega} \tag{3} $$
this describes the velocity field around the axis.
Planar Case
Finally, in the planar case, we can break down the center of rotation by component as
$$ \vec{r}_{\rm axis} = \tfrac{1}{\omega^2} \pmatrix{ -v_y \omega \\ v_x \omega} = \pmatrix{ -\tfrac{v_y}{\omega} \\ \tfrac{v_x}{\omega} } \tag{4} $$ with $(v_x,\,v_y)$ the components of the velocity at the reference point, and $\omega$ the rotation magnitude.
Note also that the pitch in the planar case is always zero, since $\vec{v} \cdot \vec{\omega} = 0$ by definition.
