> I have implemented the Zimmermann's square root algorithm, available in works > [here](https://inria.hal.science/inria-00072854/en/) and > [here](https://www.researchgate.net/publication/220532560_A_proof_of_GMP_square_root). > > The algorithm is proved to be asymptotically faster than the Newton's Method, > even for small numbers. To get an idea of how much the Newton's Method is > slow, consult my article [here](https://arxiv.org/abs/2406.07751), in which > I compare Newton's Method with a version of classical square root algorithm > that I implemented. After implementing Zimmermann's algorithm, it turns out > that it is faster than my algorithm even for small numbers.
fabioromano1 has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 47 additional commits since the last revision: - Merge branch 'openjdk:master' into patchSqrt - Added "throw" to throw the ArithmeticException created - Correct BigDecimal.sqrt() - Simplified computing square root of BigDecimal using BigInteger.sqrt() - Removed unnecessary variable - Optimized to compute the remainder only if needed - Optimized multiplication - Code optimization - Merge branch 'openjdk:master' into patchSqrt - Removed useless instruction - ... and 37 more: https://git.openjdk.org/jdk/compare/b0e0dbc8...d3ca0d4f ------------- Changes: - all: https://git.openjdk.org/jdk/pull/19710/files - new: https://git.openjdk.org/jdk/pull/19710/files/549c0969..d3ca0d4f Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=19710&range=16 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19710&range=15-16 Stats: 7267 lines in 207 files changed: 4535 ins; 1905 del; 827 mod Patch: https://git.openjdk.org/jdk/pull/19710.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/19710/head:pull/19710 PR: https://git.openjdk.org/jdk/pull/19710