[decimal] Implement power function for BigDecimal
#77
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request includes several updates to the
BigDecimaland related arithmetic operations in thedecimojolibrary. The changes primarily focus on adding new mathematical functions, optimizing existing methods, and improving precision handling.New Mathematical Functions:
power,log, andlog10functions toBigDecimalfor exponentiation and logarithmic calculations. (src/decimojo/bigdecimal/bigdecimal.mojo,src/decimojo/bigdecimal/exponential.mojo) [1] [2] [3]is_integerandis_oddmethods toBigDecimalto check if the number is an integer or odd. (src/decimojo/bigdecimal/bigdecimal.mojo)Precision Handling Improvements:
true_dividefunction to accept precision as a mandatory argument. (src/decimojo/bigdecimal/arithmetics.mojo)__truediv__,__itruediv__, andpower. (src/decimojo/bigdecimal/bigdecimal.mojo) [1] [2] [3]Optimization and Special Cases:
src/decimojo/bigdecimal/exponential.mojo) [1] [2]floor_divide_inplace_by_2method toBigUIntfor efficient division by 2. (src/decimojo/biguint/biguint.mojo)Documentation Updates:
docs/internal_notes.md)