I want to show that $\forall a,b\in\mathbb{R}$, we have $|a||b|=|ab|$. Is the proof I have come up with correct? Have I accounted for every possible case?
Case 1, $a,b\ge0$:
By definition, $|a|=a$ and $|b|=b$, thus we have $|a||b|=ab$.
$a,b\ge0$ implies that $ab\ge0$. Therefore, by definition, $|ab|=ab$.
So, $\forall a,b\ge0$, we have $|a||b|=|ab|$ $\blacksquare$
Case 2, $a,b<0$:
By definition, $|a|=-a$ and $|b|=-b$, thus we have $|a||b|=(-a)(-b)=ab$.
$a,b<0$ implies that $ab>0$. Therefore, by definition, $|ab|=ab$.
So, $\forall a,b<0$, we have $|a||b|=|ab|$ $\blacksquare$
Case 3, $a\ge0,b<0$ & $a<0, b\ge 0$:
First, consider the subcase $a\ge0$, $b<0$.
By definition, $|a|=a$, and $|b|=-b$. Therefore, $|a||b|=(a)(-b)=-ab$.
$a\ge0$, $b<0$ implies that $ab\le0$. Thus, by definition, $|ab|=-ab$.
So, $\forall a,b\in\mathbb{R}$ such that $a\ge 0, b<0$, we have $|a||b|=|ab|$.
Because multiplication is commutative, we can show that we have $|a||b|=|ab|$ for the subcase $a<0, b\ge0$ using essentially the exact same argument as above.
So, $\forall a,b\in\mathbb{R}$ such that $a\ge0, b<0$ or $a<0,b\ge0$, we have $|a||b|=|ab|$. $\blacksquare$
Looks good!
You can also prove it using that $|x|=\sqrt{x^2}$ for real $x$; this allows you to do it without separating cases:
$$|ab|=\sqrt{(ab)^2}=\sqrt{a^2b^2}=\sqrt{a^2}\sqrt{b^2}=|a|\cdot|b|.$$
The advantage of this method is that (a generalisation of) it can be used to show that $|zw|=|z|\cdot|w|$ for complex $z$ and $w$.