
TL;DR
This paper introduces an efficient, memory-conscious algorithm for enumerating solutions to bimonotone functions, significantly improving performance over naive methods and extending previous algorithms for semimonotone enumeration.
Contribution
It presents a novel, highly parallelizable algorithm for enumerating bimonotone function values with improved memory and time complexity over prior approaches.
Findings
Memory usage is reduced to O(√n log n)
Time complexity is O(n log^2 n) for enumerating n values
Algorithm is highly parallelizable and memory-efficient
Abstract
Solutions of a diophantine equation , with in some finite range, can be efficiently enumerated by sorting the values of and in ascending order and searching for collisions. This article considers functions that are bimonotone in the sense that whenever and . A two-variable polynomial with non-negative coefficients is a typical example. The problem is to efficiently enumerate all pairs such that the values appear in increasing order. We present an algorithm that is memory-efficient and highly parallelizable. In order to enumerate the first values of , the algorithm only builds up a priority queue of length at most . In terms of bit-complexity this ensures that the algorithm takes time and requires memory , which considerably improves on…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
