English

The Generalized Double Pouring Problem: Analysis, Bounds and Algorithms

Combinatorics 2025-04-07 v1 Discrete Mathematics

Abstract

We consider a logical puzzle which we call double pouring problem, which was original defined for k=3k=3 vessels. We generalize this definition to k2k \ge 2 as follows. Each of the kk vessels contains an integer amount of water, called its value, where the values are aia_i for i=1,2,,ki=1,2,\dots,k and the sum of values is nn. A pouring step means pouring water from one vessel with value aia_i to another vessel with value aja_j, where 1ijk 1 \le i \not= j \le k and aiaja_i \le a_j . After this pouring step the first vessel has value 2ai2a_i and the second one value ajaia_j-a_i. Now the pouring problem is to find as few pourings steps as possible to empty at least one vessel, or to show that such an emptying is not possible (which is possible only in the case k=2k=2). For k=2k=2 each pouring step is unique. We give a necessary and sufficient condition, when for a given (a1,a2) (a_1,a_2) with a1+a2=na_1+a_2=n the pouring problem is solvable. For k=3k=3 we improve the upper bound of the pouring problem for some special cases. For k4k \ge 4 we extend the known lower bound for k=3k=3 and improve the known upper bound O((logn)2)\mathcal{O}((\log n)^2) for k=3k=3 to O(lognloglogn)\mathcal{O}(\log n\log\log n). Finally, for k3k \ge 3, we investigate values and bounds for some functions related to the pouring problem.

Keywords

Cite

@article{arxiv.2504.03039,
  title  = {The Generalized Double Pouring Problem: Analysis, Bounds and Algorithms},
  author = {Gerold Jäger and Tuomo Lehtilä},
  journal= {arXiv preprint arXiv:2504.03039},
  year   = {2025}
}
R2 v1 2026-06-28T22:46:01.111Z