

PROJECT 10 Completed (24 days) Completed (57 days) Completed (26 days) Completed (47 days) Completed (19 days) Completed (14 days)  Nonfloatingpoint fractional exponentiation approach Completed on 16Nov2016 (24 days) This project explains the calculation methodology which I used to develop NumberParser's Math2.PowDecimal /Math2.SqrtDecimal , methods extending the native double (floatingpoint) implementations (i.e., Pow /Sqrt in System.Math ) to decimal (not floatingpoint). It is eminently focused on fractional aspects because this is where the floatingpoint peculiarities are more influential, although there is also an integer exponentiation section.Microsoft hasn't published the Pow /Sqrt source codes, but they are most likely very similar to equivalent functionalities in other languages or in mathematical libraries. While preanalysing this whole situation, I took a look at the C library Cephes, which is an interesting reference for anyone looking for insights into all this.Note that the floatingpoint peculiarities are precisely meant to efficiently deal with computationallyexpensive calculations, what is certainly the case with exponentiation algorithms. Additionally, most of these algorithms are also relying on further assumptions and simplifications, at least for certain scenarios. In summary, the goal of most of the existing (floatingpointbased) exponentiation implementations is delivering reasonably accurate results as quickly as possible. On the other hand, the approach described here is mostly focused on delivering as accurate as possible results reasonably quickly. 