Hubbry Logo
search
search button
Sign in
Historyarrow-down
starMorearrow-down
Hubbry Logo
search
search button
Sign in
Binary splitting
Community hub for the Wikipedia article
logoWikipedian hub
Welcome to the community hub built on top of the Binary splitting Wikipedia article. Here, you can discuss, collect, and organize anything related to Binary splitting. The purpose of the hub is to connect people, foster deeper knowledge, and help improve the root Wikipedia article.
Add your contribution
Inside this hub
Binary splitting

In mathematics, binary splitting is a technique for speeding up numerical evaluation of many types of series with rational terms. In particular, it can be used to evaluate hypergeometric series at rational points.

Method

[edit]

Given a series

where pn and qn are integers, the goal of binary splitting is to compute integers P(a, b) and Q(a, b) such that

The splitting consists of setting m = [(a + b)/2] and recursively computing P(a, b) and Q(a, b) from P(a, m), P(m, b), Q(a, m), and Q(m, b). When a and b are sufficiently close, P(a, b) and Q(a, b) can be computed directly from pa...pb and qa...qb.

Comparison with other methods

[edit]

Binary splitting requires more memory than direct term-by-term summation, but is asymptotically faster since the sizes of all occurring subproducts are reduced. Additionally, whereas the most naive evaluation scheme for a rational series uses a full-precision division for each term in the series, binary splitting requires only one final division at the target precision; this is not only faster, but conveniently eliminates rounding errors. To take full advantage of the scheme, fast multiplication techniques such as Toom–Cook multiplication and the Schönhage–Strassen algorithm must be used; with ordinary O(n2) multiplication, binary splitting may render no speedup at all or be slower.

Since all subdivisions of the series can be computed independently of each other, binary splitting lends well to parallelization and checkpointing.

In a less specific sense, binary splitting may also refer to any divide and conquer algorithm that always divides the problem in two halves.

References

[edit]
Add your contribution
Related Hubs