Рассматривая функцию 1 / z можно придти к выводу, что у неё корень в 0. Проблема в том, что она отображает окружность на окружность, но меняет направление обхода на противоположное. Изменение аргумента равно -2pi, поэтому вроде как корень есть. Как вариант, можно не рассматривать отрицательные повороты. Но здесь есть ещё одна проблема.
Рассмотрим теперь функцию (z - 1) / z. Если взять контур, содержащий внутри точки 0 и 1, то изменение аргумента его образа равно нулю, т.е алгоритм сделает вывод, что корней внутри контура нет.
И, наконец, рассмотрим функцию sqrt(z). При обходе вокруг 0 изменение фазы равно pi. Эти полоборота алгоритм интерпретирует как "половину" корней и определение зависит только от погрешности счёта, которая может привести к округлению в ту или иную сторону.
В итоге, наша программа пока умеет считать нули функций, представимых всюду внутри контура сходящимся степенным рядом с неотрицательными показателями (рядом Тейлора).