Is this a good approach $?$:
- Find branch points by considering where the function is undefined e.g $\sqrt{z(z-1)}$ is undefined at $=0$ and $=1$.
- Restrict domain of $ℂ$ so that we can't draw a closed path around the branch points, this defines a branch cut, i.e the complement of this restricted set of points.
- Then we can define a branch from here by defining the function on the restricted domain $?$.
I however discovered that in the example $$ f(z) = \sqrt{z(z-1)}, $$ we can define a branch of $f$ on $$ \mathbb{C}\setminus(-\infty,0) \cup (1, \infty), $$ and this clearly goes against my above reasoning, why can we do this $?$.
My reasoning leads to the conclusion that we can define a branch on $\mathbb{C}\setminus[0,1]$, however I am not sure why we can get one on the other interval.
The whole purpose of a branch cut is to keep your complex function $f(z)$ single valued so that you can apply the wonderful theorems associated with holomorphic functions. Because any complex number $z$ can be written as $z = z_0 + re^{i\theta}=z_0 + re^{i\theta + 2\pi i}$, your function can become multivalued when you wind around a single branch point. However, if your function has two or more branch points, this doesn't necessarily mean that winding around two branch points simultaneously will lead to trouble.
For the function $f(z) = \sqrt{z(z-1)}$, you are right that there are branch points at $z = 0$ and $z = 1$. As you pointed out, there are two potential branch cuts you can use $\mathbb{C}\setminus[0,1]$ and $\mathbb{C}\setminus(0,-\infty) \cup \mathbb{C}\setminus(1,\infty)$. To see why winding around both points doesn't cause a problem, note that for any $z \in \mathbb{C}$, we can write $z = r_1e^{i\theta_1}$ and $z = 1 + r_2e^{i\theta_2}$ for some $r_1,r_2 \ge 0$ and $\theta_1,\theta_2 \in [0,2\pi)$. Therefore, we can write $$f(z) = \sqrt{r_1e^{i\theta_1}r_2e^{i\theta_2}} = \sqrt{r_1r_2}e^{i\frac{\theta_1}{2}}e^{i\frac{\theta_2}{2}}.$$ Now, if we loop around both $z = 0$ and $z = 1$, then $\theta_1 \to \theta_1 + 2\pi $ and $\theta_2\to \theta_2 + 2\pi$ and we have $$\sqrt{r_1r_2}e^{i\frac{\theta_1 + 2\pi}{2}}e^{i\frac{\theta_2 + 2\pi}{2}} = \sqrt{r_1r_2}e^{i\frac{\theta_1}{2}}e^{i\frac{\theta_2}{2}}e^{2\pi i} = \sqrt{r_1r_2}e^{i\frac{\theta_1}{2}}e^{i\frac{\theta_2}{2}} = f(z)$$ so the function stays single-valued. However, let's see what happens when we loop around only one of the branch points. Let's try looping around just $z = 0$. Then we have that $\theta_1 \to \theta_1 + 2\pi$ but $\theta_2 \to \theta_2$ since we aren't looping around $z = 1$. Then our function becomes $$\sqrt{r_1r_2}e^{i\frac{\theta_1 + 2\pi}{2}}e^{i\frac{\theta_2}{2}} = \sqrt{r_1r_2}e^{i\frac{\theta_1}{2}}e^{i\frac{\theta_2}{2}}e^{i\pi} = -f(z)$$ and hence the function becomes multivalued. Thus we can see that the purpose of our branch cut here is to prevent us from winding around a single branch point. Winding around both branch points does not cause a problem. Obviously the branch cut $\mathbb{C}\setminus(0,-\infty) \cup \mathbb{C}\setminus(1,\infty)$ prevents us from winding around either of the points $z=0$ or $z = 1$ so it works as well.