# Show that if $u\in C^1(\mathbb{R}^2)$ solves $u_t + uu_x = 0$, then $u$ is constant

Let $u \in C^1(\mathbb{R}^2)$ be a solution to the first order equation $u_t + uu_x = 0$. Prove that $u$ is a constant function.

-
Another way to do this is note that if $u_x(x_0,0)<0$ for some $x_0$ the solution breaks at a finite positive time (the characteristics meet). In the same manner the derivative can't be anywhere positive in $t=0$. By the representation $u=u_0(x-ut)$ ($u_0=u|_{t=0}$) we get that $u$ is constant. –  Jose27 Dec 27 '12 at 7:08

The key point is that $u$ is defined on the entire plane, not a half of it. Suppose $u$ is nonconstant. By Sard's lemma it has infinitely many regular (i.e., non-critical) values. Let $a,b$ be two distinct regular values of $u$. Let $\Gamma_a$ be a connected component of the level set $\{u=a\}$. This is a smooth curve. At every point of $\Gamma_a$ we have $(1,a)\cdot (u_t,u_x)=0$, which tells us that $(1,a)$ is tangent to $\Gamma_a$. Therefore, $\Gamma_a$ is a line with slope $a$.
The same consideration applies to $\Gamma_b$, a connected component of $\{u=b\}$. Two lines with distinct slopes must have a point in common. But level sets are disjoint. $\Box$