Justification for the method of differentials/characteristics.

In the "method of characteristics" we find the solution of some first order PDE in terms of some parameters $s,t$ and then "solving" for these parameters we put them back in to obtain the solution. i.e we might have some PDE

$$a\frac{\partial u}{\partial x} + b \frac{\partial u}{\partial y} = 0$$

with initial data

$$u(0,s) = u_0(s),\\ x(0,s) = x_0(s),\\y(0,s) = y_0(s)$$

which we can say has solution

$$x = at+x_0(s)\\ y = bt + y_0(s)\\u = u_0(s)$$

and on rearranging the above $$bx-ay = bx_0-ay_0 = \gamma(s) \text{ for some } \gamma$$

then writing $s = \gamma^{-1}(bx-ay)$ to conclude that $$u = (u_0 \circ \gamma^{-1})(bx-ay) = f(bx-ay)$$

where I have assumed that we are looking for a classical solution so I was able to apply the inverse function theorem to $\gamma$.

I think this is the "justification" for the method of characteristics! (the use of the inverse function theorem to map $(s,t) \rightleftarrows (x,y)$ injectively.)

Now for the method of differentials, this same problem would eventually lead us to the equations

$$c_2 = ay-bx, \qquad u = c_1$$

at which point we say

Let$$c_1 = f(c_2)$$

what I am interested in is the justification for this. What allows us to do this? is it again the implicit function theorem? that is, if I have even correctly concluded that the justification for the first method is the implicit function theorem.

$$\begin{cases} u=c_1\\ ax-by=c_2 \end{cases}$$
We can proceed now as the solution were done and watch what the equations could look like. We can pick up a point in the surface solution, say $(x_0,y_0,z_0)$. This point obviously determines the values of $c_1$ and $c_2$, say $c_{1a}$ and $c_{2a}$. Choose another point and do the same, find the new $c_1$ and $c_2$, say $c_{1b}$ and $c_{2b}$. And we can go further and choose a path between these points. If we choose two points not giving the same $c_1$ and $c_2$ we find a relation between $c_1$ and $c_2$ along the path, so is $c_1=g(c_2)$ for some $g$. But now we realize that from the very beginning, $c_1$ and $c_2$ are functionally related: $c_1=f(c_2)$ for some $f$.
$$\begin{cases} u=c_1=f(c_2)\\ ax-by=c_2 \end{cases}$$
The equations are those for two planes, the intersection of which is a (characteristic curve). Choose $c_1$ and $c_2$, then we get a curve into some solution. Then, we can look for another pair $c_1$ and $c_2$ but now imposing that they are in the same surface solution. In this case, we are not allowed to pick up freely the values, but those bringing the curve into the surface solution. We impose have a serious restriction over $c_1$ and $c_2$. But this restriction will happen for every pair of values for $c_1$ and $c_2$ we try to find. So is, they are functionally related: $c_1=f(c_2)$, as before.