I love this type of articles with mix of math and algorithms. I intuitively thought that one can just use a pair of float divisions, like with addition or multiplication.

Oh, and I hope this algorithm can be used to improve RISC-V.