Dividing by functions of $y$ in differential equations without knowledge of them being non-zero? A lot of books solve separable differential equations like this:
$$ \frac{dy}{dx} = g(x)h(y),\  for \ x=x_0, y=y_0 \Leftrightarrow  \frac{dy}{dx}\frac{1}{h(y)} = g(x) \Rightarrow \int \frac{dy}{dx}\frac{1}{h(y)} dx = \int g(x)dx $$
...and so on. My problem arises in the second step, where authors divide with $ h(y) $. How do we know that $h(y)$ is not zero for all $x$ ? Why do they make that (unsafe) step?
Some further thoughts
Let's consider the differential equation $ f'(x) = f(x) \ \forall x \in \Bbb R $ with initial condition $ f(x_0)=0 $ where $x_0$ is some real number. I will solve this differential equation by using the integrating factor:
$$ I(x) = e^{-x}$$
The differential equation becomes:
$$ f'(x)=f(x) \Leftrightarrow f'(x)+(-f(x))=0\Leftrightarrow f'(x)e^{-x}+(e^{-x})'f(x)=0 \Leftrightarrow$$
$$ (e^{-x}f(x))'=0\Rightarrow e^{-x}f(x)=C\Leftrightarrow f(x)=Ce^{x} $$
Evaluating the initial condition, we get: $C=0$ and therefore $f(x) =0 \ \forall x \in \Bbb R$
If we had approached the same problem by the strategy shown in the beginning, the second step would have been completely incorrect.
 A: I think at the level of undergraduate differential equations, most authors are operating formally, and don't like to get bogged down with details like this (another one that has often bothered me is the whole $\int \frac 1 x dx = \ln\lvert x \rvert + C$; that absolute value and these arbitrary constants have confused more students than I can count, we should really only deal with definite integrals). This being said, while mathematically minded people like to make these small distinctions and follow all the rules, pedagogically, it is easier to abandon some of the rigor especially since these classes are offered to students in the other sciences as well (physics, engineering, etc.)
EDIT: to expand on this, one of the reasons mathematicians are so pedantic is because at higher levels, having all the details straightened out is really important, and you can get yourself in a lot of trouble by ignoring or glossing over them. However, at the level of linear ODEs, you can't really get yourself into too much trouble. Even if you are breaking some small rules like this, you can often arrive at the correct answer. To use your example: if we ignore the initial condition and formally consider the equation: $$f'(x) = f(x).$$ We can divide by $f$ (which, as you've pointed out is not strictly 'legal'), and see $$\frac{f'(x)}{f(x)} = 1 \,\,\,\, \implies \,\,\,\, \log(f(x)) = x + C \,\,\,\, \implies f(x) = C e^x.$$ Now we can retrospectively use the initial condition, and we see that $C=0$ and thus $f(x) = 0$ for all $x$. Of course, I completely glossed the fact that I divided by zero at the start, but in the end, I still arrived at the correct answer. If you try to do stuff like this in more advanced scenarios, you will probably arrive at something completely incorrect, but at this level, it doesn't matter too too much.  
