upvote
> The beauty here is that eml(x,y) is a pure, continuous analytical function with no hidden branching whatsoever.

They use the complex version of logarithm, that has a lot of branching problems.

reply
Well, the paper explicitly takes the principal branch to solve this.

So it isn't exploiting the branching for computation.

reply
I agree, as the sibling comment there are two different things that are named "branches". Anyway, to get the principal branch in the microprocessor it's necessary to implement "atan2" that has a lot of special cases.

For example, IIRC ln( -inf.0 + y * i ) = ´+inf.0 + pi * sign(y)

reply
Different sense of “branching”
reply
Yep.
reply