Introduction
Colonel Blotto is a fundamental model of competition with limited resources, dating back to Borel’s work in 1921 [8 ] . In the classical game, two players allocate their budgets of a divisible resource across several battlefields. Each player’s total allocation must not exceed its budget. The players may have different budgets, and values may vary across battlefields, but each battlefield has the same value for both players. On each battlefield, the higher allocation wins its value, and a tie splits that value equally. Each player seeks to maximize the total value it wins.
Despite more than a century of study, computing approximate equilibria efficiently has remained an open problem for arbitrary budgets and battlefield values. We resolve this question with a fully polynomial-time approximation scheme (FPTAS) that computes an ε \varepsilon ε -Nash equilibrium in time polynomial in the binary input length and 1 / ε 1/\varepsilon 1/ ε .
One approach to constructing Blotto equilibria starts from the General Lotto relaxation, in which the budget constraint holds only in expectation. Nash equilibria of General Lotto have been characterized [11 ] . To turn such an equilibrium into Blotto strategies, each player’s bid distributions on individual battlefields must be coupled into a joint distribution that respects its budget on every draw. [13 ] characterizes exactly when such couplings exist, shows that they yield a Blotto equilibrium, and gives an algorithm for computing and sampling an approximate equilibrium in this regime. Outside this regime, no pair of feasible strategies has these marginals, and an algorithm must find strategies with different marginals. Our approximation scheme removes this restriction.
Another natural approach is to discretize allocations and use an algorithm for computing equilibria in the discrete Blotto game [1 , 4 , 2 ] . However, a strategy on a grid assigns positive probability to individual bids, and an arbitrarily small increase above such a bid turns ties into wins. We give a two-battlefield game in which, for arbitrary fine uniform grids, the discretized game has an exact equilibrium from which one player gains 1 / 12 1/12 1/12 of the total value by deviating to an allocation outside the grid Proposition 5.2 . Thus, an exact equilibrium of a discretized game need not be an approximate equilibrium of the continuous game, however fine the grid.
Our results
For a game with n n n battlefields, normalize the budgets to 1 and b ∈ ( 0 , 1 ] b \in(0,1] b ∈ ( 0 , 1 ] , and the positive common battlefield values v 1 , … , v n v_1,\ldots,v_n v 1 , … , v n to sum to one. The budgets and values are rational, as is the approximation parameter 0 < ε < 1 0 < \varepsilon< 1 0 < ε < 1 . An ε \varepsilon ε -Nash equilibrium allows neither player to increase its expected payoff by more than ε \varepsilon ε through any feasible deviation in the continuous game. Our algorithms construct strategy descriptions from which each player can independently sample an allocation satisfying its budget.
We give bounds in both the finite-bit and real-RAM models. The finite-bit model counts bit operations on binary input and uses independent random bits. Our real-RAM model allows exact arithmetic and comparisons on real numbers and, for sampling, independent uniform draws from [ 0 , 1 ] [0,1] [ 0 , 1 ] , each at unit cost.
An FPTAS for arbitrary budgets and battlefield values. We give a deterministic algorithm for computing an ε \varepsilon ε -Nash equilibrium (Theorem 5.1 ). Let L L L be the total binary encoding length of the game input and ε \varepsilon ε , and let n ∗ = min { n , 1 / ε } n_* = \min\{n,1/\varepsilon\} n ∗ = min { n , 1/ ε } . The algorithm constructs the strategy descriptions in
O ~ ( L + n ∗ 3 ε 6 ) \widetilde{O}\left(L+\frac{n_*^3}{\varepsilon^6}\right) O ( L + ε 6 n ∗ 3 )
bit operations, or
O ~ ( n + n ∗ 2 ε 5 ) \widetilde{O}\left(n+\frac{n_*^2}{\varepsilon^5}\right) O ( n + ε 5 n ∗ 2 )
real-RAM operations.
Here O ~ \widetilde{O} O suppresses polylogarithmic factors. The construction takes time polynomial in the binary input length and 1 / ε 1/\varepsilon 1/ ε , and nearly linear in the input length for fixed ε \varepsilon ε . Sampling an allocation takes O ( n + log ( 1 / ε ) ) O(n+\log(1/\varepsilon)) O ( n + log ( 1/ ε )) real-RAM operations. In the finite-bit model, sampling and writing a rational allocation take expected time polynomial in the input length and 1 / ε 1/\varepsilon 1/ ε ; Theorem 5.1 gives the detailed bound.
The approximation scheme searches for feasible strategies without fixing their marginal distributions in advance. For each player, we construct a finite set of candidate allocations that can support an approximate equilibrium. To check deviations against strategies supported on this set, we construct a second finite set of feasible allocations for the opponent. For every mixture of the player’s candidate allocations, this second set contains a best response in the continuous game. We compute the strategies without enumerating either set, combining multiplicative weights with dynamic programming to select feasible allocations.
A preliminary reduction to O ( 1 / ε ) O(1/\varepsilon) O ( 1/ ε ) battlefields gives the dependence on n ∗ n_* n ∗ . Replacing ε \varepsilon ε by a nearby power of two and rounding the values and budget ratio to numbers with short binary encodings make the dependence on L L L additive. Transferring these strategies back to the original game requires care because small bid changes can cause large payoff changes at ties. We show how to preserve feasibility while controlling the loss in equilibrium accuracy.
We used ChatGPT to help optimize the FPTAS and improve its running-time bounds, including obtaining nearly linear dependence on the input length for fixed ε \varepsilon ε .
Exact equilibria from General Lotto marginals. Our second result gives a faster algorithm that computes an exact Nash equilibrium when
max i ∈ [ n ] v i ≤ b / 2. (1) \max_{i\in[n]} v_i \le b/2. \tag*{(1)} i ∈ [ n ] max v i ≤ b /2. (1)
This is precisely the condition under which the General Lotto equilibrium marginals can be coupled into feasible Blotto strategies [13 Corollary 1] . For equal battlefield values, it becomes b ≥ 2 / n b \ge2/n b ≥ 2/ n . In this regime, computing an exact Nash equilibrium and sampling each allocation both take O ( n ) O(n) O ( n ) time in the real-RAM model (Theorem 4.1 ). The sampling bound matches the Ω ( n ) \Omega(n) Ω ( n ) time needed to write all n n n allocation coordinates.
The algorithm of [13 Theorem 2] takes O ( n 2 + ε − 4 log ( 1 / ε ) ) O(n^2 + \varepsilon^{-4}\log(1/\varepsilon)) O ( n 2 + ε − 4 log ( 1/ ε )) arithmetic operations to sample from an ε \varepsilon ε -Nash equilibrium. Its construction reduces the coupling problem to at most four random variables and then approximates their joint distribution by discretization and tensor scaling. We give explicit exact couplings for these remaining variables and carry out the reduction in linear time per draw. This removes both the quadratic dependence on n n n and the approximation cost in the real-RAM model.
A sampler restricted to rational allocations cannot always sample from an exact equilibrium, even for rational inputs. For example, with equal budgets and three equally valued battlefields, every equilibrium has continuous uniform marginal distributions [15 Theorem 2] . Our exact sampler uses the real-RAM model’s ability to draw independent uniform samples from [ 0 , 1 ] [0, 1] [ 0 , 1 ] .
Our construction also has a finite-bit implementation that computes an ε \varepsilon ε -Nash equilibrium and samples rational allocations satisfying the budgets on every draw (Corollary 4.5 ). With k = ⌈ log 2 ( 1 / ε ) ⌉ k = \lceil\log_2(1/\varepsilon) \rceil k = ⌈ log 2 ( 1/ ε )⌉ , constructing the samplers takes O ~ ( n L ) \widetilde{O}(nL) O ( n L ) bit operations, and each draw takes O ~ ( ( n + k ) ( L + k ) ) \widetilde{O}((n + k)(L + k)) O (( n + k ) ( L + k )) bit operations.
When the players assign different values to the same battlefield, our coupling construction applies under the sufficient condition given for this setting in [13 Theorem 1] . Using their parameter search, we can test this condition and, when it holds, compute an exact equilibrium in O ( n log n ) O(n \log n) O ( n log n ) operations, with O ( n ) O(n) O ( n ) operations per allocation sampled (Theorem 4.6 ). For the parameter search, we augment the real-RAM model with a unit-cost operation that returns the exact real roots of a polynomial of degree at most three. With each player’s values normalized to sum to one, a finite-bit implementation computes an ε \varepsilon ε -Nash equilibrium and samples allocations from it in time polynomial in the input length and log ( 1 / ε ) \log(1/\varepsilon) log ( 1/ ε ) . The FPTAS discussed earlier (Theorem 5.1 ) requires each battlefield to have the same value for both players.
Further related work
Classical work constructs and characterizes equilibria in several continuous Blotto models. Gross and Wagner [10 ] construct equilibria for two battlefields with arbitrary budgets and for any number of equally valued battlefields with equal budgets. Macdonell and Mastronardi [MM15] characterize the full set of two-battlefield equilibria, and Roberson [15 , 16 ] studies games with equal battlefield values and asymmetric budgets. Thomas [18 ] studies games with heterogeneous common values and equal budgets.
The coupling approach of [13 ] combines General Lotto equilibria [11 ] with conditions under which given marginal distributions can be coupled to have a constant sum [20 ] . Efficient sampling from continuous Blotto equilibria is also known in certain symmetric multiplayer settings [5 ] . Both [13 ] and [5 ] state that equilibrium existence follows from general theorems for discontinuous games. The hypotheses of the theorems they cite can fail in our model, so we prove directly the minmax equality used by our approximation scheme (Lemma 5.3 ).
Other approximation results for the continuous game give different guarantees. The strategies of [19 ] have an equilibrium error that decreases with the number of battlefields under certain conditions on the battlefield values. For every constant c c c , [3 Theorem 3.6] gives a polynomial-time approximation scheme for maximizing a player’s guaranteed expected payoff among strategies supported on at most c c c allocations. Neither result gives, for every instance and every ε > 0 \varepsilon> 0 ε > 0 , an ε \varepsilon ε -Nash equilibrium in time polynomial in the input length and 1 / ε 1/\varepsilon 1/ ε . For discrete Blotto, [1 , 4 ] give exact equilibrium algorithms polynomial in the number of battlefields and the integer budgets. The sampling and learning methods of [2 ] give ε \varepsilon ε -Nash equilibria with polynomial dependence on 1 / ε 1/\varepsilon 1/ ε and only polylogarithmic dependence on the budgets. These bounds concern integer allocations and do not themselves control deviations in the continuous game. In a different direction, [BG27] proves hardness of approximate equilibrium computation in discrete multiplayer games with player-specific values. Our FPTAS, in contrast, concerns two players with common values.
Model and preliminaries
There are two players, A A A and B B B , and n ≥ 1 n \ge1 n ≥ 1 battlefields indexed by [ n ] = { 1 , … , n } [n] = \{1,\ldots,n\} [ n ] = { 1 , … , n } . Without loss of generality, players A A A and B B B have budgets 1 1 1 and b ∈ ( 0 , 1 ] b \in(0,1] b ∈ ( 0 , 1 ] , respectively. Battlefield i i i has a common value v i > 0 v_i > 0 v i > 0 for both players, with ∑ i = 1 n v i = 1 \sum_{i=1}^{n} v_i = 1 ∑ i = 1 n v i = 1 . For a budget c ≥ 0 c \ge0 c ≥ 0 , let
X ( c ) = { x ∈ R ≥ 0 n : ∑ i = 1 n x i ≤ c } . \mathcal{X}(c) = \left\{x \in\mathbb{R}_{\ge0}^{n} : \sum_{i=1}^{n} x_i \le c\right\}. X ( c ) = { x ∈ R ≥ 0 n : i = 1 ∑ n x i ≤ c } .
The pure strategy spaces of A A A and B B B are X ( 1 ) \mathcal{X}(1) X ( 1 ) and X ( b ) \mathcal{X}(b) X ( b ) , respectively. The player who allocates more resources to a battlefield receives its value. In a tie, including when both allocations are zero, each player receives half its value. Let h ( s , t ) h(s,t) h ( s , t ) denote the share received by a player who bids s s s against a bid t t t :
h ( s , t ) = { 1 , s > t , 1 / 2 , s = t , 0 , s < t . h(s,t) =
\begin{cases}
1, & s > t,\\
1/2, & s = t,\\
0, & s < t.
\end{cases} h ( s , t ) = ⎩ ⎨ ⎧ 1 , 1/2 , 0 , s > t , s = t , s < t .
The players’ payoffs at x ∈ X ( 1 ) x \in\mathcal{X}(1) x ∈ X ( 1 ) and y ∈ X ( b ) y \in\mathcal{X}(b) y ∈ X ( b ) are
u A ( x , y ) = ∑ i = 1 n v i h ( x i , y i ) , u B ( x , y ) = ∑ i = 1 n v i h ( y i , x i ) . (2) u_A(x,y) = \sum_{i=1}^{n} v_i h(x_i,y_i), \qquad u_B(x,y) = \sum_{i=1}^{n} v_i h(y_i,x_i). \tag*{(2)} u A ( x , y ) = i = 1 ∑ n v i h ( x i , y i ) , u B ( x , y ) = i = 1 ∑ n v i h ( y i , x i ) . (2)
In particular, u A ( x , y ) + u B ( x , y ) = 1 u_A(x,y) + u_B(x,y) = 1 u A ( x , y ) + u B ( x , y ) = 1 for every pair of feasible allocations.
Nash equilibrium. A mixed strategy is a probability distribution on the player’s pure strategy space. We denote the strategies of A A A and B B B by μ A \mu_A μ A and μ B \mu_B μ B . For independent allocations X ∼ μ A X \sim\mu_A X ∼ μ A and Y ∼ μ B Y \sim\mu_B Y ∼ μ B , the expected payoffs are
u j ( μ A , μ B ) = E [ u j ( X , Y ) ] , j ∈ { A , B } . u_j(\mu_A,\mu_B) = \mathbb{E}[u_j(X,Y)], \qquad j \in\{A,B\}. u j ( μ A , μ B ) = E [ u j ( X , Y )] , j ∈ { A , B } .
We use u A ( x , μ B ) u_A(x,\mu_B) u A ( x , μ B ) and u B ( μ A , y ) u_B(\mu_A,y) u B ( μ A , y ) when one player chooses a pure strategy. Each player’s regret is the supremum increase in expected payoff from a unilateral deviation:
Reg A ( μ A , μ B ) = sup x ∈ X ( 1 ) u A ( x , μ B ) − u A ( μ A , μ B ) , \operatorname{Reg}_A(\mu_A,\mu_B) = \sup_{x \in\mathcal{X}(1)} u_A(x,\mu_B) - u_A(\mu_A,\mu_B), Reg A ( μ A , μ B ) = x ∈ X ( 1 ) sup u A ( x , μ B ) − u A ( μ A , μ B ) ,
Reg B ( μ A , μ B ) = sup y ∈ X ( b ) u B ( μ A , y ) − u B ( μ A , μ B ) . (3) \operatorname{Reg}_B(\mu_A,\mu_B) = \sup_{y \in\mathcal{X}(b)} u_B(\mu_A,y) - u_B(\mu_A,\mu_B). \tag*{(3)} Reg B ( μ A , μ B ) = y ∈ X ( b ) sup u B ( μ A , y ) − u B ( μ A , μ B ) . (3)
For ε ≥ 0 \varepsilon\ge0 ε ≥ 0 , an ε \varepsilon ε -Nash equilibrium is a pair ( μ A , μ B ) (\mu_A,\mu_B) ( μ A , μ B ) with both regrets at most ε \varepsilon ε ; a Nash equilibrium is the case ε = 0 \varepsilon= 0 ε = 0 . The approximation is additive in the normalized payoffs. Pure deviations suffice because the payoff of a mixed deviation is an average of the payoffs from pure deviations. We use suprema since the payoff is discontinuous at ties and a best response need not be attained.
To bound these regrets, it suffices to consider deviations that spend the full budget. Any deviation in X ( c ) \mathcal{X}(c) X ( c ) can be made to spend c c c by adding the unused budget to one coordinate, which weakly increases the payoff against every allocation of the opponent.
For a mixed strategy μ \mu μ , let U ( μ ; c ) U(\mu;c) U ( μ ; c ) denote the supremum expected payoff of an opponent with budget c ≥ 0 c \ge0 c ≥ 0 :
U ( μ ; c ) = sup z ∈ X ( c ) E X ∼ μ [ ∑ i = 1 n v i h ( z i , X i ) ] . U(\mu;c) = \sup_{z \in\mathcal{X}(c)} \mathbb{E}_{X \sim\mu}\left[\sum_{i=1}^{n} v_i h(z_i,X_i)\right]. U ( μ ; c ) = z ∈ X ( c ) sup E X ∼ μ [ i = 1 ∑ n v i h ( z i , X i ) ] .
Since the game is constant-sum, adding the regret definitions gives
Reg A ( μ A , μ B ) + Reg B ( μ A , μ B ) = U ( μ B ; 1 ) + U ( μ A ; b ) − 1. (4) \operatorname{Reg}_{A}(\mu_A,\mu_B) + \operatorname{Reg}_{B}(\mu_A,\mu_B) = U(\mu_B;1) + U(\mu_A;b) - 1. \tag*{(4)} Reg A ( μ A , μ B ) + Reg B ( μ A , μ B ) = U ( μ B ; 1 ) + U ( μ A ; b ) − 1. (4)
Since each regret is nonnegative, U ( μ B ; 1 ) + U ( μ A ; b ) ≤ 1 + ε U(\mu_B;1) + U(\mu_A;b) \le1 + \varepsilon U ( μ B ; 1 ) + U ( μ A ; b ) ≤ 1 + ε implies that ( μ A , μ B ) (\mu_A,\mu_B) ( μ A , μ B ) is an ε \varepsilon ε -Nash equilibrium.
Marginal distributions and approximation
Expected payoffs depend only on the marginal distributions of allocations to individual battlefields, although feasibility still requires a joint distribution satisfying the budget constraint. If the opponent’s allocation to a battlefield is a random variable Y Y Y with cumulative distribution function (CDF) F F F , then bidding s s s on that battlefield gives expected share
E [ h ( s , Y ) ] = P ( Y < s ) + 1 2 P ( Y = s ) = F ( s − ) + F ( s ) 2 , F ( s − ) = P ( Y < s ) . (5) \mathbb{E}[h(s,Y)] = \mathbb{P}(Y < s) + \frac{1}{2}\mathbb{P}(Y = s) = \frac{F(s-) + F(s)}{2}, \qquad F(s-) = \mathbb{P}(Y < s). \tag*{(5)} E [ h ( s , Y )] = P ( Y < s ) + 2 1 P ( Y = s ) = 2 F ( s − ) + F ( s ) , F ( s − ) = P ( Y < s ) . (5)
For a mixed strategy μ \mu μ , write F μ , i ( t ) = P X ∼ μ ( X i ≤ t ) F_{\mu,i}(t) = \mathbb{P}_{X \sim\mu}(X_i \le t) F μ , i ( t ) = P X ∼ μ ( X i ≤ t ) for its marginal CDF on battlefield i i i . We measure the difference between two mixed strategies μ \mu μ and ν \nu ν by
d ( μ , ν ) = max i ∈ [ n ] sup t ∈ R ∣ F μ , i ( t ) − F ν , i ( t ) ∣ . d(\mu,\nu) = \max_{i \in[n]} \sup_{t \in\mathbb{R}} \lvert F_{\mu,i}(t) - F_{\nu,i}(t) \rvert. d ( μ , ν ) = i ∈ [ n ] max t ∈ R sup ∣ F μ , i ( t ) − F ν , i ( t )∣ .
The following lemma bounds changes in payoffs and regrets in terms of d d d . The proof is given in Appendix § 7 .§ 1 .
Lemma 2.1. For any fixed pure or mixed strategy of one player, replacing the opponent’s strategy μ \mu μ by ν \nu ν changes the expected payoff by at most d ( μ , ν ) d(\mu,\nu) d ( μ , ν ) . If two strategy profiles ( μ A , μ B ) (\mu_A,\mu_B) ( μ A , μ B ) and ( μ A ′ , μ B ′ ) (\mu'_A,\mu'_B) ( μ A ′ , μ B ′ ) satisfy d ( μ A , μ A ′ ) ≤ δ A d(\mu_A,\mu'_A) \le\delta_A d ( μ A , μ A ′ ) ≤ δ A and d ( μ B , μ B ′ ) ≤ δ B d(\mu_B,\mu'_B) \le\delta_B d ( μ B , μ B ′ ) ≤ δ B , then
Reg A ( μ A ′ , μ B ′ ) ≤ Reg A ( μ A , μ B ) + δ A + 2 δ B , \operatorname{Reg}_{A}(\mu'_A,\mu'_B) \le\operatorname{Reg}_{A}(\mu_A,\mu_B) + \delta_A + 2\delta_B, Reg A ( μ A ′ , μ B ′ ) ≤ Reg A ( μ A , μ B ) + δ A + 2 δ B , Reg B ( μ A ′ , μ B ′ ) ≤ Reg B ( μ A , μ B ) + δ B + 2 δ A . \operatorname{Reg}_{B}(\mu'_A,\mu'_B) \le\operatorname{Reg}_{B}(\mu_A,\mu_B) + \delta_B + 2\delta_A. Reg B ( μ A ′ , μ B ′ ) ≤ Reg B ( μ A , μ B ) + δ B + 2 δ A .
Input, output, and running time
The computational input consists of positive rational values v 1 , … , v n v_1,\ldots,v_n v 1 , … , v n summing to one and a rational budget ratio b ∈ ( 0 , 1 ] b \in(0,1] b ∈ ( 0 , 1 ] . For approximate equilibria, the input also includes a rational approximation parameter 0 < ε < 1 0 < \varepsilon< 1 0 < ε < 1 . We use a real-RAM model for the main analysis. Appendix § 8 describes the finite-bit model used for bit-complexity analysis.
Real-RAM model. Each addition, subtraction, multiplication, division, and comparison of exact real numbers has unit cost. The model also provides independent exact samples from U n i f [ 0 , 1 ] \mathrm{Unif}[0,1] Unif [ 0 , 1 ] at unit cost. All numbers are stored exactly, including the input numbers and the coordinates of sampled allocations. Arithmetic running times count these operations without charging for binary encoding lengths. This follows the approach in [13 ] , whose analysis counts operations on real numbers and whose sampler uses continuous uniform draws.
Finite-bit model. The input is given in binary, and computation uses bit operations. Algorithms obtain their randomness from independent fair coin flips, each counted as one bit operation. Encoding each outcome as 0 or 1 gives one random bit per flip. An algorithm returns a finite description of each player’s strategy together with a sampler that produces rational allocations. Any error introduced by finite precision or by using finitely many random bits is included in the stated equilibrium guarantee.
Output and running time. In both models, every sampled allocation must satisfy the player’s budget constraint. The equilibrium guarantee applies against every feasible continuous deviation. We state separately the time to compute a strategy description and the time to sample an allocation from it. For a Las Vegas algorithm, every returned strategy pair satisfies the stated guarantee; the stated time to compute the pair is an expectation over the algorithm’s random choices for each fixed input. For sampling, we specify whether the running-time and random-bit bounds hold in expectation or for every draw. We sometimes use O ~ \widetilde{O} O to suppress polylogarithmic factors in running-time bounds.
Technical overview
The Colonel Blotto game has two important properties. The hard budget constraint couples a player’s bids across battlefields: every sampled allocation must fit within the player’s budget. Expected payoffs, however, depend only on the marginal distributions of the bids on individual battlefields. Both of our algorithms exploit this property of the expected payoffs while constructing joint distributions that satisfy the budget on every draw. When the General Lotto marginals admit a feasible coupling, we construct one efficiently from these marginals. For arbitrary budgets and common values, such a coupling need not exist. Our general algorithm instead computes suitable marginals and feasible strategies together.
From Lotto marginals to an exact sampler
In the General Lotto relaxation, the budget constraints need to hold only in expectation. Its equilibrium marginals have a particularly simple form [11 ] :
X i ∼ U n i f [ 0 , 2 v i ] , Y i ∼ ( 1 − b ) δ 0 + b U n i f [ 0 , 2 v i ] , X_i \sim\mathrm{Unif}[0,2v_i], \qquad Y_i \sim(1-b)\delta_0 + b\mathrm{Unif}[0,2v_i], X i ∼ Unif [ 0 , 2 v i ] , Y i ∼ ( 1 − b ) δ 0 + b Unif [ 0 , 2 v i ] ,
where δ 0 \delta_0 δ 0 is the point mass at zero. We first discuss why feasible couplings of these marginals would form a Blotto equilibrium. Since expected payoffs depend only on marginal distributions, the deviation bounds below hold regardless of how each player’s bids are coupled. Against A’s uniform bid on battlefield i i i , a bid y i y_i y i by B wins with probability at most y i / ( 2 v i ) y_i/(2v_i) y i / ( 2 v i ) and therefore earns at most y i / 2 y_i/2 y i /2 . Every feasible deviation by B thus earns at most b / 2 b/2 b /2 . A similar calculation shows that every deviation by A earns at most 1 − b / 2 1-b/2 1 − b /2 . The prescribed marginals attain these upper bounds against each other, so any feasible couplings of the two families form an exact equilibrium.
The remaining task is to couple each player’s marginals so that every sampled allocation satisfies the budget. Under these marginals, each player’s expected total spending equals its budget, but sampling its bids independently across battlefields makes their total exceed the budget with positive probability. In fact, a feasible coupling must spend the budget exactly, since a random total that never exceeds the budget and has the budget as its mean must equal it with probability one. [13 ] shows that the required couplings exist precisely when max i v i ≤ b / 2 \max_i v_i \le b/2 max i v i ≤ b /2 . Their reduction shows that, to couple a player’s n n n bids so that they sum to its budget, it suffices to couple at most four random variables with that same sum. They then compute an approximate coupling of these remaining variables. We adapt this reduction to run in linear time per draw and replace this approximate coupling by explicit exact constructions.
Reducing to at most four variables. Consider one player with budget c c c and marginals ( 1 − p i ) δ 0 + p i Unif [ 0 , ℓ i ] (1-p_i)\delta_0 + p_i \operatorname{Unif}[0,\ell_i] ( 1 − p i ) δ 0 + p i Unif [ 0 , ℓ i ] , where ℓ i ≤ c \ell_i \le c ℓ i ≤ c and ∑ i p i ℓ i = 2 c \sum_i p_i\ell_i = 2c ∑ i p i ℓ i = 2 c . The factor of two comes from the mean ℓ i / 2 \ell_i/2 ℓ i /2 of a uniform bid. For the Lotto marginals, ℓ i = 2 v i \ell_i = 2v_i ℓ i = 2 v i , so the condition ℓ i ≤ c \ell_i \le c ℓ i ≤ c for player B B B is the coupling condition max i v i ≤ b / 2 \max_i v_i \le b/2 max i v i ≤ b /2 . We first simplify these distributions by randomly rounding the mixture probabilities p i p_i p i until all but at most one are zero or one. At this stage, we are choosing conditional marginal distributions; the bids themselves will be sampled later. Each step takes two probabilities p i p_i p i and p j p_j p j strictly between zero and one. We can increase p i p_i p i and decrease p j p_j p j , or do the reverse, keeping p i ℓ i + p j ℓ j p_i\ell_i + p_j\ell_j p i ℓ i + p j ℓ j fixed. In either direction, we stop as soon as one probability reaches zero or one, and randomly choose between the two outcomes so that each probability keeps its expectation. Every step preserves ∑ i p i ℓ i = 2 c \sum_i p_i\ell_i = 2c ∑ i p i ℓ i = 2 c , so the conditional expected total spending remains c c c . After at most n − 1 n-1 n − 1 steps, each bid is either identically zero or uniform on its interval, except for at most one bid whose distribution still has both components. Because the rounding preserves each probability in expectation, averaging these conditional distributions over the random choices restores the original marginals.
Next, we combine the uniformly distributed bids into groups, each represented by one variable. If the bids in a group are uniform on intervals whose lengths sum to L L L , the variable representing the group is uniform on [ 0 , L ] [0,L] [ 0 , L ] . We recover the original bids by splitting this variable’s value in proportion to their interval lengths. Each bid then has its required uniform distribution, and the bids sum to the group variable.
We form the groups greedily, starting a new group whenever adding the next interval would make its total length exceed c c c . Because the interval lengths being grouped sum to at most 2 c 2c 2 c , this produces at most three groups. The group variables, together with any remaining variable whose distribution has both a uniform component and an atom at zero, give at most four variables to couple. Grouping the bids and recovering them from the group variables take O ( n ) O(n) O ( n ) operations.
Coupling the last few variables. Suppose three variables remain: two are uniformly distributed, and the third may also have an atom at zero. We construct a mixture of uniform distributions on a constant number of line segments in the plane of allocations with sum c c c . Every point on such a segment is feasible. If we choose a point uniformly on a segment, each coordinate that varies along the segment is uniform between its two endpoint values. A coordinate that stays zero contributes an atom at zero instead. We choose the segments and their selection probabilities so that the resulting distribution of each coordinate is its prescribed marginal (Lemma 4.2 ). Sampling then takes constant time: choose a segment with its assigned probability, then choose a point uniformly on it.
For four variables, a natural approach is to seek a similar mixture of uniform distributions on line segments in the hyperplane of allocations with sum c c c . We do not have such a direct construction for the full parameter range, but we believe it is likely possible. Instead, we build on the three-variable construction. One approach is to split the four variables into two pairs and couple each pair with an auxiliary uniform variable so that each triple has a constant sum. If we can construct both couplings with auxiliary variables uniform on the same interval, say [ 0 , d ] [0,d] [ 0 , d ] , we can make them complementary by taking them to be Z Z Z and d − Z d-Z d − Z . Their total is then fixed, so removing them from the two triples leaves the four desired variables with a constant sum.
The atom at zero can make this approach fail: the variable can be small on average while still taking large values. Keeping the triple’s total fixed requires the other two variables to compensate while retaining their uniform distributions. For some marginals, this is impossible no matter which interval [ 0 , d ] [0,d] [ 0 , d ] we choose for the auxiliary uniform variable.
We handle this remaining case by first choosing between the uniform component and the atom at zero. The distributions of the other three variables can then depend on this choice, provided that averaging over the two cases restores their original uniform marginals. When the uniform component is chosen, this variable that can have an atom at zero contributes more on average than under its original distribution. We compensate by making the other three variables uniform on shorter intervals starting at zero, so that the expected total remains c c c . All four conditional distributions are now uniform, so grouping reduces this case to the three-variable construction.
When the atom at zero is chosen, the other three variables must supply the entire budget. To restore their original uniform marginals after averaging over both cases, their conditional densities must be higher near the upper ends of the intervals, where the shortened uniform distributions in the previous case contribute no probability. The resulting densities have two constant levels. Reflecting each variable about the midpoint of its interval moves the higher density next to zero. This reflected distribution is a mixture of a uniform distribution on the full interval and another on a shorter interval starting at zero. We apply the earlier rounding procedure to these mixture probabilities, preserving the sum of the expectations until at most one variable still has two uniform components. The other two variables are uniform, and we give an explicit three-variable coupling for this form. Reflecting the sampled values back then gives a coupling of the three conditional marginals with sum c c c (§ 4.1.4 and § 4.1.5 ).
This conditioning construction can also fail: the three distributions obtained when the atom at zero is chosen may have no coupling with sum c c c . However, it works whenever the auxiliary-variable construction fails, so the two constructions together cover all cases.
The complete construction computes the strategy descriptions and samples each allocation in O ( n ) O(n) O ( n ) time in the real-RAM model. For the finite-bit implementation, we replace the continuous uniform draws inside the sampler by draws from a fine rational grid. The coupling formulas make the sampled bids sum to the budget for every choice of these random values, so this replacement preserves exact spending. We bound the changes in marginal CDFs and apply Lemma 2.1 to obtain an approximate equilibrium. Finally, the coupling construction depends only on the budget, interval endpoints, and mixture probabilities. It therefore also applies to player-specific values whenever their Lotto marginals satisfy the sufficient condition in § 4.3 .
Computing strategies without prescribed marginals
We now seek an approximate equilibrium for arbitrary budgets and common battlefield values. Our algorithm constructs each strategy as a distribution on feasible allocations, without specifying its marginals in advance. The constant-sum structure lets us compute the two players’ strategies separately: for each player, we seek a strategy that makes the opponent’s supremum payoff as small as possible. The two best achievable bounds sum to one, so approximating both optimization problems gives an approximate equilibrium by (3). Payoff discontinuities at ties prevent a direct application of the usual minimax theorem. We extend the argument to our setting using suitable perturbations of A’s allocations that respect its budget and restore the required continuity (Lemma 5.3 ).
Reducing to a finite game without losing deviations. We describe the computation for one fixed player, whom we call the player , and call the other the opponent . A natural first step is to restrict bids to a fine uniform grid. As the example in Proposition 5.2 shows, however, an equilibrium on such a grid can remain far from equilibrium in the continuous game. An off-grid deviation can turn ties into wins on several battlefields by adding arbitrarily small amounts, whereas a deviation on the grid must pay a full grid step for each such win. We therefore need a finite representation that preserves which combinations of ties and wins a continuous deviation can afford.
Suppose the player’s strategy uses finitely many bids on each battlefield, and call these bids and zero the thresholds on that battlefield. Each bid of the opponent is equivalent, for payoffs, to bidding exactly at a threshold or just above one. If the chosen thresholds are t 1 , … , t n t_1,\ldots,t_n t 1 , … , t n and the opponent’s budget is c ′ c' c ′ , these choices are affordable precisely when
∑ i t i ≤ c ′ , \sum_i t_i \le c', i ∑ t i ≤ c ′ ,
with strict inequality if any threshold must be exceeded.
Any positive slack suffices for all the required increments, but when the thresholds already sum to the budget, no increment is possible. One feasible allocation for each affordable combination therefore represents every continuous deviation of the opponent, as far as its payoff against this strategy is concerned.
This gives a finite set of responses for the opponent once we have fixed the bids allowed in the player’s strategy. We next show that a finite set of bids, specified from the input alone, can support a nearly optimal strategy. To see why, start from an unknown nearly optimal strategy and round each bid down to a quantile of its marginal distribution, using probability levels spaced Θ ( ε ) \Theta(\varepsilon) Θ ( ε ) apart. Rounding every coordinate down preserves the budget on each allocation, and only O ( 1 / ε ) O(1/\varepsilon) O ( 1/ ε ) bids remain on each battlefield. The useful notion of accuracy here is probability mass, not distance between bid amounts: each marginal CDF changes by at most O ( ε ) O(\varepsilon) O ( ε ) . By Lemma 2.1 , the opponent’s payoff from every deviation consequently increases by at most O ( ε ) O(\varepsilon) O ( ε ) .
The quantile bids still depend on the unknown strategy and need not have short rational encodings. To replace them by rationals, we preserve their order on each battlefield, including ties, and the comparison of every sum of one bid per battlefield with each budget. These comparisons keep the player’s allocations feasible and, by the affordability test, preserve exactly which combinations of ties and wins the opponent can afford. Thus the bid amounts can change without changing the opponent’s supremum payoff. The comparisons form a system of linear equalities and inequalities with small integer coefficients. A vertex argument gives a rational solution whose encoding length is polynomial in n n n , 1 / ε 1/\varepsilon 1/ ε , and the encoding length of the budget ratio. We take a finite set of candidate bids that includes all rationals in [ 0 , 1 ] [0,1] [ 0 , 1 ] up to the resulting denominator bound. This set can be specified from the input without finding the unknown strategy or its quantiles (Lemma 5.5 ).
The finite game now has two different sets of allocations. The player’s candidate allocations are all feasible allocations made from candidate bids; some distribution on them is nearly optimal. The opponent’s response allocations contain one allocation for every affordable combination of tying or just exceeding candidate bids. They include a best response in the continuous game to every distribution on candidate allocations. Solving this finite game approximately therefore produces the desired strategy for the player. Repeating the computation with the roles reversed gives the other player’s strategy.
Learning while enforcing the budget. Both sets of allocations are too large to enumerate. Running multiplicative weights directly on them would require maintaining a weight for every complete allocation. Payoffs are easier to evaluate: they depend only on bid distributions on individual battlefields. This suggests running multiplicative weights on those distributions instead, but the resulting marginals need not admit a feasible coupling.
We use such marginals to guide the computation while building the output from feasible allocations. For each side of the finite game, the algorithm maintains auxiliary marginals with no budget constraint linking the battlefields. In each iteration, it also selects a candidate allocation for the player and a response allocation for the opponent. It returns the uniform distribution on the player’s selected candidate allocations, so every draw satisfies the budget. The challenge is to connect the auxiliary marginals, where payoffs are evaluated, to these selected allocations.
We make this connection through penalties based on CDF differences. A basic test on one battlefield compares one side’s auxiliary CDF at a threshold with the corresponding indicator for that side’s selected bid: one if the bid is at most the threshold, and zero otherwise. The test can take either sign, detecting an excess or a deficit of probability at or below that threshold. A penalty averages such tests on each battlefield and combines the results with the battlefield values as weights. Maximizing over the tests gives the value-weighted sum of the largest absolute CDF differences, which bounds the change in payoff when one family of marginals replaces the other.
In each iteration, each side selects a feasible allocation that approximately minimizes its current penalty. The auxiliary marginals are then updated by multiplicative weights, with each side trading off a higher payoff against a smaller penalty. The payoff terms in these updates are evaluated between the two families of auxiliary marginals. Separate multiplicative-weights updates shift the penalty weights toward thresholds and signs that detect larger CDF differences. Thus the payoff updates act on individual battlefields, while the allocation choices enforce the budget across battlefields.
Because the tests are linear in the CDFs, averaging any fixed choice of tests over iterations compares each side’s average auxiliary CDFs with those of the uniform distribution on its selected allocations. The combined regret bounds account for the payoff changes when we replace the average auxiliary marginals by the marginals of these feasible distributions.
This replacement is needed on both sides. For the player, it transfers the guarantee to the feasible strategy that we actually return. For the opponent, it lets us use the nearly optimal strategy from the quantile argument as a comparison in the regret analysis. That strategy’s guarantee holds only against feasible deviations, so it need not hold against the opponent’s auxiliary marginals. With both replacements, the regret bounds show that the returned strategy nearly minimizes the opponent’s supremum payoff over response allocations. Since these allocations represent all continuous deviations, this gives the desired guarantee in the original game (§ 5.2 ).
The number of learning iterations depends only logarithmically on the number of possible bids. To obtain an efficient algorithm, we must also select allocations and update weights without enumerating all bids or allocations. Selecting an allocation is a knapsack problem: the penalty is a sum of battlefield terms, and the budget limits the total bid. We solve this problem approximately by a dynamic program that rounds objective values to keep its table small but tests budgets exactly.
For the weight updates, we approximate the relevant CDFs by step functions with few breakpoints. Together with the selected bids, these breakpoints partition the possible bids into intervals that receive the same approximate update. Updating each interval at once avoids visiting every bid. The analysis controls the errors from both approximate allocation choices and approximate updates, giving an FPTAS.
Obtaining the sharper running time
Two preliminary reductions improve the dependence on the number of battlefields and on the input length. Applied before the learning computation, they give the nearly linear computation time when ε \varepsilon ε is fixed. Each reduction must later be undone, so that the final strategies satisfy the original budgets and remain nearly optimal against deviations on the original battlefields.
Reducing the number of battlefields. Only O ( 1 / ε ) O(1/\varepsilon) O ( 1/ ε ) battlefields have values above a suitable multiple of ε \varepsilon ε . We keep these and replace the others, of combined value V V V , by k = Θ ( 1 / ε ) k = \Theta(1/\varepsilon) k = Θ ( 1/ ε ) representative battlefields of value V / k V/k V / k each, provided this reduces the number of battlefields. The reduction leaves O ( min { n , 1 / ε } ) O(\min\{n, 1/\varepsilon\}) O ( min { n , 1/ ε }) battlefields for the main computation. Afterwards, we must reconstruct bids on the replaced battlefields, while bids on the battlefields kept individually stay unchanged. A natural reconstruction gives each replaced battlefield the bid on a uniformly chosen representative battlefield, scaled by the ratio of their values. This gets the expected spending right but can violate the budget on a particular draw.
We enforce the budget with a step function on the circle [ 0 , 1 ) [0,1) [ 0 , 1 ) whose values on k k k equal subintervals are the sorted representative bids, each multiplied by k k k . Its integral is their total bid. Partition the circle into arcs, giving each replaced battlefield i i i an arc of length v i / V v_i/V v i / V , and rotate the partition by one uniformly random shift. Each replaced battlefield receives its arc length times the minimum of the step function on its arc. This bid is at most the integral of the step function over the arc, so the reconstructed bids sum to at most the total bid on the representative battlefields.
Taking the step function’s value at the start of each arc instead would give the natural reconstruction, since that point is uniformly distributed on the circle. Because the step function is sorted, the points where it is at most a given threshold form a single arc. The minimum on a battlefield’s arc is at most the threshold exactly when the arc overlaps this lower arc. Compared with requiring the start of the arc to lie in the lower arc, this enlarges the set of favorable shifts by at most the battlefield’s own arc length. Thus each reconstructed bid’s CDF differs from that of the natural reconstruction by at most the arc length, however large the gaps between representative bids. Weighting these errors by battlefield values gives a payoff change of at most ∑ i v i 2 / V \sum_i v_i^2/V ∑ i v i 2 / V over the replaced battlefields, which is at most their largest value and hence O ( ε ) O(\varepsilon) O ( ε ) .
We must also compare the opponent’s deviations in the two games. On the replaced battlefields, form a distribution of the deviation’s bids divided by their battlefield values, choosing each battlefield in proportion to its value. This distribution determines the deviation’s payoff against the natural reconstruction on those battlefields. We round this distribution down to k k k equally likely quantiles, assign them in random order to the representative battlefields, and rescale them by the representative values. Rounding down preserves the budget, and the CDF approximation changes the payoff by only O ( ε ) O(\varepsilon) O ( ε ) . Together, the two comparisons show that reconstruction increases the opponent’s supremum payoff by only O ( ε ) O(\varepsilon) O ( ε ) (Lemma 5.8 ).
Keeping long encodings out of the learning iterations. The values and the budget ratio may have long encodings, even after the number of battlefields is reduced. Rounding the values is straightforward, since their ℓ 1 \ell_1 ℓ 1 error bounds the payoff change for every pair of allocations. Rounding the budget ratio is more delicate. Two very close budgets can afford different combinations of strict wins, so simply rescaling a strategy computed for a nearby ratio need not preserve its guarantee.
We therefore compute strategies for budgets 1 1 1 and an auxiliary ratio ρ \rho ρ with a short encoding, and then transfer them to the original budgets. As in the candidate argument, we first round each computed strategy down to O ( 1 / ε ) O(1/\varepsilon) O ( 1/ ε ) quantile bids per battlefield. We keep fixed which quantiles occur together in each allocation and change only their bid amounts. The new amounts must preserve feasibility and the order of bids on each battlefield. We also impose lower bounds on sums of quantile bids to keep the opponent from affording combinations of wins that would exceed its payoff bound in the auxiliary game, allowing an O ( ε ) O(\varepsilon) O ( ε ) rounding error. The rounded strategy satisfies these constraints at the auxiliary budgets.
These requirements are linear inequalities in the quantile bids, with small integer coefficients. Determinant bounds show that, as the budget ratio varies, their feasibility can change only at rational ratios whose denominators are bounded in terms of the reduced number of battlefields and 1 / ε 1/\varepsilon 1/ ε . Between these ratios, a feasible solution can be continued as the budget changes. The denominator bound holds uniformly over all strategies, so we can choose ρ \rho ρ with a short encoding before computing either strategy. We choose ρ \rho ρ so that any necessary adjustment can raise the lower bounds on these sums strictly above the opponent’s target budget while keeping the constraints feasible. Even tying the corresponding quantile bids is then unaffordable, which preserves the payoff guarantee (§ 5.3 ).
The denominator bound for candidate bids depends on the denominator of the budget ratio, so using ρ \rho ρ also reduces the number of learning iterations, even in the real-RAM model. Together with the smaller bit cost per iteration, this leaves only an additive dependence on the original input length.
Fast equilibrium construction from Lotto marginals
We first consider games in which no battlefield accounts for too much of the total value relative to the smaller budget:
max i ∈ [ n ] v i ≤ b / 2. (6) \max_{i \in[n]} v_i \le b/2. \tag*{(6)} i ∈ [ n ] max v i ≤ b /2. (6)
For equal battlefield values, this condition becomes b ≥ 2 / n b \ge2/n b ≥ 2/ n . Under this condition, we construct an exact equilibrium by coupling the marginal distributions of a General Lotto equilibrium. Given one distribution for each battlefield, a coupling is a joint distribution over allocations with those battlefield marginals. The General Lotto game imposes the budget constraint only on expected total spending. To obtain a Blotto strategy from its equilibrium marginals, we must couple them so that every sampled allocation satisfies the budget.
For every positive value vector and budget ratio, [11 Corollary 1] gives the unique equilibrium marginals of General Lotto, recalled in (6) below. This uniqueness concerns the distributions on individual battlefields; the joint distributions across battlefields need not be unique. The result holds whether or not (5) is satisfied.
The additional requirement for Blotto is feasibility under the hard budgets. [13 Corollary 1] proves that these Lotto marginals admit couplings satisfying the hard budgets if and only if (5) holds, and such couplings form a Blotto equilibrium. The proof uses joint mixability results to establish the existence of constant-sum couplings [20 ] . When the condition fails, these marginals cannot be realized by feasible Blotto strategies; equilibria with different marginals may still exist.
Under condition (5), the algorithm of [13 ] reduces the coupling problem to at most four variables, discretizes their distributions, and computes an approximate coupling by tensor scaling. It computes an ε \varepsilon ε -Nash equilibrium and draws an allocation using a total of O ( n 2 + ε − 4 log ( 1 / ε ) ) O(n^2+\varepsilon^{-4}\log(1/\varepsilon)) O ( n 2 + ε − 4 log ( 1/ ε )) arithmetic operations [13 Theorem 2] . We replace the discretization and tensor-scaling stage with explicit exact couplings of the at most four variables that remain after the reduction. We also carry out the random choices in the reduction as we draw each allocation, so that computing the strategy descriptions and drawing each allocation take O ( n ) O(n) O ( n ) operations.
Theorem 4.1. Suppose (5) holds. In the real-RAM model of § 2.2 , an exact Nash equilibrium can be computed in O ( n ) O(n) O ( n ) time, with O ( n ) O(n) O ( n ) time per allocation draw. Every sampled allocation spends the player’s budget exactly. The equilibrium payoffs are 1 − b / 2 1-b/2 1 − b /2 for player A and b / 2 b/2 b /2 for player B.
Corollary 4.5 gives samplers for an ε \varepsilon ε -Nash equilibrium with rational allocations satisfying the hard budgets on every draw. Computing the samplers takes O ~ ( n L ) \widetilde{O}(nL) O ( n L ) bit operations, and generating each allocation takes O ~ ( ( n + k ) ( L + k ) ) \widetilde{O}((n+k)(L+k)) O (( n + k ) ( L + k )) bit operations in the worst case. Here L L L is the total binary input length, including the approximation parameter, and k = ⌈ log 2 ( 1 / ε ) ⌉ k=\lceil\log_2(1/\varepsilon)\rceil k = ⌈ log 2 ( 1/ ε )⌉ .
Algorithm and proof of Theorem 4.1
We first recall why feasible couplings of the Lotto marginals form an equilibrium. We then adapt the reduction of [13 ] to obtain a coupling problem with at most three uniform variables and one variable whose distribution is a mixture of a uniform and an atom at zero. The main task is to couple these remaining variables so that their sum is always the budget. For three variables, we construct a finite collection of line segments, each joining two allocations that spend the budget exactly. We select a segment with a prescribed probability and sample a point uniformly along it. For four variables, we either combine two such couplings or condition on whether the fourth variable is zero. § 4.1.6 puts these constructions together and proves the linear running time.
Marginal distributions and equilibrium payoffs
The unique equilibrium marginals of the common-value Lotto game are [11 Corollary 1] :
X i ∼ Unif [ 0 , ℓ i ] , Y i ∼ ( 1 − b ) δ 0 + b Unif [ 0 , ℓ i ] , ℓ i = 2 v i , (7) X_i \sim\operatorname{Unif}[0,\ell_i],\qquad Y_i \sim(1-b)\delta_0+b\operatorname{Unif}[0,\ell_i],\qquad\ell_i=2v_i, \tag*{(7)} X i ∼ Unif [ 0 , ℓ i ] , Y i ∼ ( 1 − b ) δ 0 + b Unif [ 0 , ℓ i ] , ℓ i = 2 v i , (7)
where δ 0 \delta_0 δ 0 denotes the point mass at zero. The expected total spending is 1 1 1 for player A A A and b b b for player B B B . Condition (5) says that every endpoint ℓ i \ell_i ℓ i is at most b b b . It is necessary for a feasible coupling of B B B ’s marginals: if ℓ i > b \ell_i>b ℓ i > b , that marginal assigns positive probability to an infeasible bid. The construction below gives an explicit sampler whenever this known coupling condition holds.
We recall why any pair of feasible strategies with these marginals forms a Nash equilibrium. The resulting deviation bounds are also used in the finite-bit analysis in Appendix § 8 .§ 1 . Consider any deviation y ∈ X ( b ) y\in\mathcal{X}(b) y ∈ X ( b ) against A A A ’s marginals. Since they are atomless, its payoff is
∑ i v i min { y i / ℓ i , 1 } ≤ 1 2 ∑ i y i ≤ b / 2. \sum_i v_i\min\{y_i/\ell_i,1\}\leq\frac{1}{2}\sum_i y_i\leq b/2. i ∑ v i min { y i / ℓ i , 1 } ≤ 2 1 i ∑ y i ≤ b /2.
Against B B B ’s marginals, a bid x i ≥ 0 x_i\geq0 x i ≥ 0 on battlefield i i i earns at most
v i ( 1 − b ) + b 2 x i . v_i(1-b)+\frac{b}{2}x_i. v i ( 1 − b ) + 2 b x i .
For $0<x_i\leq \ell_i$, this is the exact expected payoff. At x i = 0 x_i=0 x i = 0 , player A A A ties with probability 1 − b 1-b 1 − b and otherwise loses, giving expected payoff v i ( 1 − b ) / 2 v_i(1-b)/2 v i ( 1 − b ) /2 . For x i > ℓ i x_i>\ell_i x i > ℓ i , player A A A wins with probability one and receives v i v_i v i , which is at most the displayed bound. Summing over any x ∈ X ( 1 ) x\in\mathcal{X}(1) x ∈ X ( 1 ) gives a deviation payoff at most 1 − b / 2 1-b/2 1 − b /2 . These two bounds sum to one, so (3) proves that any pair of feasible couplings of (7) forms an exact Nash equilibrium. The same upper bounds apply to the players’ expected payoffs, since these are averages over feasible pure allocations. Since these payoffs sum to one, they must equal 1 − b / 2 1-b/2 1 − b /2 for A A A and b / 2 b/2 b /2 for $B.
Reducing the coupling to at most four variables
We give the construction for a general budget B > 0 B > 0 B > 0 and marginal distributions
Z i ∼ ( 1 − p i ) δ 0 + p i Unif [ 0 , ℓ i ] , 0 ≤ p i ≤ 1 , 0 < ℓ i ≤ B , ∑ i p i ℓ i = 2 B . (8) Z_i \sim(1-p_i)\delta_0 + p_i\,\operatorname{Unif}[0,\ell_i], \qquad0 \le p_i \le1, \qquad0 < \ell_i \le B, \qquad\sum_i p_i\ell_i = 2B. \tag*{(8)} Z i ∼ ( 1 − p i ) δ 0 + p i Unif [ 0 , ℓ i ] , 0 ≤ p i ≤ 1 , 0 < ℓ i ≤ B , i ∑ p i ℓ i = 2 B . (8)
Both players in (7) satisfy these conditions. Here p i p_i p i is the probability of using the uniform component. The reduction of [13 ] first expresses these marginals as a mixture in which all but at most one coordinate are either identically zero or uniform. It then combines the uniform coordinates into at most three groups. Their algorithm computes the mixture components and their weights in advance. We implement the reduction in O ( n ) O(n) O ( n ) operations per allocation draw by using pairwise randomized rounding to select the conditional marginals directly and a single scan to form the groups. After coupling the resulting at most four variables, we split each group back into its original coordinates.
Rounding the mixture probabilities. Set r i = p i ℓ i r_i = p_i\ell_i r i = p i ℓ i , so 0 ≤ r i ≤ ℓ i 0 \le r_i \le\ell_i 0 ≤ r i ≤ ℓ i and ∑ i r i = 2 B \sum_i r_i = 2B ∑ i r i = 2 B . We randomly change the r i r_i r i while preserving their sum and each coordinate’s expectation, until all but at most one belong to { 0 , ℓ i } \{0,\ell_i\} { 0 , ℓ i } . While 0 < r i < ℓ i 0 < r_i < \ell_i 0 < r i < ℓ i and 0 < r j < ℓ j 0 < r_j < \ell_j 0 < r j < ℓ j for two indices i , j i,j i , j , put
t = r i + r j , a = max { 0 , t − ℓ j } , c = min { ℓ i , t } . t = r_i + r_j, \qquad a = \max\{0,t-\ell_j\}, \qquad c = \min\{\ell_i,t\}. t = r i + r j , a = max { 0 , t − ℓ j } , c = min { ℓ i , t } .
Set r i ′ = c r_i' = c r i ′ = c with probability ( r i − a ) / ( c − a ) (r_i-a)/(c-a) ( r i − a ) / ( c − a ) and r i ′ = a r_i' = a r i ′ = a otherwise, and put r j ′ = t − r i ′ r_j' = t-r_i' r j ′ = t − r i ′ . The strict inequalities for r i r_i r i and r j r_j r j imply a < r i < c a < r_i < c a < r i < c , so the denominator is positive. Conditional on the current vector r r r , we have
E [ r i ′ ∣ r ] = r i − a c − a c + c − r i c − a a = r i , \mathbb{E}[r_i' \mid r] = \frac{r_i-a}{c-a}c + \frac{c-r_i}{c-a}a = r_i, E [ r i ′ ∣ r ] = c − a r i − a c + c − a c − r i a = r i ,
E [ r j ′ ∣ r ] = t − E [ r i ′ ∣ r ] = r j . \mathbb{E}[r_j' \mid r] = t-\mathbb{E}[r_i' \mid r] = r_j. E [ r j ′ ∣ r ] = t − E [ r i ′ ∣ r ] = r j .
We replace ( r i , r j ) (r_i,r_j) ( r i , r j ) by ( r i ′ , r j ′ ) (r_i',r_j') ( r i ′ , r j ′ ) , keeping the notation r r r for the updated vector. This update preserves the sum and each conditional expectation, and sends at least one of the two values to an endpoint of its interval. Maintaining a list of indices with 0 < r i < ℓ i 0 < r_i < \ell_i 0 < r i < ℓ i gives at most n − 1 n-1 n − 1 updates and O ( n ) O(n) O ( n ) operations.
Given the final vector r r r , we will couple the conditional marginals ( 1 − r i / ℓ i ) δ 0 + ( r i / ℓ i ) Unif [ 0 , ℓ i ] (1-r_i/\ell_i)\delta_0 + (r_i/\ell_i)\operatorname{Unif}[0,\ell_i] ( 1 − r i / ℓ i ) δ 0 + ( r i / ℓ i ) Unif [ 0 , ℓ i ] with sum B B B . We construct these couplings below, first grouping the uniform coordinates and then coupling the resulting at most four variables. Since E [ r i ] = p i ℓ i \mathbb{E}[r_i] = p_i\ell_i E [ r i ] = p i ℓ i , averaging over the rounding choices recovers each original marginal in (8) . The sum will therefore be B B B for every draw, while the unconditional marginals remain as required.
Grouping uniform coordinates. We set coordinates with r i = 0 r_i = 0 r i = 0 to zero and set aside the coordinate with 0 < r i < ℓ i 0 < r_i < \ell_i 0 < r i < ℓ i , if there is one. The remaining coordinates, with r i = ℓ i r_i = \ell_i r i = ℓ i , are uniform on [ 0 , ℓ i ] [0,\ell_i] [ 0 , ℓ i ] . We group these coordinates in their original order, keeping the sum of interval lengths in each group at most B B B . Whenever adding the next coordinate would exceed this bound, we start a new group with that coordinate. This produces at most three groups. The first coordinate in each new group did not fit in the preceding group, so these two groups have combined length greater than B B B . If there were four groups, the first two and the next two would together have total length greater than 2 B 2B 2 B . This is impossible because all the lengths being grouped sum to at most 2 B 2B 2 B .
We replace each group G G G by one variable Y G ∼ Unif [ 0 , ∑ j ∈ G ℓ j ] Y_G \sim\operatorname{Unif}[0,\sum_{j\in G}\ell_j] Y G ∼ Unif [ 0 , ∑ j ∈ G ℓ j ] . After sampling Y G Y_G Y G , we recover the original coordinates by setting
Z i = ℓ i ∑ j ∈ G ℓ j Y G ( i ∈ G ) . Z_i = \frac{\ell_i}{\sum_{j\in G}\ell_j}Y_G \qquad(i \in G). Z i = ∑ j ∈ G ℓ j ℓ i Y G ( i ∈ G ) .
Each Z i Z_i Z i is uniform on [ 0 , ℓ i ] [0,\ell_i] [ 0 , ℓ i ] , and the coordinates in G G G sum to Y G Y_G Y G . Grouping and splitting take O ( n ) O(n) O ( n ) operations.
If the coordinate set aside has mixture probability p ∈ ( 0 , 1 ) p \in(0,1) p ∈ ( 0 , 1 ) and endpoint ℓ \ell ℓ , the grouped lengths sum to 2 B − p ℓ > B 2B-p\ell>B 2 B − p ℓ > B . There are therefore two or three uniform variables, together with the remaining mixture ( 1 − p ) δ 0 + p Unif [ 0 , ℓ ] (1-p)\delta_0+p\operatorname{Unif}[0,\ell] ( 1 − p ) δ 0 + p Unif [ 0 , ℓ ] . If no coordinate was set aside, the grouped lengths sum to 2 B 2B 2 B . If there are two groups, both must have length B B B , and we sample them as ( B U , B ( 1 − U ) ) (BU,B(1-U)) ( B U , B ( 1 − U )) , where U ∼ Unif [ 0 , 1 ] U\sim\operatorname{Unif}[0,1] U ∼ Unif [ 0 , 1 ] . If there are three groups, we use the next construction with p = 1 p=1 p = 1 . In § 4.1.3 , we construct an O ( 1 ) O(1) O ( 1 ) -time sampler for three variables. We then develop an auxiliary coupling in § 4.1.4 and combine these constructions in § 4.1.5 to obtain an O ( 1 ) O(1) O ( 1 ) -time sampler for four variables.
A coupling for three variables
We begin with the three-variable case of the reduction, where each interval length is at most the budget B B B . The first two variables are uniform; the third has an atom at zero and a uniform component. We construct a mixture of uniform distributions on line segments in the plane of allocations with sum B B B . A segment with endpoints P , Q P,Q P , Q and weight α \alpha α is sampled by choosing it with probability α \alpha α and then returning ( 1 − U ) P + U Q (1-U)P+UQ ( 1 − U ) P + U Q for an independent U ∼ Unif [ 0 , 1 ] U\sim\operatorname{Unif}[0,1] U ∼ Unif [ 0 , 1 ] . Segments with zero weight are discarded. We choose the segment weights to obtain the marginal distributions in the following lemma. Setting the atom’s weight to zero also gives a coupling of three uniform variables, used later in § 4.1.5 .
Lemma 4.2. Let B > 0 B>0 B > 0 , 0 < a , d , c ≤ B 0<a,d,c\le B 0 < a , d , c ≤ B , and 0 < p ≤ 1 0<p\le1 0 < p ≤ 1 satisfy a + d + p c = 2 B a+d+pc=2B a + d + p c = 2 B . There is an explicit mixture of uniform distributions on at most seven line segments with marginals Unif [ 0 , a ] \operatorname{Unif}[0,a] Unif [ 0 , a ] , Unif [ 0 , d ] \operatorname{Unif}[0,d] Unif [ 0 , d ] , and ( 1 − p ) δ 0 + p Unif [ 0 , c ] (1-p)\delta_0+p\operatorname{Unif}[0,c] ( 1 − p ) δ 0 + p Unif [ 0 , c ] , supported on allocations with sum B B B . It can be sampled in O ( 1 ) O(1) O ( 1 ) time.
Proof. Swap the first two coordinates if necessary so that a ≤ d a\le d a ≤ d . Put
u = B − a , v = B − d , w = B − c , h = B − u − v − w . u=B-a,\qquad v=B-d,\qquad w=B-c,\qquad h=B-u-v-w. u = B − a , v = B − d , w = B − c , h = B − u − v − w . Then u ≥ v ≥ 0 u\ge v\ge0 u ≥ v ≥ 0 , w , h ≥ 0 w,h\ge0 w , h ≥ 0 , a = v + w + h a=v+w+h a = v + w + h , d = u + w + h d=u+w+h d = u + w + h , c = u + v + h c=u+v+h c = u + v + h , and p = ( u + v ) / c p=(u+v)/c p = ( u + v ) / c . The six vertices below have coordinate sum B B B :
P 1 = ( 0 , w , c ) , P 2 = ( w , 0 , c ) , P 3 = ( a , 0 , u ) , P 4 = ( a , u , 0 ) , P 5 = ( v , d , 0 ) , P 6 = ( 0 , d , v ) . \begin{aligned}
P_1&=(0,w,c),\qquad P_2=(w,0,c),\qquad P_3=(a,0,u),\\
P_4&=(a,u,0),\qquad P_5=(v,d,0),\qquad P_6=(0,d,v).
\end{aligned} P 1 P 4 = ( 0 , w , c ) , P 2 = ( w , 0 , c ) , P 3 = ( a , 0 , u ) , = ( a , u , 0 ) , P 5 = ( v , d , 0 ) , P 6 = ( 0 , d , v ) . Write E = w + h E=w+h E = w + h , F = u + h F=u+h F = u + h , and G = v + h G=v+h G = v + h . We first handle E = 0 E=0 E = 0 , which implies w = h = 0 w=h=0 w = h = 0 , p = 1 p=1 p = 1 , and a + d = c = B a+d=c=B a + d = c = B . For U ∼ Unif [ 0 , 1 ] U\sim\operatorname{Unif}[0,1] U ∼ Unif [ 0 , 1 ] , return ( a U , d U , c ( 1 − U ) ) (aU,dU,c(1-U)) ( a U , d U , c ( 1 − U )) . This samples the segment from ( 0 , 0 , c ) (0,0,c) ( 0 , 0 , c ) to ( a , d , 0 ) (a,d,0) ( a , d , 0 ) , with the required uniform marginals and sum B B B .
Now assume E > 0 E>0 E > 0 . The lemma statement gives a , c > 0 a,c>0 a , c > 0 , and u + v = p c > 0 u+v=pc>0 u + v = p c > 0 together with u ≥ v ≥ 0 u\ge v\ge0 u ≥ v ≥ 0 implies u > 0 u>0 u > 0 , hence F = u + h > 0 F=u+h>0 F = u + h > 0 . Thus all denominators in the segment weights in the tables below are positive. Since u ≥ v u\ge v u ≥ v , we distinguish three cases according to the position of w w w relative to u u u and v v v .
First case: w ≤ v ≤ u w\le v\le u w ≤ v ≤ u . Set R = h 2 + h ( u + w ) + w ( u + v ) R=h^2+h(u+w)+w(u+v) R = h 2 + h ( u + w ) + w ( u + v ) and D = a c E F D=acEF D = a c E F . We use the following seven segments and weights:
Table 4.2.
:::
The weights are nonnegative under the case inequalities. We will show below that they sum to one and give the required marginal distributions. Using these weights as probabilities, the sampler chooses a segment, samples uniformly on it, and returns the three coordinates of the sampled point. Every such point has coordinate sum B B B . In each case, write q i j q_{ij} q ij for the weight assigned to P i P j P_iP_j P i P j , with weight zero for any segment absent from the relevant table.
When some parameters are zero or equal, some segment weights may vanish. In interpreting the formulas below, we disregard components of weight zero and omit checks of the continuous density on empty intervals. We first verify the first marginal. Reading the endpoints in the first coordinate of all seven segments gives the weighted sum
q 13 Unif [ 0 , a ] + q 14 Unif [ 0 , a ] + q 25 Unif [ w , v ] + q 26 Unif [ 0 , w ] + q 36 Unif [ 0 , a ] + q 45 Unif [ v , a ] + q 46 Unif [ 0 , a ] . q_{13}\operatorname{Unif}[0,a]+q_{14}\operatorname{Unif}[0,a]+q_{25}\operatorname{Unif}[w,v]
+q_{26}\operatorname{Unif}[0,w]+q_{36}\operatorname{Unif}[0,a]+q_{45}\operatorname{Unif}[v,a]+q_{46}\operatorname{Unif}[0,a]. q 13 Unif [ 0 , a ] + q 14 Unif [ 0 , a ] + q 25 Unif [ w , v ] + q 26 Unif [ 0 , w ] + q 36 Unif [ 0 , a ] + q 45 Unif [ v , a ] + q 46 Unif [ 0 , a ] .
Each term contributes its weight divided by its interval length to the density on that interval. In particular, the terms on [ 0 , w ] [0,w] [ 0 , w ] , [ w , v ] [w,v] [ w , v ] , and [ v , a ] [v,a] [ v , a ] have equal densities:
q 26 w = q 25 v − w = q 45 a − v = h c E . \frac{q_{26}}{w}=\frac{q_{25}}{v-w}=\frac{q_{45}}{a-v}=\frac{h}{cE}. w q 26 = v − w q 25 = a − v q 45 = c E h .
where a − v = E a-v=E a − v = E . These intervals cover [ 0 , a ] [0,a] [ 0 , a ] with disjoint interiors, so the three terms combine to ( a h / ( c E ) ) Unif [ 0 , a ] (ah/(cE))\operatorname{Unif}[0,a] ( ah / ( c E )) Unif [ 0 , a ] . Thus the full weighted sum is
( q 13 + q 14 + q 36 + q 46 + a h c E ) Unif [ 0 , a ] = Unif [ 0 , a ] , \left(q_{13}+q_{14}+q_{36}+q_{46}+\frac{ah}{cE}\right)\operatorname{Unif}[0,a]=\operatorname{Unif}[0,a], ( q 13 + q 14 + q 36 + q 46 + c E ah ) Unif [ 0 , a ] = Unif [ 0 , a ] ,
where the last equality follows by substituting the table weights. This proves the required first marginal. Each retained uniform distribution has total mass one, so the calculation also shows that the segment weights sum to one.
For the second coordinate, the densities on ( 0 , w ) (0,w) ( 0 , w ) , ( w , u ) (w,u) ( w , u ) , and ( u , d ) (u,d) ( u , d ) are
q 25 + q 26 + q 36 d + q 13 w = q 25 + q 26 + q 36 d + q 14 u − w = q 25 + q 26 + q 36 d + q 45 + q 46 E = 1 d . \frac{q_{25}+q_{26}+q_{36}}{d}+\frac{q_{13}}{w}
=\frac{q_{25}+q_{26}+q_{36}}{d}+\frac{q_{14}}{u-w}
=\frac{q_{25}+q_{26}+q_{36}}{d}+\frac{q_{45}+q_{46}}{E}
=\frac{1}{d}. d q 25 + q 26 + q 36 + w q 13 = d q 25 + q 26 + q 36 + u − w q 14 = d q 25 + q 26 + q 36 + E q 45 + q 46 = d 1 .
For the third coordinate, the densities on ( 0 , v ) (0,v) ( 0 , v ) , ( v , u ) (v,u) ( v , u ) , and ( u , c ) (u,c) ( u , c ) are
q 14 + q 25 c + q 46 F = q 14 + q 25 c + q 26 F + q 36 u − v = q 14 + q 25 c + q 26 F + q 13 G = p c . \frac{q_{14}+q_{25}}{c}+\frac{q_{46}}{F}
=\frac{q_{14}+q_{25}}{c}+\frac{q_{26}}{F}+\frac{q_{36}}{u-v}
=\frac{q_{14}+q_{25}}{c}+\frac{q_{26}}{F}+\frac{q_{13}}{G}
=\frac{p}{c}. c q 14 + q 25 + F q 46 = c q 14 + q 25 + F q 26 + u − v q 36 = c q 14 + q 25 + F q 26 + G q 13 = c p .
The identities for the third coordinate use c − u = G c-u=G c − u = G , c − v = F c-v=F c − v = F , and R + a h = E ( u + v + 2 h ) R+ah=E(u+v+2h) R + ah = E ( u + v + 2 h ) .
In the tables for each of the three cases, only P 4 P 5 P_4P_5 P 4 P 5 can have both a positive weight and a constant coordinate. Its third coordinate is zero, and its weight q 45 = h / c = 1 − p q_{45}=h/c=1-p q 45 = h / c = 1 − p gives the required atom in the third marginal. There are no other atoms, so the density identities above complete the first case, and the remaining two cases require only the continuous marginal density checks.
The total mass of any marginal equals the sum of the segment weights. Since the first marginal has no atoms, verifying that its density is 1 / a 1/a 1/ a on ( 0 , a ) (0,a) ( 0 , a ) also proves that the weights sum to one.
Second case: v ≤ w ≤ u v\le w\le u v ≤ w ≤ u . Set S = h 3 + ( u + v + w ) h 2 + ( u v + u w + v w ) h + u v w + v 2 w S=h^3+(u+v+w)h^2+(uv+uw+vw)h+uvw+v^2w S = h 3 + ( u + v + w ) h 2 + ( uv + u w + v w ) h + uv w + v 2 w . We use the following six segments and weights:
Table 3.
Again the weights are nonnegative, and we use the same sampling rule. For the first coordinate, the densities on ( 0 , v ) (0,v) ( 0 , v ) and ( v , a ) (v,a) ( v , a ) are
q 13 + q 14 + q 36 + q 46 a + q 15 v = q 13 + q 14 + q 36 + q 46 a + 1 E = 1 a . \frac{q_{13}+q_{14}+q_{36}+q_{46}}{a}+\frac{q_{15}}{v}=\frac{q_{13}+q_{14}+q_{36}+q_{46}}{a}+\frac{1}{E}=\frac{1}{a}. a q 13 + q 14 + q 36 + q 46 + v q 15 = a q 13 + q 14 + q 36 + q 46 + E 1 = a 1 .
For the second coordinate, the densities on ( 0 , w ) (0,w) ( 0 , w ) , ( w , u ) (w,u) ( w , u ) , and ( u , d ) (u,d) ( u , d ) are
q 36 d + q 13 w = q 36 d + q 14 u − w + q 15 F = q 36 d + q 15 F + q 45 + q 46 E = 1 d . \frac{q_{36}}{d}+\frac{q_{13}}{w}=\frac{q_{36}}{d}+\frac{q_{14}}{u-w}+\frac{q_{15}}{F}=\frac{q_{36}}{d}+\frac{q_{15}}{F}+\frac{q_{45}+q_{46}}{E}=\frac{1}{d}. d q 36 + w q 13 = d q 36 + u − w q 14 + F q 15 = d q 36 + F q 15 + E q 45 + q 46 = d 1 .
For the third coordinate, the densities on ( 0 , v ) (0,v) ( 0 , v ) , ( v , u ) (v,u) ( v , u ) , and ( u , c ) (u,c) ( u , c ) are
q 14 + q 15 c + q 46 v = q 14 + q 15 c + q 36 u − v = q 14 + q 15 c + q 13 G = p c . \frac{q_{14}+q_{15}}{c}+\frac{q_{46}}{v}=\frac{q_{14}+q_{15}}{c}+\frac{q_{36}}{u-v}=\frac{q_{14}+q_{15}}{c}+\frac{q_{13}}{G}=\frac{p}{c}. c q 14 + q 15 + v q 46 = c q 14 + q 15 + u − v q 36 = c q 14 + q 15 + G q 13 = c p .
Third case: v ≤ u ≤ w v \le u \le w v ≤ u ≤ w . We use the following five segments and weights, all nonnegative in this case:
Table 4.
We use the same sampling rule and verify each marginal as before. For the first coordinate, the densities on ( 0 , v ) (0,v) ( 0 , v ) , ( v , w ) (v,w) ( v , w ) , and ( w , a ) (w,a) ( w , a ) are
q 14 a + q 15 v = q 14 a + q 25 w − v + q 45 E = q 14 a + q 24 G + q 45 E = 1 a . \frac{q_{14}}{a}+\frac{q_{15}}{v}=\frac{q_{14}}{a}+\frac{q_{25}}{w-v}+\frac{q_{45}}{E}=\frac{q_{14}}{a}+\frac{q_{24}}{G}+\frac{q_{45}}{E}=\frac{1}{a}. a q 14 + v q 15 = a q 14 + w − v q 25 + E q 45 = a q 14 + G q 24 + E q 45 = a 1 .
For the second coordinate, the densities on ( 0 , u ) (0,u) ( 0 , u ) , ( u , w ) (u,w) ( u , w ) , and ( w , d ) (w,d) ( w , d ) are
q 25 d + q 24 u = q 25 d + q 14 w − u + q 45 E = q 25 d + q 15 F + q 45 E = 1 d . \frac{q_{25}}{d}+\frac{q_{24}}{u}=\frac{q_{25}}{d}+\frac{q_{14}}{w-u}+\frac{q_{45}}{E}=\frac{q_{25}}{d}+\frac{q_{15}}{F}+\frac{q_{45}}{E}=\frac{1}{d}. d q 25 + u q 24 = d q 25 + w − u q 14 + E q 45 = d q 25 + F q 15 + E q 45 = d 1 .
For the third coordinate, the density on ( 0 , c ) (0,c) ( 0 , c ) is
q 14 + q 15 + q 24 + q 25 c = p c . \frac{q_{14}+q_{15}+q_{24}+q_{25}}{c}=\frac{p}{c}. c q 14 + q 15 + q 24 + q 25 = c p .
Each case uses at most seven segments, and computing their weights and sampling a point take O ( 1 ) O(1) O ( 1 ) time.
A mixture of uniforms on nested intervals
The construction in § 4.1.5 will also require a three-variable coupling with two uniform marginals and a third marginal that is a mixture of uniforms on [ 0 , t ] [0,t] [ 0 , t ] and [ 0 , c ] [0,c] [ 0 , c ] , where t < c t<c t < c . Under the condition below, the joint mixability theorem of [20 Theorem 3.2] for nonincreasing densities already gives the existence of a coupling with constant sum. We give an explicit sampler that takes O ( 1 ) O(1) O ( 1 ) time.
Lemma 4.3. Let a , d , c > 0 a,d,c>0 a , d , c > 0 , 0 < t < c 0<t<c 0 < t < c , and 0 < q < 1 0<q<1 0 < q < 1 . If M = ( a + d + q t + ( 1 − q ) c ) / 2 ≥ max { a , d , c } M=(a+d+qt+(1-q)c)/2\ge\max\{a,d,c\} M = ( a + d + q t + ( 1 − q ) c ) /2 ≥ max { a , d , c } , then Unif [ 0 , a ] \operatorname{Unif}[0,a] Unif [ 0 , a ] , Unif [ 0 , d ] \operatorname{Unif}[0,d] Unif [ 0 , d ] , and q Unif [ 0 , t ] + ( 1 − q ) Unif [ 0 , c ] q\operatorname{Unif}[0,t]+(1-q)\operatorname{Unif}[0,c] q Unif [ 0 , t ] + ( 1 − q ) Unif [ 0 , c ] have an explicit coupling with sum M M M that can be sampled in O ( 1 ) O(1) O ( 1 ) time.
Proof. Swap the first two coordinates if necessary so that a ≤ d a \le d a ≤ d . Set
u = M − a , v = M − d , h = q ( c − t ) = c − u − v . u = M-a,\qquad v = M-d,\qquad h = q(c-t)=c-u-v. u = M − a , v = M − d , h = q ( c − t ) = c − u − v .
The assumption M ≥ d ≥ a M \ge d \ge a M ≥ d ≥ a gives u ≥ v ≥ 0 u \ge v \ge0 u ≥ v ≥ 0 . Also, u + v = q t + ( 1 − q ) c u+v=qt+(1-q)c u + v = q t + ( 1 − q ) c , so t < u + v < c t<u+v<c t < u + v < c and h > 0 h>0 h > 0 . We will express the target third marginal as a mixture of distributions that are easier to couple with the first two uniforms. To keep the sum equal to M M M in each component, its third marginal must have mean M − ( a + d ) / 2 = ( u + v ) / 2 M-(a+d)/2=(u+v)/2 M − ( a + d ) /2 = ( u + v ) /2 . We therefore consider the family
F x = h c − x Unif [ 0 , x ] + ( 1 − h c − x ) Unif [ 0 , c ] , 0 < x ≤ u + v . F_x=\frac{h}{c-x}\operatorname{Unif}[0,x]+\left(1-\frac{h}{c-x}\right)\operatorname{Unif}[0,c],\qquad0<x\le u+v. F x = c − x h Unif [ 0 , x ] + ( 1 − c − x h ) Unif [ 0 , c ] , 0 < x ≤ u + v .
The range x ≤ u + v = c − h x\le u+v=c-h x ≤ u + v = c − h ensures that 0 < h / ( c − x ) ≤ 1 0<h/(c-x)\le1 0 < h / ( c − x ) ≤ 1 , so each F x F_x F x is a probability distribution. Its mean is
1 2 ( h x c − x + c ( 1 − h c − x ) ) = c − h 2 = u + v 2 . \frac{1}{2}\left(\frac{hx}{c-x}+c\left(1-\frac{h}{c-x}\right)\right)=\frac{c-h}{2}=\frac{u+v}{2}. 2 1 ( c − x h x + c ( 1 − c − x h ) ) = 2 c − h = 2 u + v .
Thus varying x x x changes the shorter interval while preserving the required mean, and F t F_t F t is the desired third marginal because h / ( c − t ) = q h/(c-t)=q h / ( c − t ) = q . We consider three cases according to the position of t t t relative to v v v and u u u .
First case: t ≤ v t\le v t ≤ v . We sample a location S ∈ [ 0 , t ] S\in[0,t] S ∈ [ 0 , t ] , then use Lemma 4.2 to couple the first two uniforms with a third distribution that has an atom at S S S and a uniform component on [ S , c ] [S,c] [ S , c ] . The distribution of S S S is chosen so that averaging these conditional distributions gives F t F_t F t . Specifically, draw
S = h t R h + t − t R , R ∼ Unif [ 0 , 1 ] . S=\frac{htR}{h+t-tR},\qquad R\sim\operatorname{Unif}[0,1]. S = h + t − tR h tR , R ∼ Unif [ 0 , 1 ] .
For a sampled value S = s S=s S = s , we use the conditional third marginal ( 1 − p s ) δ s + p s Unif [ s , c ] (1-p_s)\delta_s+p_s\operatorname{Unif}[s,c] ( 1 − p s ) δ s + p s Unif [ s , c ] , where δ s \delta_s δ s denotes the point mass at s s s . Its mean is s + p s ( c − s ) / 2 s+p_s(c-s)/2 s + p s ( c − s ) /2 , so the required mean ( u + v ) / 2 (u+v)/2 ( u + v ) /2 determines the weight
p s = u + v − 2 s c − s = c − h − 2 s c − s . p_s=\frac{u+v-2s}{c-s}=\frac{c-h-2s}{c-s}. p s = c − s u + v − 2 s = c − s c − h − 2 s .
When p s > 0 p_s>0 p s > 0 , apply Lemma 4.2 with lengths a , d , c − s a,d,c-s a , d , c − s , mixture probability p s p_s p s , and sum M − s M-s M − s , then add s s s to the third coordinate. This gives the specified conditional third marginal and restores the sum to M M M .
To check that this application is valid, first note that s ≤ t ≤ v ≤ u s\le t\le v\le u s ≤ t ≤ v ≤ u makes u + v − 2 s u+v-2s u + v − 2 s nonnegative. Moreover, 1 − p s = ( h + s ) / ( c − s ) > 0 1-p_s=(h+s)/(c-s)>0 1 − p s = ( h + s ) / ( c − s ) > 0 , so 0 ≤ p s < 1 0\le p_s<1 0 ≤ p s < 1 . The same bounds s ≤ v ≤ u s\le v\le u s ≤ v ≤ u give a , d ≤ M − s a,d\le M-s a , d ≤ M − s , while c ≤ M c\le M c ≤ M gives c − s ≤ M − s c-s\le M-s c − s ≤ M − s . Finally, the lengths and mixture weight satisfy
a + d + p s ( c − s ) = a + d + u + v − 2 s = 2 ( M − s ) . a+d+p_s(c-s)=a+d+u+v-2s=2(M-s). a + d + p s ( c − s ) = a + d + u + v − 2 s = 2 ( M − s ) .
If p s = 0 p_s=0 p s = 0 , then u = v = s u=v=s u = v = s and a = d = M − s a=d=M-s a = d = M − s ; return ( a U , a ( 1 − U ) , s ) (aU,a(1-U),s) ( a U , a ( 1 − U ) , s ) for U ∼ Unif [ 0 , 1 ] U\sim\operatorname{Unif}[0,1] U ∼ Unif [ 0 , 1 ] .
We now verify the third marginal; the first two conditional marginals are Unif [ 0 , a ] \operatorname{Unif}[0,a] Unif [ 0 , a ] and Unif [ 0 , d ] \operatorname{Unif}[0,d] Unif [ 0 , d ] for every s s s . For 0 ≤ s ≤ t 0\le s\le t 0 ≤ s ≤ t , solving the inequality S ≤ s S\le s S ≤ s for R R R gives
Pr ( S ≤ s ) = Pr ( R ≤ s ( h + t ) t ( h + s ) ) = s ( h + t ) t ( h + s ) . \Pr(S\le s)=\Pr\left(R\le\frac{s(h+t)}{t(h+s)}\right)=\frac{s(h+t)}{t(h+s)}. Pr ( S ≤ s ) = Pr ( R ≤ t ( h + s ) s ( h + t ) ) = t ( h + s ) s ( h + t ) .
since R R R is uniform on [ 0 , 1 ] [0,1] [ 0 , 1 ] . Differentiating gives the density of S S S on ( 0 , t ) (0,t) ( 0 , t ) :
f S ( s ) = d d s ( s ( h + t ) t ( h + s ) ) = h ( h + t ) t ( h + s ) 2 . f_S(s)=\frac{d}{ds}\left(\frac{s(h+t)}{t(h+s)}\right)=\frac{h(h+t)}{t(h+s)^2}. f S ( s ) = d s d ( t ( h + s ) s ( h + t ) ) = t ( h + s ) 2 h ( h + t ) .
Fix 0 < z < t 0<z<t 0 < z < t . For S = s S=s S = s , the atom at s s s has mass 1 − p s 1-p_s 1 − p s . After averaging over S S S , the mass contributed by these atoms to [ 0 , z ] [0,z] [ 0 , z ] is ∫ 0 z ( 1 − p s ) f S ( s ) d s \int_0^z(1-p_s)f_S(s)\,ds ∫ 0 z ( 1 − p s ) f S ( s ) d s . Differentiating with respect to z z z gives their contribution to the density:
( 1 − p z ) f S ( z ) = h + z c − z ⋅ h ( h + t ) t ( h + z ) 2 = h ( h + t ) t ( h + z ) ( c − z ) . (1-p_z)f_S(z)=\frac{h+z}{c-z}\cdot\frac{h(h+t)}{t(h+z)^2}=\frac{h(h+t)}{t(h+z)(c-z)}. ( 1 − p z ) f S ( z ) = c − z h + z ⋅ t ( h + z ) 2 h ( h + t ) = t ( h + z ) ( c − z ) h ( h + t ) .
The conditional uniform component has weight p s p_s p s and density 1 / ( c − s ) 1/(c-s) 1/ ( c − s ) on ( s , c ) (s,c) ( s , c ) . Thus its contribution to the density at z z z is p s / ( c − s ) p_s/(c-s) p s / ( c − s ) when s ≤ z s\le z s ≤ z , and zero otherwise. Averaging over the sampled location S S S gives
∫ 0 z p s c − s f S ( s ) d s = h ( h + t ) t ∫ 0 z c − h − 2 s ( h + s ) 2 ( c − s ) 2 d s = h ( h + t ) t [ − 1 ( h + s ) ( c − s ) ] s = 0 s = z = h + t c t ( 1 − h c ( h + z ) ( c − z ) ) . \begin{aligned}
\int_0^z\frac{p_s}{c-s}f_S(s)\,ds=\frac{h(h+t)}{t}\int_0^z\frac{c-h-2s}{(h+s)^2(c-s)^2}\,ds \\
&=\frac{h(h+t)}{t}\left[-\frac{1}{(h+s)(c-s)}\right]_{s=0}^{s=z} \\
&=\frac{h+t}{ct}\left(1-\frac{hc}{(h+z)(c-z)}\right).
\end{aligned} ∫ 0 z c − s p s f S ( s ) d s = t h ( h + t ) ∫ 0 z ( h + s ) 2 ( c − s ) 2 c − h − 2 s d s = t h ( h + t ) [ − ( h + s ) ( c − s ) 1 ] s = 0 s = z = c t h + t ( 1 − ( h + z ) ( c − z ) h c ) .
Adding the two contributions cancels the terms involving 1 / ( ( h + z ) ( c − z ) ) 1/((h+z)(c-z)) 1/ (( h + z ) ( c − z )) and leaves ( h + t ) / ( c t ) (h+t)/(ct) ( h + t ) / ( c t ) . This is the density of the target mixture F t F_t F t on ( 0 , t ) (0,t) ( 0 , t ) , since h = q ( c − t ) h=q(c-t) h = q ( c − t ) gives
q t + 1 − q c = t + q ( c − t ) c t = h + t c t . \frac{q}{t}+\frac{1-q}{c}=\frac{t+q(c-t)}{ct}=\frac{h+t}{ct}. t q + c 1 − q = c t t + q ( c − t ) = c t h + t .
For t < z < c t<z<c t < z < c , only the uniform components contribute, and every sampled location s ∈ [ 0 , t ] s\in[0,t] s ∈ [ 0 , t ] satisfies s < z s<z s < z . Setting the upper integration limit to t t t therefore gives density
c − h − t c ( c − t ) = 1 − q c , \frac{c-h-t}{c(c-t)}=\frac{1-q}{c}, c ( c − t ) c − h − t = c 1 − q ,
which is the density of F t F_t F t on ( t , c ) (t,c) ( t , c ) .
The densities on ( 0 , t ) (0,t) ( 0 , t ) and ( t , c ) (t,c) ( t , c ) account for total probability
t ⋅ h + t c t + ( c − t ) ⋅ c − h − t c ( c − t ) = h + t c + c − h − t c = 1. t\cdot\frac{h+t}{ct}+(c-t)\cdot\frac{c-h-t}{c(c-t)}=\frac{h+t}{c}+\frac{c-h-t}{c}=1. t ⋅ c t h + t + ( c − t ) ⋅ c ( c − t ) c − h − t = c h + t + c c − h − t = 1.
Thus there are no additional point masses, and the third marginal is F t F_t F t .
Second case: t ≥ u t\ge u t ≥ u . We express F t F_t F t as a mixture of a distribution covered by the first case and a single uniform distribution. Set T = u + v − t T=u+v-t T = u + v − t . The inequality t < u + v t<u+v t < u + v gives T > 0 T>0 T > 0 , while the present assumption t ≥ u t\ge u t ≥ u gives
T = v − ( t − u ) ≤ v ≤ t . T=v-(t-u)\le v\le t. T = v − ( t − u ) ≤ v ≤ t .
Thus the first case applies to F T F_T F T . If T = t T=t T = t , this already gives the required coupling, so assume T < t T<t T < t . The choice of T T T also makes Unif [ T , t ] \operatorname{Unif}[T,t] Unif [ T , t ] have mean ( T + t ) / 2 = ( u + v ) / 2 (T+t)/2=(u+v)/2 ( T + t ) /2 = ( u + v ) /2 , the same as F t F_t F t and F T F_T F T .
To determine the mixture weight, compare the densities of F t F_t F t and F T F_T F T on ( 0 , T ) (0,T) ( 0 , T ) , which are ( h + t ) / ( c t ) (h+t)/(ct) ( h + t ) / ( c t ) and ( h + T ) / ( c T ) (h+T)/(cT) ( h + T ) / ( c T ) , respectively. Set
α = ( h + t ) / ( c t ) ( h + T ) / ( c T ) = T ( h + t ) t ( c − t ) . \alpha=\frac{(h+t)/(ct)}{(h+T)/(cT)}=\frac{T(h+t)}{t(c-t)}. α = ( h + T ) / ( c T ) ( h + t ) / ( c t ) = t ( c − t ) T ( h + t ) .
where h + T = c − t h+T=c-t h + T = c − t . Then α F T \alpha F_T α F T and F t F_t F t have the same density on ( 0 , T ) (0,T) ( 0 , T ) . Their densities also agree on ( t , c ) (t,c) ( t , c ) : both equal T / ( c ( c − t ) ) T/(c(c-t)) T / ( c ( c − t )) , using T + t = c − h T+t=c-h T + t = c − h . On the remaining interval ( T , t ) (T,t) ( T , t ) , subtracting the density of α F T \alpha F_T α F T from that of F t F_t F t gives
h + t c t − T c ( c − t ) = h t ( c − t ) . \frac{h+t}{ct}-\frac{T}{c(c-t)}=\frac{h}{t(c-t)}. c t h + t − c ( c − t ) T = t ( c − t ) h .
This constant density has total mass
1 − α = h ( t − T ) t ( c − t ) > 0. 1-\alpha=\frac{h(t-T)}{t(c-t)}>0. 1 − α = t ( c − t ) h ( t − T ) > 0.
Since α > 0 \alpha>0 α > 0 , these are valid mixture weights, and we obtain
F t = α F T + ( 1 − α ) Unif [ T , t ] . F_t=\alpha F_T+(1-\alpha)\operatorname{Unif}[T,t]. F t = α F T + ( 1 − α ) Unif [ T , t ] .
With probability α \alpha α , use the coupling from the first case for F T F_T F T . With probability 1 − α 1-\alpha 1 − α , we need to couple the first two uniforms with Unif [ T , t ] \operatorname{Unif}[T,t] Unif [ T , t ] . For this branch, apply Lemma 4.2 with lengths a , d , t − T a,d,t-T a , d , t − T , mixture probability 1 1 1 , and sum M − T M-T M − T , then add T T T to the third coordinate. The length bounds hold because T ≤ v ≤ u T\le v\le u T ≤ v ≤ u gives a , d ≤ M − T a,d\le M-T a , d ≤ M − T , and t < c ≤ M t<c\le M t < c ≤ M gives t − T ≤ M − T t-T\le M-T t − T ≤ M − T . Also, T + t = u + v T+t=u+v T + t = u + v gives
a + d + ( t − T ) = 2 M − ( u + v ) + t − T = 2 ( M − T ) . a+d+(t-T)=2M-(u+v)+t-T=2(M-T). a + d + ( t − T ) = 2 M − ( u + v ) + t − T = 2 ( M − T ) .
After adding T T T , this branch has third marginal Unif [ T , t ] \operatorname{Unif}[T,t] Unif [ T , t ] and sum M M M . Both branches preserve the first two marginals, and the mixture identity gives the required third marginal F t F_t F t .
Third case: v < t < u v<t<u v < t < u . We again separate a component covered by the first case, then construct a coupling for the remaining distribution. When v > 0 v>0 v > 0 , we use F v F_v F v , whose shorter interval ends at the largest value allowed in the first case. As in the second case, choose its weight to match the density of F t F_t F t below this endpoint:
α = ( h + t ) / ( c t ) ( h + v ) / ( c v ) = v ( h + t ) t ( h + v ) , 1 − α = h ( t − v ) t ( h + v ) . \alpha=\frac{(h+t)/(ct)}{(h+v)/(cv)}=\frac{v(h+t)}{t(h+v)},\qquad1-\alpha=\frac{h(t-v)}{t(h+v)}. α = ( h + v ) / ( c v ) ( h + t ) / ( c t ) = t ( h + v ) v ( h + t ) , 1 − α = t ( h + v ) h ( t − v ) .
Both weights are positive because 0 < v < t 0<v<t 0 < v < t . Subtracting α F v \alpha F_v α F v leaves no mass on ( 0 , v ) (0,v) ( 0 , v ) . On each of the intervals ( v , t ) (v,t) ( v , t ) and ( t , c ) (t,c) ( t , c ) , we subtract the density of α F v \alpha F_v α F v on ( v , c ) (v,c) ( v , c ) and divide by 1 − α 1-\alpha 1 − α . The resulting densities are, respectively,
1 1 − α ( h + t c t − α c − h − v c ( c − v ) ) = h + t ( c − v ) ( t − v ) , \frac{1}{1-\alpha}\left(\frac{h+t}{ct}-\alpha\frac{c-h-v}{c(c-v)}\right)=\frac{h+t}{(c-v)(t-v)}, 1 − α 1 ( c t h + t − α c ( c − v ) c − h − v ) = ( c − v ) ( t − v ) h + t ,
1 1 − α ( c − h − t c ( c − t ) − α c − h − v c ( c − v ) ) = u − t ( c − v ) ( c − t ) . \frac{1}{1-\alpha}\left(\frac{c-h-t}{c(c-t)}-\alpha\frac{c-h-v}{c(c-v)}\right)=\frac{u-t}{(c-v)(c-t)}. 1 − α 1 ( c ( c − t ) c − h − t − α c ( c − v ) c − h − v ) = ( c − v ) ( c − t ) u − t .
These are the densities of the mixture
v + h c − t Unif [ v , t ] + u − t c − t Unif [ v , c ] . \frac{v+h}{c-t}\operatorname{Unif}[v,t]+\frac{u-t}{c-t}\operatorname{Unif}[v,c]. c − t v + h Unif [ v , t ] + c − t u − t Unif [ v , c ] .
Its weights are positive and sum to one because ( v + h ) + ( u − t ) = c − t (v+h)+(u-t)=c-t ( v + h ) + ( u − t ) = c − t . This is therefore the normalized residual distribution ( F t − α F v ) / ( 1 − α ) (F_t-\alpha F_v)/(1-\alpha) ( F t − α F v ) / ( 1 − α ) . If v = 0 v=0 v = 0 , the displayed mixture is already F t F_t F t , since h / ( c − t ) = q h/(c-t)=q h / ( c − t ) = q ; we couple it directly without introducing F v F_v F v .
We now couple the displayed mixture with the first two uniforms using three segments, all with coordinate sum M M M . Set
W = M − c , s = u − t , H = v + h = a − W , K = H d + W s . W=M-c,\qquad s=u-t,\qquad H=v+h=a-W,\qquad K=Hd+Ws. W = M − c , s = u − t , H = v + h = a − W , K = H d + W s .
The values W W W and s s s make the points ( W , 0 , c ) (W,0,c) ( W , 0 , c ) and ( a , s , t ) (a,s,t) ( a , s , t ) have sum M M M ; the point ( 0 , d , v ) (0,d,v) ( 0 , d , v ) has the same sum because v = M − d v=M-d v = M − d . Here W ≥ 0 W\ge0 W ≥ 0 , s , H > 0 s,H>0 s , H > 0 , and d − s = a + t − v > 0 d-s=a+t-v>0 d − s = a + t − v > 0 . Thus the points have nonnegative coordinates, and K > 0 K > 0 K > 0 . We use the three segments joining these points, with weights normalized by K K K :
Table 5.
Every point on these segments has nonnegative coordinates and sum M M M . The weights are nonnegative and sum to one because W s + H ( a + t − v ) + H s = W s + H d = K Ws + H(a+t-v) + Hs = Ws + Hd = K W s + H ( a + t − v ) + H s = W s + H d = K . Choose a segment with these probabilities and sample uniformly on it. When W = 0 W = 0 W = 0 , the first segment has weight zero and is omitted.
For the first coordinate, the first and third segments project onto the adjacent intervals [ 0 , W ] [0,W] [ 0 , W ] and [ W , a ] [W,a] [ W , a ] . Since a − W = H a-W=H a − W = H , their combined contribution has density s / K s/K s / K on [ 0 , a ] [0,a] [ 0 , a ] , while the second segment contributes on all of [ 0 , a ] [0,a] [ 0 , a ] . The resulting density is
s K + H ( a + t − v ) a K = a s + H ( d − s ) a K = 1 a , \frac{s}{K}+\frac{H(a+t-v)}{aK}=\frac{as+H(d-s)}{aK}=\frac{1}{a}, K s + a K H ( a + t − v ) = a K a s + H ( d − s ) = a 1 ,
where a s + H ( d − s ) = H d + ( a − H ) s = H d + W s = K as+H(d-s)=Hd+(a-H)s=Hd+Ws=K a s + H ( d − s ) = H d + ( a − H ) s = H d + W s = K . For the second coordinate, the first segment contributes on [ 0 , d ] [0,d] [ 0 , d ] , while the other two contribute on [ s , d ] [s,d] [ s , d ] and [ 0 , s ] [0,s] [ 0 , s ] . Since d − s = a + t − v d-s=a+t-v d − s = a + t − v , the density on both intervals is
W s d K + H K = W s + H d d K = 1 d . \frac{Ws}{dK}+\frac{H}{K}=\frac{Ws+Hd}{dK}=\frac{1}{d}. d K W s + K H = d K W s + H d = d 1 .
For the third coordinate, the first segment contributes on [ v , c ] [v,c] [ v , c ] , the second on [ v , t ] [v,t] [ v , t ] , and the third on [ t , c ] [t,c] [ t , c ] . The densities on ( v , t ) (v,t) ( v , t ) and ( t , c ) (t,c) ( t , c ) are therefore, respectively,
W s ( c − v ) K + H ( a + t − v ) ( t − v ) K = h + t ( c − v ) ( t − v ) , W s ( c − v ) K + H s ( c − t ) K = u − t ( c − v ) ( c − t ) . \frac{Ws}{(c-v)K}+\frac{H(a+t-v)}{(t-v)K}=\frac{h+t}{(c-v)(t-v)},\qquad
\frac{Ws}{(c-v)K}+\frac{Hs}{(c-t)K}=\frac{u-t}{(c-v)(c-t)}. ( c − v ) K W s + ( t − v ) K H ( a + t − v ) = ( c − v ) ( t − v ) h + t , ( c − v ) K W s + ( c − t ) K H s = ( c − v ) ( c − t ) u − t .
These match the two densities of the residual distribution computed above. Every retained segment has nonconstant projections onto all three coordinates, so there are no atoms. For v > 0 v>0 v > 0 , choose the coupling from the first case for F v F_v F v with probability α \alpha α and this residual coupling with probability 1 − α 1-\alpha 1 − α ; for v = 0 v=0 v = 0 , use the residual coupling directly. This gives the required marginals and sum M M M in the third case.
Each case uses a bounded number of arithmetic operations, comparisons, and uniform draws, proving the claimed O ( 1 ) O(1) O ( 1 ) sampling cost.
A coupling for four variables
We now combine the preceding two constructions to couple three uniform variables and a fourth whose distribution is a mixture of a uniform and an atom at zero.
Lemma 4.4. Let $0 < u \le v \le w, , , \ell > 0, a n d $ 0 < p < 1 , and \$0 < p < 1 , an d $0 < p < 1 . If B = ( u + v + w + p ℓ ) / 2 ≥ max { w , ℓ } B=(u+v+w+p\ell)/2 \ge\max\{w,\ell\} B = ( u + v + w + p ℓ ) /2 ≥ max { w , ℓ } , then Unif [ 0 , u ] \operatorname{Unif}[0,u] Unif [ 0 , u ] , Unif [ 0 , v ] \operatorname{Unif}[0,v] Unif [ 0 , v ] , Unif [ 0 , w ] \operatorname{Unif}[0,w] Unif [ 0 , w ] , and ( 1 − p ) δ 0 + p Unif [ 0 , ℓ ] (1-p)\delta_0+p\operatorname{Unif}[0,\ell] ( 1 − p ) δ 0 + p Unif [ 0 , ℓ ] have an explicit coupling with sum B B B that can be sampled in O ( 1 ) O(1) O ( 1 ) time.
Proof. Write X 1 , X 2 , X 3 , X 4 X_1,X_2,X_3,X_4 X 1 , X 2 , X 3 , X 4 for the four output coordinates. There are two cases. When w ≥ ( 1 − p ) ℓ w \ge(1-p)\ell w ≥ ( 1 − p ) ℓ , we combine two three-variable couplings using auxiliary uniform variables whose sum is fixed. When this inequality fails, we choose between the uniform component and the atom of X 4 X_4 X 4 , and use Lemma 4.3 in the latter branch.
Combining two couplings: w ≥ ( 1 − p ) ℓ w \ge(1-p)\ell w ≥ ( 1 − p ) ℓ . We introduce two auxiliary variables Z 1 , Z 2 Z_1,Z_2 Z 1 , Z 2 , both uniform on [ 0 , d ] [0,d] [ 0 , d ] , and construct separate couplings for ( X 1 , X 2 , Z 1 ) (X_1,X_2,Z_1) ( X 1 , X 2 , Z 1 ) and ( Z 2 , X 3 , X 4 ) (Z_2,X_3,X_4) ( Z 2 , X 3 , X 4 ) . We will combine them so that Z 1 + Z 2 = d Z_1+Z_2=d Z 1 + Z 2 = d , then discard the auxiliary coordinates. The length d d d must allow both applications of Lemma 4.2 . For the three uniforms with lengths ( u , v , d ) (u,v,d) ( u , v , d ) , the lemma’s length bounds are equivalent to
v − u ≤ d ≤ u + v . v-u \le d \le u+v. v − u ≤ d ≤ u + v .
For lengths ( d , w , ℓ ) (d,w,\ell) ( d , w , ℓ ) with mixture probability p p p on the last coordinate, they are equivalent to
max { w − p ℓ , ( 2 − p ) ℓ − w } ≤ d ≤ w + p ℓ . \max\{w-p\ell,(2-p)\ell-w\} \le d \le w+p\ell. max { w − p ℓ , ( 2 − p ) ℓ − w } ≤ d ≤ w + p ℓ .
We therefore choose
d = max { v − u , w − p ℓ , ( 2 − p ) ℓ − w , 0 } . d=\max\{v-u,w-p\ell,(2-p)\ell-w,0\}. d = max { v − u , w − p ℓ , ( 2 − p ) ℓ − w , 0 } .
To check the upper bounds on d d d , the budget conditions B ≥ w B\ge w B ≥ w and B ≥ ℓ B\ge\ell B ≥ ℓ give
w − p ℓ ≤ u + v , ( 2 − p ) ℓ − w ≤ u + v . w-p\ell\le u+v,\qquad(2-p)\ell-w\le u+v. w − p ℓ ≤ u + v , ( 2 − p ) ℓ − w ≤ u + v .
The case assumption w ≥ ( 1 − p ) ℓ w\ge(1-p)\ell w ≥ ( 1 − p ) ℓ gives ( 2 − p ) ℓ − w ≤ w + p ℓ (2-p)\ell-w\le w+p\ell ( 2 − p ) ℓ − w ≤ w + p ℓ . The other bounds on the entries of the maximum follow from 0 < u ≤ v ≤ w 0<u\le v\le w 0 < u ≤ v ≤ w and p ℓ > 0 p\ell>0 p ℓ > 0 . Thus d ≤ min { u + v , w + p ℓ } d\le\min\{u+v,w+p\ell\} d ≤ min { u + v , w + p ℓ } , as required. Also, ( w − p ℓ ) + ( ( 2 − p ) ℓ − w ) = 2 ( 1 − p ) ℓ > 0 (w-p\ell)+((2-p)\ell-w)=2(1-p)\ell>0 ( w − p ℓ ) + (( 2 − p ) ℓ − w ) = 2 ( 1 − p ) ℓ > 0 , so at least one entry of the maximum is positive and d > 0 d>0 d > 0 .
The two couplings supplied by Lemma 4.2 satisfy
X 1 + X 2 + Z 1 = u + v + d 2 , Z 2 + X 3 + X 4 = d + w + p ℓ 2 . X_1+X_2+Z_1=\frac{u+v+d}{2},\qquad Z_2+X_3+X_4=\frac{d+w+p\ell}{2}. X 1 + X 2 + Z 1 = 2 u + v + d , Z 2 + X 3 + X 4 = 2 d + w + p ℓ .
Sample the second coupling, then sample the first conditional on Z 1 = d − Z 2 Z_1=d-Z_2 Z 1 = d − Z 2 . Since d − Z 2 d-Z_2 d − Z 2 is uniform on [ 0 , d ] [0,d] [ 0 , d ] , averaging these conditional samples recovers the first coupling; the second coupling is unchanged. Discarding Z 1 , Z 2 Z_1,Z_2 Z 1 , Z 2 therefore leaves the four required marginals, with sum
X 1 + X 2 + X 3 + X 4 = u + v + d 2 + d + w + p ℓ 2 − d = B . X_1+X_2+X_3+X_4=\frac{u+v+d}{2}+\frac{d+w+p\ell}{2}-d=B. X 1 + X 2 + X 3 + X 4 = 2 u + v + d + 2 d + w + p ℓ − d = B .
We first explain how to sample ( X 1 , X 2 ) (X_1,X_2) ( X 1 , X 2 ) given Z 1 = z Z_1=z Z 1 = z , using the segments and weights supplied by Lemma 4.2 for the first coupling. The Z 1 Z_1 Z 1 coordinate is nonconstant on every segment of positive weight, since otherwise its uniform marginal would have an atom. Fixing Z 1 = z Z_1=z Z 1 = z therefore leaves at most one point on each segment, and the conditional sample is a choice among these points. Suppose segment j j j of the first coupling has weight q j q_j q j and its Z 1 Z_1 Z 1 coordinate has endpoint values r j , s j r_j,s_j r j , s j . This segment contributes density q j / ∣ r j − s j ∣ q_j/\lvert r_j-s_j\rvert q j / ∣ r j − s j ∣ between those values, while the total density of Z 1 Z_1 Z 1 is 1 / d 1/d 1/ d . For z z z away from all endpoint values r j , s j r_j,s_j r j , s j , the conditional probability of choosing segment j j j is therefore
q j / ∣ r j − s j ∣ 1 / d = d q j ∣ r j − s j ∣ \frac{q_j/\lvert r_j-s_j\rvert}{1/d}=\frac{dq_j}{\lvert r_j-s_j\rvert} 1/ d q j / ∣ r j − s j ∣ = ∣ r j − s j ∣ d q j
when z z z lies between r j , s j r_j,s_j r j , s j , and zero otherwise. Once the segment is chosen, the value Z 1 = z Z_1=z Z 1 = z fixes its interpolation parameter to ( z − r j ) / ( s j − r j ) (z-r_j)/(s_j-r_j) ( z − r j ) / ( s j − r j ) , so X 1 , X 2 X_1,X_2 X 1 , X 2 are affine functions of z z z .
At an endpoint value z z z , use the conditional segment probabilities from an adjacent interval between consecutive endpoint values in [ 0 , d ] [0,d] [ 0 , d ] , then evaluate the selected segment at Z 1 = z Z_1=z Z 1 = z . The resulting point remains on that segment, so feasibility is preserved; this convention does not affect the marginals because Z 1 Z_1 Z 1 is uniform. Sampling the second coupling and making this conditional choice among at most seven first segments takes O ( 1 ) O(1) O ( 1 ) time. For the finite-bit implementation, Appendix § 8 .§ 1 also expresses this coupling as a finite mixture of uniform distributions on line segments.
Conditioning on the fourth coordinate: w < ( 1 − p ) ℓ w < (1-p)\ell w < ( 1 − p ) ℓ . Let S = u + v + w S = u + v + w S = u + v + w . With probability p p p , we will sample X 4 X_4 X 4 uniformly on [ 0 , ℓ ] [0,\ell] [ 0 , ℓ ] and make the first three coordinates uniform on intervals shortened by a common factor c c c . To make their four means sum to B B B , we need c S + ℓ = 2 B = S + p ℓ cS+\ell=2B=S+p\ell c S + ℓ = 2 B = S + p ℓ . Set
d = ( 1 − p ) ℓ S , c = 1 − d . d=\frac{(1-p)\ell}{S},\qquad c=1-d. d = S ( 1 − p ) ℓ , c = 1 − d .
Since B ≥ ℓ B\ge\ell B ≥ ℓ , we have S ≥ ( 2 − p ) ℓ > ℓ S\ge(2-p)\ell>\ell S ≥ ( 2 − p ) ℓ > ℓ and hence
c − p = ( 1 − p ) ( 1 − ℓ S ) > 0. c-p=(1-p)\left(1-\frac{\ell}{S}\right)>0. c − p = ( 1 − p ) ( 1 − S ℓ ) > 0.
In particular, 0 < d < 1 0<d<1 0 < d < 1 and p < c < 1 p<c<1 p < c < 1 . The inequality c > p c>p c > p will ensure that the other branch has nonnegative marginal densities.
In the branch where X 4 X_4 X 4 is uniform, couple four uniforms with lengths ( c u , c v , c w , ℓ ) (cu,cv,cw,\ell) ( c u , c v , c w , ℓ ) . These lengths sum to 2 B 2B 2 B , and each is at most B B B because c < 1 c<1 c < 1 and u ≤ v ≤ w ≤ B u\le v\le w\le B u ≤ v ≤ w ≤ B , ℓ ≤ B \ell\le B ℓ ≤ B . Merge the two smallest lengths, whose sum is at most half the total and hence at most B B B . Apply Lemma 4.2 with mixture probability 1 to the resulting three lengths, then split the merged coordinate proportionally, as in § 4.1.2 . This gives the required four conditional uniform marginals with sum B B B .
With probability 1 − p 1-p 1 − p , set X 4 = 0 X_4=0 X 4 = 0 . For a coordinate whose target marginal is Unif [ 0 , L ] \operatorname{Unif}[0,L] Unif [ 0 , L ] , where L ∈ { u , v , w } L\in\{u,v,w\} L ∈ { u , v , w } , write f L f_L f L for its density in this branch. Averaging over the two branches must give density 1 / L 1/L 1/ L , so
p c L 1 [ 0 , c L ] ( x ) + ( 1 − p ) f L ( x ) = 1 L , 0 < x < L . \frac{p}{cL}\mathbf{1}_{[0,cL]}(x)+(1-p)f_L(x)=\frac{1}{L},\qquad0<x<L. c L p 1 [ 0 , c L ] ( x ) + ( 1 − p ) f L ( x ) = L 1 , 0 < x < L .
Solving for f L f_L f L gives
f L ( x ) = { c − p c ( 1 − p ) L , 0 < x < c L , 1 ( 1 − p ) L , c L < x < L . f_L(x)=
\begin{cases}
\frac{c-p}{c(1-p)L}, & 0<x<cL,\\[6pt]
\frac{1}{(1-p)L}, & cL<x<L.
\end{cases} f L ( x ) = ⎩ ⎨ ⎧ c ( 1 − p ) L c − p , ( 1 − p ) L 1 , 0 < x < c L , c L < x < L .
Both values are positive because c > p c>p c > p , and their integrals over the two intervals sum to one.
To construct a coupling with these conditional marginals, we first construct one for the reflected coordinates Y = L − X Y=L-X Y = L − X . Reflection moves the larger density to ( 0 , d L ) (0,dL) ( 0 , d L ) and the smaller density to ( d L , L ) (dL,L) ( d L , L ) . This gives a mixture of uniforms on [ 0 , d L ] [0,dL] [ 0 , d L ] and [ 0 , L ] [0,L] [ 0 , L ] . Indeed, only the latter uniform contributes density on ( d L , L ) (dL,L) ( d L , L ) , so its weight must be the density there multiplied by L L L . The two weights are therefore
1 − q = c − p c ( 1 − p ) , q = p d c ( 1 − p ) = p ℓ S − ( 1 − p ) ℓ . 1-q=\frac{c-p}{c(1-p)},\qquad q=\frac{pd}{c(1-p)}=\frac{p\ell}{S-(1-p)\ell}. 1 − q = c ( 1 − p ) c − p , q = c ( 1 − p ) p d = S − ( 1 − p ) ℓ p ℓ .
They lie strictly between zero and one, and on ( 0 , d L ) (0,dL) ( 0 , d L ) the mixture has density
q d L + 1 − q L = 1 ( 1 − p ) L , \frac{q}{dL}+\frac{1-q}{L}=\frac{1}{(1-p)L}, d L q + L 1 − q = ( 1 − p ) L 1 ,
as required. Thus the reflected marginal is
Y ∼ q Unif [ 0 , d L ] + ( 1 − q ) Unif [ 0 , L ] . Y\sim q\,\operatorname{Unif}[0,dL]+(1-q)\,\operatorname{Unif}[0,L]. Y ∼ q Unif [ 0 , d L ] + ( 1 − q ) Unif [ 0 , L ] .
The original three coordinates must sum to B B B , so the reflected coordinates must sum to
M = S − B = S − p ℓ 2 . M=S-B=\frac{S-p\ell}{2}. M = S − B = 2 S − p ℓ .
The case assumption w < ( 1 − p ) ℓ w < (1-p)\ell w < ( 1 − p ) ℓ and the bound S ≥ ( 2 − p ) ℓ S \ge(2-p)\ell S ≥ ( 2 − p ) ℓ give
2 ( M − w ) = S − p ℓ − 2 w ≥ 2 ( 1 − p ) ℓ − 2 w > 0. 2(M-w) = S-p\ell-2w \ge2(1-p)\ell-2w > 0. 2 ( M − w ) = S − p ℓ − 2 w ≥ 2 ( 1 − p ) ℓ − 2 w > 0.
Thus every reflected interval endpoint is at most w < M w < M w < M .
All three reflected marginals are mixtures of uniforms, whereas Lemma 4.3 allows only one such mixture. We remove the extra mixtures by rounding their probabilities as in § 4.1.2 , while preserving the sum of their means. Write ( L 1 , L 2 , L 3 ) = ( u , v , w ) (L_1,L_2,L_3)=(u,v,w) ( L 1 , L 2 , L 3 ) = ( u , v , w ) , so the reflected coordinates are Y j = L j − X j Y_j=L_j-X_j Y j = L j − X j , and initialize r j = q c L j r_j=qcL_j r j = q c L j for each j ∈ { 1 , 2 , 3 } j\in\{1,2,3\} j ∈ { 1 , 2 , 3 } . For any 0 ≤ r j ≤ c L j 0\le r_j\le cL_j 0 ≤ r j ≤ c L j , associate the conditional marginal
r j c L j Unif [ 0 , d L j ] + ( 1 − r j c L j ) Unif [ 0 , L j ] . \frac{r_j}{cL_j}\operatorname{Unif}[0,dL_j]+\left(1-\frac{r_j}{cL_j}\right)\operatorname{Unif}[0,L_j]. c L j r j Unif [ 0 , d L j ] + ( 1 − c L j r j ) Unif [ 0 , L j ] .
Its mean is ( L j − r j ) / 2 (L_j-r_j)/2 ( L j − r j ) /2 . Initially ∑ j r j = q c S = p ℓ \sum_j r_j=qcS=p\ell ∑ j r j = q c S = p ℓ , so preserving this sum keeps the total conditional mean equal to ( S − p ℓ ) / 2 = M (S-p\ell)/2=M ( S − p ℓ ) /2 = M . Apply the pairwise updates with bounds 0 ≤ r j ≤ c L j 0\le r_j\le cL_j 0 ≤ r j ≤ c L j , preserving ∑ j r j \sum_j r_j ∑ j r j at every update and each r j r_j r j in expectation. At most two updates leave at most one r j r_j r j strictly between zero and c L j cL_j c L j . At r j = 0 r_j=0 r j = 0 the marginal is Unif [ 0 , L j ] \operatorname{Unif}[0,L_j] Unif [ 0 , L j ] , and at r j = c L j r_j=cL_j r j = c L j it is Unif [ 0 , d L j ] \operatorname{Unif}[0,dL_j] Unif [ 0 , d L j ] . Thus the resulting marginals are either three uniforms or two uniforms and one mixture on nested intervals. Their means sum to M M M and their endpoints are at most w < M w<M w < M , so Lemma 4.2 with mixture probability 1 handles the first possibility and Lemma 4.3 handles the second.
Sample this conditional coupling with sum M M M , then return X j = L j − Y j X_j=L_j-Y_j X j = L j − Y j for j ∈ { 1 , 2 , 3 } j\in\{1,2,3\} j ∈ { 1 , 2 , 3 } and X 4 = 0 X_4=0 X 4 = 0 . These coordinates are nonnegative and sum to S − M = B S-M=B S − M = B . Averaging over the rounding choices restores the reflected marginals because E [ r j / ( c L j ) ] = q \mathbb{E}[r_j/(cL_j)]=q E [ r j / ( c L j )] = q . Reflection therefore gives the densities f L j f_{L_j} f L j , and averaging the two branches restores each original uniform marginal by the defining equation for f L f_L f L . The fourth marginal is ( 1 − p ) δ 0 + p Unif [ 0 , ℓ ] (1-p)\delta_0+p\operatorname{Unif}[0,\ell] ( 1 − p ) δ 0 + p Unif [ 0 , ℓ ] by the initial branch choice. This case uses at most two rounding choices followed by a coupling sampled in O ( 1 ) O(1) O ( 1 ) time. This proves the claimed sampling cost and completes both cases.
The complete sampler and its running time
We now assemble the reduction and the three- and four-variable couplings into a sampler for any marginals satisfying (8) . The strategy description stores the budget B B B , lengths ℓ i \ell_i ℓ i , and mixture probabilities p i p_i p i , together with the following procedure for drawing an allocation.
Initialize r i = p i ℓ i r_i=p_i\ell_i r i = p i ℓ i and apply the pairwise rounding rule from § 4.1.2 until at most one r i r_i r i lies strictly between 0 and ℓ i \ell_i ℓ i .
Set aside that coordinate, if present, and group the coordinates with r i = ℓ i r_i=\ell_i r i = ℓ i as in § 4.1.2 . Each group G G G is represented by a uniform variable Y G Y_G Y G on [ 0 , ∑ j ∈ G ℓ j ] [0,\sum_{j\in G}\ell_j] [ 0 , ∑ j ∈ G ℓ j ] , with interval length at most B B B .
Couple the two or three group variables and the coordinate set aside, if present. With no coordinate set aside, two groups both have length B B B and can be sampled as ( B U , B ( 1 − U ) ) (BU,B(1-U)) ( B U , B ( 1 − U )) , where U ∼ Unif [ 0 , 1 ] U\sim\operatorname{Unif}[0,1] U ∼ Unif [ 0 , 1 ] ; for three groups, use Lemma 4.2 with p = 1 p=1 p = 1 . With a coordinate set aside, use Lemma 4.2 for two groups or Lemma 4.4 for three groups, taking p = r i / ℓ i p=r_i/\ell_i p = r i / ℓ i and interval length ℓ i \ell_i ℓ i for that coordinate.
For each group G G G , return Z i = ℓ i Y G / ∑ j ∈ G ℓ j Z_i=\ell_iY_G/\sum_{j\in G}\ell_j Z i = ℓ i Y G / ∑ j ∈ G ℓ j for every i ∈ G i\in G i ∈ G . Return the sampled value for the coordinate set aside, if present, and set coordinates with r i = 0 r_i=0 r i = 0 to zero.
The reduction ensures that step 3 always falls into one of the listed cases and that the hypotheses of the indicated lemma hold. The sampled group variables and any coordinate set aside sum to B B B , and splitting a group preserves its total allocation. Thus every output is nonnegative and spends budget B B B exactly. Conditional on the final vector r r r , coordinate i i i has distribution ( 1 − r i / ℓ i ) δ 0 + ( r i / ℓ i ) Unif [ 0 , ℓ i ] (1-r_i/\ell_i)\delta_0+(r_i/\ell_i)\operatorname{Unif}[0,\ell_i] ( 1 − r i / ℓ i ) δ 0 + ( r i / ℓ i ) Unif [ 0 , ℓ i ] . Since E [ r i / ℓ i ] = p i \mathbb{E}[r_i/\ell_i]=p_i E [ r i / ℓ i ] = p i , averaging over the rounding choices recovers each original marginal.
Storing the strategy description takes O ( n ) O(n) O ( n ) operations. For each allocation, the rounding, grouping, and splitting steps take O ( n ) O(n) O ( n ) operations, and the coupling step takes O ( 1 ) O(1) O ( 1 ) operations. Each random choice among a constant number of alternatives takes O ( 1 ) O(1) O ( 1 ) time using an independent uniform draw and comparisons with the cumulative probabilities. Hence the complete sampler takes O ( n ) O(n) O ( n ) time per allocation in the real-RAM model.
Completion of the proof of Theorem 4.1 . For player A A A , apply the sampler with p i = 1 p_i=1 p i = 1 , ℓ i = 2 v i \ell_i=2v_i ℓ i = 2 v i , and total allocation 1. For player B B B , use p i = b p_i=b p i = b , the same lengths, and total allocation b b b . These parameters can be computed in O ( n ) O(n) O ( n ) operations. The normalization ∑ i v i = 1 \sum_i v_i=1 ∑ i v i = 1 and condition (6) verify (8) for both players. Apply the construction separately to the two players. The preceding argument proves exact feasibility, the desired marginals, and the computation and sampling bounds. The payoff bounds in § 4.1.1 prove equilibrium and the stated payoffs against all deviations that respect the player’s budget.
Finite-bit implementation
The exact sampler in Theorem 4.1 uses continuous uniform draws. We now implement it with finitely many random bits and rational output, obtaining an ε \varepsilon ε -Nash equilibrium. We bound the error in each marginal CDF and apply Lemma 2.1 to bound the resulting regret.
Corollary 4.5. Under (6) , for every rational 0 < ε < 1 0<\varepsilon<1 0 < ε < 1 , two finite-bit samplers can be computed whose output distributions form an ε \varepsilon ε -Nash equilibrium. Their allocations are rational and spend the budgets exactly on every draw. With k = ⌈ log 2 ( 1 / ε ) ⌉ k=\lceil\log_2(1/\varepsilon)\rceil k = ⌈ log 2 ( 1/ ε )⌉ , computing the samplers takes O ~ ( n L ) \widetilde{O}(nL) O ( n L ) bit operations, and the worst-case cost per allocation is O ~ ( ( n + k ) ( L + k ) ) \widetilde{O}((n+k)(L+k)) O (( n + k ) ( L + k )) . Each allocation uses O ( n + k ) O(n+k) O ( n + k ) random bits. Here L L L is the total binary encoding length of the values, budget ratio, and approximation parameter.
We handle the continuous uniform draws separately from the discrete random choices in the reduction and couplings. Each allocation uses at most two continuous uniform draws: one to sample a point on a segment and, when needed, one to generate the random atom location S S S in Lemma 4.3. The implementation replaces these draws by uniformly chosen midpoints of 2 K 2^K 2 K equal subintervals of [ 0 , 1 ] [0,1] [ 0 , 1 ] , using K = O ( k ) K=O(k) K = O ( k ) random bits per draw. The coupling formulas enforce the required sum for every choice of these values, so this replacement preserves exact spending.
For the discrete choices, we impose a bound on the total number of random bits used in one allocation draw. If another bit is needed after this bound has been reached, the sampler returns a fixed allocation that spends the player’s budget exactly. The probability of using this fallback is included in the marginal CDF error. The bounds also hold when max i v i = b / 2 \max_i v_i=b/2 max i v i = b /2 and require no lower bound on b / 2 − max i v i b/2-\max_i v_i b /2 − max i v i . The error estimates and bit-complexity analysis are given in Appendix § 8 .§ 1 .
Extension to player-specific values
The same coupling construction applies when the players assign different values to a battlefield. In this subsection player A A A has values v i > 0 v_i>0 v i > 0 , player B B B has values w i > 0 w_i>0 w i > 0 , and both value vectors sum to one. The budgets remain 1 and b b b . Each player’s payoff uses their own values, and a tie awards each player half their value for that battlefield.
We use the marginal formulas of [11 ] , also used by [13 ] . For parameters γ , λ > 0 \gamma, \lambda> 0 γ , λ > 0 , define
ℓ i = min { v i , γ w i } λ , p A , i = min { 1 , v i / ( γ w i ) } , p B , i = min { 1 , γ w i / v i } , \ell_i = \frac{\min\{v_i,\gamma w_i\}}{\lambda},
\qquad
p_{A,i} = \min\{1,v_i/(\gamma w_i)\},
\qquad
p_{B,i} = \min\{1,\gamma w_i/v_i\}, ℓ i = λ min { v i , γ w i } , p A , i = min { 1 , v i / ( γ w i )} , p B , i = min { 1 , γ w i / v i } ,
X i ∼ ( 1 − p A , i ) δ 0 + p A , i Unif [ 0 , ℓ i ] , Y i ∼ ( 1 − p B , i ) δ 0 + p B , i Unif [ 0 , ℓ i ] . (9) X_i \sim(1-p_{A,i})\delta_0 + p_{A,i}\operatorname{Unif}[0,\ell_i],
\qquad
Y_i \sim(1-p_{B,i})\delta_0 + p_{B,i}\operatorname{Unif}[0,\ell_i]. \tag*{(9)} X i ∼ ( 1 − p A , i ) δ 0 + p A , i Unif [ 0 , ℓ i ] , Y i ∼ ( 1 − p B , i ) δ 0 + p B , i Unif [ 0 , ℓ i ] . (9)
To match the budgets and apply the coupling construction, we seek parameters satisfying
1 2 ∑ i p A , i ℓ i = 1 , 1 2 ∑ i p B , i ℓ i = b , max i ℓ i ≤ b . (10) \frac{1}{2}\sum_i p_{A,i}\ell_i = 1,
\qquad
\frac{1}{2}\sum_i p_{B,i}\ell_i = b,
\qquad
\max_i \ell_i \le b. \tag*{(10)} 2 1 i ∑ p A , i ℓ i = 1 , 2 1 i ∑ p B , i ℓ i = b , i max ℓ i ≤ b . (10)
The two equalities require each player’s expected total spending to equal their budget, and the inequality bounds every interval length by the smaller budget. Under these conditions, [13 Theorem 1] proves that the marginals can be coupled into a Blotto equilibrium. They also imply (8) for each player, so we can construct these couplings using § 4.1.6 .
The parameter enumeration of [13 Proposition 1] finds all pairs satisfying the two mean equations in O ( n log n ) O(n\log n) O ( n log n ) operations by sorting the ratios v i / w i v_i/w_i v i / w i and solving a polynomial of degree at most three on each interval they delimit in ( 0 , ∞ ) (0,\infty) ( 0 , ∞ ) . For this search, we augment the real-RAM model with a unit-cost operation that returns the exact real roots of a polynomial of degree at most three. Combining this enumeration with the coupling criterion max i ℓ i ≤ b \max_i\ell_i \le b max i ℓ i ≤ b of [13 Theorem 1] and our construction gives the following result.
Theorem 4.6. Given positive rational input, we can decide in O ( n log n ) O(n\log n) O ( n log n ) operations in this augmented real-RAM model whether there exists a positive pair ( γ , λ ) (\gamma,\lambda) ( γ , λ ) satisfying (10) . If such a pair exists, an exact Nash equilibrium can be computed within the same bound, with O ( n ) O(n) O ( n ) operations per allocation draw.
When such a pair exists, for every rational 0 < ε < 1 0 < \varepsilon< 1 0 < ε < 1 , finite-bit samplers of rational allocations can instead be computed in time polynomial in n n n , L L L , log ( 1 / ε ) \log(1/\varepsilon) log ( 1/ ε ) . Their worst-case sampling cost and random-bit count are polynomial in the same parameters. Their output distributions form an ε \varepsilon ε -Nash equilibrium against all continuous deviations, and every allocation satisfies the player’s budget constraint. Here L L L includes both value vectors, the budget ratio, and the approximation parameter.
Appendix § 7 .§ 2 explains how to test all candidates within the stated bound and apply the coupling construction. If no parameter pair passes the test, this rules out only parameters satisfying (10) ; the Blotto game may still have equilibria outside this family.
Even for rational input, the parameters γ \gamma γ and λ \lambda λ can be irrational. The finite-bit implementation represents these parameters exactly as algebraic numbers, approximates the random draws, and rounds each output coordinate down to a rational number. Rounding down preserves the budget constraint, although the output may no longer spend the budget exactly. The marginal CDF bounds control the resulting regret for each player using their own normalized values. Appendix § 8 .§ 2 gives the construction and its bit-complexity analysis.
A general approximation scheme
We give a fully polynomial-time approximation scheme (FPTAS) for computing an ε \varepsilon ε -Nash equilibrium for arbitrary common battlefield values and budget ratio. Unlike the construction in § 4 , this algorithm also applies when the General Lotto marginals cannot be coupled to satisfy the hard budgets.
Recall that n n n is the number of battlefields and the players’ budgets are 1 1 1 and b ∈ ( 0 , 1 ] b \in(0,1] b ∈ ( 0 , 1 ] . Let L 0 L_0 L 0 be the binary length of the game input and E E E that of ε \varepsilon ε , and let n ∗ = min { n , 1 / ε } n_* = \min\{n,1/\varepsilon\} n ∗ = min { n , 1/ ε } . In the finite-bit model, we charge O ~ ( W ) \widetilde{O}(W) O ( W ) bit operations for each exact rational arithmetic operation on operands encoded with at most W W W bits (see Appendix § 8 for details).
Theorem 5.1. For every Colonel Blotto game with common rational battlefield values and a rational budget ratio, and every rational 0 < ε < 1 0 < \varepsilon< 1 0 < ε < 1 , a deterministic algorithm computes finite descriptions of strategies forming an ε \varepsilon ε -Nash equilibrium. In the real-RAM model, the computation uses
O ~ ( n + n ∗ 2 ε 5 ) \widetilde{O}\left(n+\frac{n_*^2}{\varepsilon^5}\right) O ( n + ε 5 n ∗ 2 ) operations; in the finite-bit model, it uses
O ~ ( L 0 + E + n ∗ 3 ε 6 ) \widetilde{O}\left(L_0+E+\frac{n_*^3}{\varepsilon^6}\right) O ( L 0 + E + ε 6 n ∗ 3 ) bit operations and
O ~ ( L 0 + E + n ∗ 3 ε 4 ) \widetilde{O}\left(L_0+E+\frac{n_*^3}{\varepsilon^4}\right) O ( L 0 + E + ε 4 n ∗ 3 ) working bits.
The two strategy descriptions together use O ~ ( L 0 + E + n + n ∗ 2 / ε 3 ) \widetilde{O}(L_0+E+n+n_*^2/\varepsilon^3) O ( L 0 + E + n + n ∗ 2 / ε 3 ) bits. Sampling an allocation takes O ( n + log ( 1 / ε ) ) O(n+\log(1/\varepsilon)) O ( n + log ( 1/ ε )) real-RAM operations for every draw. If n > 1 n>1 n > 1 and b < 1 b<1 b < 1 , sampling uses O ( log ( n / ε ) ) O(\log(n/\varepsilon)) O ( log ( n / ε )) random bits and O ~ ( n ( L 0 + n ∗ / ε ) ) \widetilde{O}(n(L_0+n_*/\varepsilon)) O ( n ( L 0 + n ∗ / ε )) bit operations for every draw, including writing all n n n rational coordinates. If n > 1 n>1 n > 1 and b = 1 b=1 b = 1 , the expected number of random bits is O ( log ( n / ε ) ) O(\log(n/\varepsilon)) O ( log ( n / ε )) , and the expected cost of sampling and writing all n n n rational coordinates is O ~ ( n ( L 0 + n ∗ / ε ) ) \widetilde{O}(n(L_0+n_*/\varepsilon)) O ( n ( L 0 + n ∗ / ε )) bit operations. For n = 1 n=1 n = 1 , both players spend their full budgets, giving an exact equilibrium.
For n > 1 n>1 n > 1 and b < 1 b<1 b < 1 , each strategy in Theorem 5.1 is the uniform distribution on an implicitly represented list of O ~ ( n ∗ / ε 4 ) \widetilde{O}(n_*/\varepsilon^4) O ( n ∗ / ε 4 ) allocations whose length is a power of two. Sampling chooses a uniformly random list entry and computes its coordinates from the description without enumerating the list. The number of random bits is exactly the base-two logarithm of the list length.
Why a fine uniform grid does not suffice. A natural approach is to restrict every bid to a multiple of a small δ > 0 \delta>0 δ > 0 and compute an equilibrium of the resulting discrete Blotto game. After scaling by 1 / δ 1/\delta 1/ δ , the integer budgets are at most 1 / δ 1/\delta 1/ δ , so an exact equilibrium can be computed in time polynomial in n n n , 1 / δ 1/\delta 1/ δ , and the input bit length [4 Theorem 1] . This would give an FPTAS if choosing 1 / δ 1/\delta 1/ δ polynomial in n n n and 1 / ε 1/\varepsilon 1/ ε ensured that the returned strategies formed an ε \varepsilon ε -Nash equilibrium of the original game. The following example shows that an exact equilibrium of the restricted game can have regret bounded away from zero in the original game, even as the discretization is refined. Both budgets are exact multiples of δ \delta δ , so the failure does not come from rounding the budgets.
Proposition 5.2. Fix two battlefields of value 1 / 2 1/2 1/2 each and budgets 1 1 1 and b = 2 / 3 b=2/3 b = 2/3 . For every integer q ≥ 3 q\ge3 q ≥ 3 , the game restricted to bids in δ Z ≥ 0 \delta\mathbb{Z}_{\ge0} δ Z ≥ 0 , where δ = 1 / ( 3 q ) \delta=1/(3q) δ = 1/ ( 3 q ) , has an exact Nash equilibrium for which player A A A has zero regret and player B B B has regret at least 1 / 12 1/12 1/12 in the original game.
Proof. Measure bids in units of δ \delta δ and let both players spend their full budgets. Their actual allocations are ( δ T , δ ( 3 q − T ) ) (\delta T,\delta(3q-T)) ( δ T , δ ( 3 q − T )) and ( δ Y , δ ( 2 q − Y ) ) (\delta Y,\delta(2q-Y)) ( δ Y , δ ( 2 q − Y )) , where T T T and Y Y Y are independent and specify the players’ bids on the first battlefield in these units. Player B B B chooses Y Y Y uniformly from { 0 , q , 2 q } \{0,q,2q\} { 0 , q , 2 q } , and player A A A uses
Table 1.
All these allocations lie on the grid and satisfy the original budgets. It suffices to check deviations that spend the full budget: unused budget can be added to one coordinate without reducing payoff, and this operation preserves the grid when the initial allocation is on it.
Suppose A A A bids t ∈ [ 0 , 3 q ] t \in[0,3q] t ∈ [ 0 , 3 q ] on the first battlefield and 3 q − t 3q-t 3 q − t on the second. It wins the first battlefield when Y < t Y<t Y < t and the second when 3 q − t > 2 q − Y 3q-t>2q-Y 3 q − t > 2 q − Y , or equivalently Y > t − q Y>t-q Y > t − q . Thus A A A wins both battlefields when t − q < Y < t t-q<Y<t t − q < Y < t , giving payoff one, and exactly one battlefield when Y Y Y lies outside [ t − q , t ] [t-q,t] [ t − q , t ] , giving payoff 1 / 2 1/2 1/2 . At either endpoint it wins one battlefield and ties the other, giving payoff 3 / 4 3/4 3/4 . Starting from the baseline payoff 1 / 2 1/2 1/2 , its expected payoff is therefore
1 2 + 1 2 ( P ( t − q < Y < t ) + 1 2 P ( Y ∈ { t − q , t } ) ) . \frac{1}{2}+\frac{1}{2}\left(\mathbb{P}(t-q<Y<t)+\frac{1}{2}\mathbb{P}(Y\in\{t-q,t\})\right). 2 1 + 2 1 ( P ( t − q < Y < t ) + 2 1 P ( Y ∈ { t − q , t }) ) .
The open interval ( t − q , t ) (t-q,t) ( t − q , t ) has length q q q , so it contains at most one of B B B ’s possible bids 0 , q , 2 q 0,q,2q 0 , q , 2 q . If it contains one, neither endpoint is a possible bid of B B B , so the quantity in parentheses is 1 / 3 1/3 1/3 . Otherwise, each endpoint contributes at most 1 2 ⋅ 1 3 = 1 6 \frac{1}{2}\cdot\frac{1}{3}=\frac{1}{6} 2 1 ⋅ 3 1 = 6 1 , again giving a total of at most 1 / 3 1/3 1/3 . Thus A A A ’s expected payoff from any bid t t t is at most 1 2 + 1 2 ⋅ 1 3 = 2 3 \frac{1}{2}+\frac{1}{2}\cdot\frac{1}{3}=\frac{2}{3} 2 1 + 2 1 ⋅ 3 1 = 3 2 .
All four bids in A A A ’s distribution attain this payoff. For t = q − 1 , q + 1 , 2 q + 1 t=q-1,q+1,2q+1 t = q − 1 , q + 1 , 2 q + 1 , the open interval contains exactly one of B B B ’s possible bids: respectively 0 , q , 2 q 0,q,2q 0 , q , 2 q . For t = 2 q t=2q t = 2 q , its endpoints q q q and 2 q 2q 2 q each contribute 1 / 6 1/6 1/6 to the quantity in parentheses. Hence A A A ’s distribution gives payoff 2 / 3 2/3 2/3 , so A A A has no profitable deviation in the original game; B B B ’s payoff is 1 − 2 / 3 = 1 / 3 1-2/3=1/3 1 − 2/3 = 1/3 .
Similarly, if B B B bids y ∈ [ 0 , 2 q ] y\in[0,2q] y ∈ [ 0 , 2 q ] on the first battlefield and 2 q − y 2q-y 2 q − y on the second, it wins the first battlefield when T < y T<y T < y and the second when T > y + q T>y+q T > y + q . Its payoff is zero for y < T < y + q y<T<y+q y < T < y + q , 1 / 4 1/4 1/4 at either endpoint, and 1 / 2 1/2 1/2 outside the closed interval. Subtracting these losses from the baseline 1 / 2 1/2 1/2 gives expected payoff
1 2 − 1 2 W ( y ) , W ( y ) = P ( y < T < y + q ) + 1 2 P ( T ∈ { y , y + q } ) . \frac{1}{2}-\frac{1}{2}W(y),\qquad W(y)=\mathbb{P}(y<T<y+q)+\frac{1}{2}\mathbb{P}(T\in\{y,y+q\}). 2 1 − 2 1 W ( y ) , W ( y ) = P ( y < T < y + q ) + 2 1 P ( T ∈ { y , y + q }) .
We show that W ( k ) ≥ 1 / 3 W(k)\ge1/3 W ( k ) ≥ 1/3 for every integer 0 ≤ k ≤ 2 q 0\le k\le2q 0 ≤ k ≤ 2 q . If k ≤ q − 2 k\le q-2 k ≤ q − 2 , the interval contains the atom q − 1 q-1 q − 1 strictly; if q + 1 ≤ k ≤ 2 q − 1 q+1\le k\le2q-1 q + 1 ≤ k ≤ 2 q − 1 , it contains the atom 2 q 2q 2 q strictly. Each atom has mass 1 / 3 1/3 1/3 . For the remaining integers, the only atoms in [ k , k + q ] [k,k+q] [ k , k + q ] are
Table 2.
In each row, the interior atom has probability 1 / 6 1/6 1/6 and the endpoint atom has probability 1 / 3 1/3 1/3 . The definition of W W W counts the latter with weight 1 / 2 1/2 1/2 , so in all three cases
W ( k ) = 1 6 + 1 2 ⋅ 1 3 = 1 3 . W(k)=\frac{1}{6}+\frac{1}{2}\cdot\frac{1}{3}=\frac{1}{3}. W ( k ) = 6 1 + 2 1 ⋅ 3 1 = 3 1 .
Thus every deviation on the grid gives B B B payoff at most 1 / 3 1/3 1/3 , proving that the two strategies form an exact equilibrium of the restricted game.
In the original game, B B B can instead choose y = q − 1 / 2 y=q-1/2 y = q − 1/2 , between adjacent grid points. Its interval ( y , y + q ) (y,y+q) ( y , y + q ) contains only the atom q + 1 q+1 q + 1 , of mass 1 / 6 1/6 1/6 , and neither endpoint is an atom. It gives payoff 1 / 2 − 1 / 12 = 5 / 12 1/2-1/12=5/12 1/2 − 1/12 = 5/12 , a gain of 1 / 12 1/12 1/12 .
For the game in Proposition 5.2 , taking q = 2 s q = 2^s q = 2 s for s ≥ 2 s \ge2 s ≥ 2 gives nested discretizations with δ = 1 / ( 3 ⋅ 2 s ) \delta= 1/(3 \cdot2^s) δ = 1/ ( 3 ⋅ 2 s ) tending to zero, while B B B ’s regret in the original game remains at least 1 / 12 1/12 1/12 . Thus refining the discretization does not make the regret of an arbitrary exact equilibrium of the restricted game tend to zero in the original game. A suitable choice or modification of the equilibrium in the restricted game could still give small regret in the original game, but this is not obvious and would need a specialized construction and proof.
Algorithm overview. For the construction below assume n > 1 n > 1 n > 1 and b < 1 b < 1 b < 1 ; Appendix § 12 .§ 3 treats the remaining cases. The main step computes the two strategy distributions by multiplicative weights (§ 5.2 ). The reductions that precede it improve the dependence on the number of battlefields and on the input encoding length; afterwards, we convert the strategies for the reduced game back to strategies for the original game.
We first reduce the game to O ( n ∗ ) O(n_*) O ( n ∗ ) battlefields: when sufficiently many battlefields have small values, we replace them by O ( 1 / ε ) O(1/\varepsilon) O ( 1/ ε ) representative battlefields with equal values. The reduction also rounds the values. We also replace b b b by a nearby rational budget ratio ρ \rho ρ . The encoding lengths of the rounded values and ρ \rho ρ are bounded in terms of the number of battlefields in the reduced game and 1 / ε 1/\varepsilon 1/ ε , so the computation avoids repeated arithmetic on the potentially long original encodings. We compute strategies for this reduced game with budgets 1 1 1 and ρ \rho ρ .
For each player separately, we seek a feasible distribution that approximately minimizes the opponent’s supremum expected payoff. The infima of these two minimization problems sum to one by a minimax argument (Lemma 5.3 ). Thus the sum of the players’ regrets is at most the sum of the two optimization errors, by (3). We restrict each player to a finite set of candidate allocations that supports such a distribution. On each battlefield, the payoff from an opposing bid depends only on the candidate bids it ties or exceeds. By using bids equal to or just above candidate bids, we obtain a second finite set of feasible allocations for the opponent that contains a best response to every distribution on the candidate allocations, even among all continuous deviations of the opponent. Since these sets are too large to enumerate, we use their implicit descriptions in a multiplicative-weights procedure. For each player, it returns a list of complete feasible candidate allocations; the strategy is the uniform distribution on this list. The number of iterations depends logarithmically on the number of candidate bids, whose bound depends on the denominator of the budget ratio ρ \rho ρ . Using ρ \rho ρ therefore prevents a long encoding of b b b from increasing the number of iterations.
We next undo the changes to the input, first transferring these strategies to the original budgets 1 1 1 and b b b . A small budget change can turn ties into wins, so closeness of ρ \rho ρ to b b b alone does not control the opponent’s supremum payoff. We adjust the bid amounts in the two lists so that every allocation satisfies the original budget and each opponent’s supremum payoff increases by at most O ( ε ) O(\varepsilon) O ( ε ) . Finally, we reconstruct allocations on the original battlefields from the allocations in these lists. The reconstruction respects the budget in every draw and adds O ( ε ) O(\varepsilon) O ( ε ) to the bound on the opponent’s supremum payoff.
To sample from a player’s strategy, choose a complete allocation on the reduced battlefields uniformly from that player’s list and, independently, a string of random bits of a fixed length for its reconstruction. These two are put together to sample uniformly from an implicit list of allocations on the original battlefields. We give the main construction and correctness argument below. Appendices § 9 to § 12 supply the deferred proofs, implementation details, and full cost analysis, including the cost of writing rational output.
Reducing the battlefields and values
The construction uses the parameter e = 2 − a e = 2^{-a} e = 2 − a , where a ≥ 1 a \ge1 a ≥ 1 is an integer selected to ensure ε / 2 < e ≤ ε \varepsilon/2 < e \le\varepsilon ε /2 < e ≤ ε . Working with e e e instead of ε \varepsilon ε loses at most a factor of two and makes several parameters below, such as 8 / e 8/e 8/ e and 128 / e 128/e 128/ e , powers of two. Before computing strategies, we simplify the game in three steps, each of which changes payoffs by O ( e ) O(e) O ( e ) : we round the values, combine the battlefields with small values, and round the values of the resulting smaller game.
Both roundings use the following rule. For positive numbers α 1 , … , α r \alpha_1,\ldots,\alpha_r α 1 , … , α r summing to one and a scale M > 0 M > 0 M > 0 , let a j = ⌈ M α j ⌉ a_j = \lceil M\alpha_j\rceil a j = ⌈ M α j ⌉ and A = ∑ j a j A = \sum_j a_j A = ∑ j a j , and replace each α j \alpha_j α j by a j / A a_j/A a j / A . The new numbers are positive, sum to one, and have the common denominator A A A . Since M α j ≤ a j < M α j + 1 M\alpha_j \le a_j < M\alpha_j + 1 M α j ≤ a j < M α j + 1 , we have M ≤ A < M + r M \le A < M + r M ≤ A < M + r . To bound the change in the values, add and subtract M α j / A M\alpha_j/A M α j / A and apply the triangle inequality:
∑ j ∣ a j A − α j ∣ ≤ ∑ j ∣ a j A − M α j A ∣ + ∑ j ∣ M α j A − α j ∣ = ∑ j ( a j − M α j ) A + A − M A ∑ j α j = 2 ( A − M ) A < 2 r M . \begin{aligned}
\sum_j \left| \frac{a_j}{A} - \alpha_j \right|
\le\sum_j \left| \frac{a_j}{A} - \frac{M\alpha_j}{A} \right|
+ \sum_j \left| \frac{M\alpha_j}{A} - \alpha_j \right| \\
&= \frac{\sum_j(a_j-M\alpha_j)}{A}
+ \frac{A-M}{A}\sum_j\alpha_j \\
&= \frac{2(A-M)}{A} < \frac{2r}{M}.
\end{aligned} j ∑ A a j − α j ≤ j ∑ A a j − A M α j + j ∑ A M α j − α j = A ∑ j ( a j − M α j ) + A A − M j ∑ α j = A 2 ( A − M ) < M 2 r .
The final inequality uses A − M < r A-M < r A − M < r and A ≥ M A \ge M A ≥ M . Each player’s share of a battlefield lies in [ 0 , 1 ] [0,1] [ 0 , 1 ] , so changing the values changes the payoff of every pair of allocations by at most the ℓ 1 \ell_1 ℓ 1 distance between the old and new values. The same bound then holds for expected payoffs and for the opponent’s supremum payoff against any fixed strategy. Since several value vectors appear below, we write U w ( μ ; c ) U_w(\mu;c) U w ( μ ; c ) for the opponent’s supremum payoff, defined as in § 2 with w w w in place of the original value vector v v v .
First, round the original values with scale 256 n / e 256n/e 256 n / e . This gives integer weights w j ′ = ⌈ 256 n v j / e ⌉ ≥ 1 w'_j = \lceil256nv_j/e\rceil\ge1 w j ′ = ⌈ 256 n v j / e ⌉ ≥ 1 with sum Q ′ < 256 n / e + n Q' < 256n/e + n Q ′ < 256 n / e + n , and values v j ′ = w j ′ / Q ′ v'_j = w'_j/Q' v j ′ = w j ′ / Q ′ with ∑ j ∣ v j ′ − v j ∣ ≤ e / 128 \sum_j |v'_j-v_j| \le e/128 ∑ j ∣ v j ′ − v j ∣ ≤ e /128 .
Next, combine the battlefields with small values. Call battlefield j j j light if v j ′ ≤ e / 10 v'_j \le e/10 v j ′ ≤ e /10 . If more than k = 8 / e k = 8/e k = 8/ e battlefields are light, replace all of them by k k k representative battlefields , each with value V / k V/k V / k , where V V V is the sum of v j ′ v'_j v j ′ over the light battlefields. Battlefields that are not light remain unchanged. If at most k k k battlefields are light, no battlefields are combined. Let m m m be the number of battlefields in the resulting reduced game and v r e d v^{\mathrm{red}} v red its value vector: each battlefield kept individually retains its value v j ′ v'_j v j ′ , and each representative battlefield has value V / k V/k V / k . Since the values sum to one, fewer than 10 / e 10/e 10/ e battlefields have value greater than e / 10 e/10 e /10 , and the reduced game contains at most k k k further battlefields. Thus m < 18 / e m < 18/e m < 18/ e and m ≤ n m \le n m ≤ n , so m = O ( n ∗ ) m = O(n_*) m = O ( n ∗ ) . Moreover, m ≥ 2 m \ge2 m ≥ 2 , since either m = n m=n m = n or m ≥ k ≥ 16 m \ge k \ge16 m ≥ k ≥ 16 . § 5.4 converts allocations on the reduced battlefields back to the original battlefields at a payoff cost of at most e / 10 + e / 8 e/10+e/8 e /10 + e /8 for each player (Lemma 5.8 ); the two terms come from the threshold e / 10 e/10 e /10 and the number k = 8 / e k=8/e k = 8/ e .
Finally, round the reduced values with scale 512 m / e 512m/e 512 m / e . This gives integer weights w ^ j = ⌈ 512 m v j r e d / e ⌉ \widehat{w}_j = \lceil512mv^{\mathrm{red}}_j/e\rceil w j = ⌈ 512 m v j red / e ⌉ with sum Q v < 512 m / e + m Q_v < 512m/e + m Q v < 512 m / e + m , and values v ^ j = w ^ j / Q v \widehat{v}_j = \widehat{w}_j/Q_v v j = w j / Q v with ∑ j ∣ v ^ j − v j r e d ∣ ≤ e / 256 \sum_j |\widehat{v}_j-v^{\mathrm{red}}_j| \le e/256 ∑ j ∣ v j − v j red ∣ ≤ e /256 . § 5.2 and § 5.3 compute strategies for the reduced game with values v ^ \widehat{v} v , whose common denominator depends on m m m rather than n n n . The conversion in § 5.4 uses the individual values v j ′ v'_j v j ′ of the light battlefields and their small common denominator, which is why we do the first rounding before combining the light battlefields.
Computing the strategy distributions
In this subsection, players A A A and B B B have budgets 1 1 1 and ρ \rho ρ , where ρ ∈ ( 0 , 1 ) \rho\in(0,1) ρ ∈ ( 0 , 1 ) is the auxiliary budget ratio chosen in § 5.3 , and the battlefield values are v ^ \hat{v} v ^ . We use the notation of § 2 for this game, with m m m battlefields in place of n n n .
We compute the two players’ strategies separately. For each player, the goal is a feasible strategy that nearly minimizes the opponent’s supremum payoff. Let
C 1 = inf P U v ^ A ( P ; ρ ) and C ρ = inf P U v ^ A ( P ; 1 ) , C_1 = \inf_{P} U_{\hat{v}}^{A}(P;\rho) \qquad\text{and} \qquad C_\rho= \inf_{P} U_{\hat{v}}^{A}(P;1), C 1 = P inf U v ^ A ( P ; ρ ) and C ρ = P inf U v ^ A ( P ; 1 ) ,
where the first infimum is over distributions on X ( 1 ) \mathcal{X}(1) X ( 1 ) and the second over distributions on X ( ρ ) \mathcal{X}(\rho) X ( ρ ) . For a fixed strategy P P P of A A A , the opponent’s supremum payoff is U v ^ A ( P ; ρ ) U_{\hat{v}}^{A}(P;\rho) U v ^ A ( P ; ρ ) , so A A A ’s worst-case expected payoff is 1 − U v ^ A ( P ; ρ ) 1-U_{\hat{v}}^{A}(P;\rho) 1 − U v ^ A ( P ; ρ ) . Taking the supremum over A A A ’s choice of P P P gives 1 − C 1 1-C_1 1 − C 1 . For a fixed strategy P P P of B B B , the quantity U v ^ A ( P ; 1 ) U_{\hat{v}}^{A}(P;1) U v ^ A ( P ; 1 ) is A A A ’s supremum payoff; taking the infimum over B B B ’s choice of P P P gives C ρ C_\rho C ρ . The next lemma shows that 1 − C 1 = C ρ 1-C_1=C_\rho 1 − C 1 = C ρ .
Lemma 5.3. For m ≥ 2 m \ge2 m ≥ 2 battlefields, positive values summing to one, and budgets 1 1 1 and ρ ∈ ( 0 , 1 ) \rho\in(0,1) ρ ∈ ( 0 , 1 ) , we have C 1 + C ρ = 1 C_1+C_\rho=1 C 1 + C ρ = 1 .
An exact Nash equilibrium would imply this equality. Earlier papers state that equilibrium existence for Colonel Blotto games follows from general theorems for discontinuous games [13 Section 2.1, 5 Section 2] . However, the hypotheses of the theorems they cite can fail under our budget constraints and equal sharing of ties, as a two-battlefield example in Appendix § 9 .§ 1 shows. We therefore prove the minimax equality directly in that appendix.
To handle the payoff discontinuities at ties, we first show that, against every fixed strategy of B B B , restricting A A A to distributions whose marginals have no atoms leaves its supremum payoff unchanged. We do so by randomly perturbing A A A ’s allocations in a way that respects its budget and gives atomless marginals. Against a fixed allocation of B B B , as the perturbation shrinks, A A A wins with probability tending to 1 / 2 1/2 1/2 on each battlefield where the original bids are equal and positive, and A A A wins on each battlefield where both original bids are zero; on the other battlefields, the outcome is eventually unchanged. Thus A A A ’s limiting expected payoff is no smaller than its original payoff; averaging over B B B ’s fixed strategy preserves this conclusion. For a strategy of A A A with atomless marginals, ties have probability zero against every allocation of B B B , so A A A ’s expected payoff is continuous in B B B ’s strategy. The Kneser–Fan minimax theorem [17 Theorem 4.2′] imposes no topological condition on the maximizing player’s strategies, so it applies to these strategies of A A A and completes the proof. The same perturbation verifies the condition on A A A ’s strategies required by [7 Remark 2.10(3)] , which also gives the minimax equality; we explain this connection in Appendix § 9 .§ 1 .
The lemma reduces the computation to two separate steps. Suppose that distributions P A P_A P A on X ( 1 ) \mathcal{X}(1) X ( 1 ) and P B P_B P B on X ( ρ ) \mathcal{X}(\rho) X ( ρ ) satisfy U v ^ A ( P A ; ρ ) ≤ C 1 + δ U_{\hat{v}}^{A}(P_A;\rho) \le C_1+\delta U v ^ A ( P A ; ρ ) ≤ C 1 + δ and U v ^ A ( P B ; 1 ) ≤ C ρ + δ U_{\hat{v}}^{A}(P_B;1) \le C_\rho+\delta U v ^ A ( P B ; 1 ) ≤ C ρ + δ . Then (3) and Lemma 5.3 give
Reg A ( P A , P B ) + Reg B ( P A , P B ) = U v ^ A ( P B ; 1 ) + U v ^ A ( P A ; ρ ) − 1 ≤ 2 δ , (11) \operatorname{Reg}_{A}(P_A,P_B)+\operatorname{Reg}_{B}(P_A,P_B)=U_{\hat{v}}^{A}(P_B;1)+U_{\hat{v}}^{A}(P_A;\rho)-1\le2\delta, \tag*{(11)} Reg A ( P A , P B ) + Reg B ( P A , P B ) = U v ^ A ( P B ; 1 ) + U v ^ A ( P A ; ρ ) − 1 ≤ 2 δ , (11)
so ( P A , P B ) (P_A,P_B) ( P A , P B ) is a 2 δ 2\delta 2 δ -Nash equilibrium of this game.
For the rest of this subsection, fix one of the two players, whose strategy we compute; we refer to it as the player and to the other as the opponent . Let c ∈ { 1 , ρ } c \in\{1,\rho\} c ∈ { 1 , ρ } be its budget and c ′ c' c ′ the opponent’s budget, so that { c , c ′ } = { 1 , ρ } \{c,c'\}=\{1,\rho\} { c , c ′ } = { 1 , ρ } . We will optimize over two finite sets: a set X X X of feasible allocations for the player that supports a nearly optimal strategy, and a set Y Y Y of feasible allocations for the opponent that does as well as every feasible deviation against strategies supported on X X X . Both sets rest on the following observation.
Deviations against finitely many bids. Suppose that on each battlefield j j j , the player’s bids lie in a finite set T j ⊆ [ 0 , ∞ ) T_j \subseteq[0,\infty) T j ⊆ [ 0 , ∞ ) that contains zero; we call its elements thresholds. Each bid y j ≥ 0 y_j \ge0 y j ≥ 0 of the opponent on battlefield j j j then makes exactly one of the following choices: the closed choice at t ∈ T j t \in T_j t ∈ T j if y j = t y_j = t y j = t , or the open choice at t t t if y j ∉ T j y_j \notin T_j y j ∈ / T j and t t t is the largest threshold below y j y_j y j . Against a bid x j ∈ T j x_j \in T_j x j ∈ T j of the player, the closed choice at t t t gives the opponent a tie if x j = t x_j = t x j = t , a win if x j < t x_j < t x j < t , and a loss if x j > t x_j > t x j > t ; the open choice at t t t gives a win if x j ≤ t x_j \le t x j ≤ t and a loss if x j > t x_j > t x j > t . Thus the opponent’s share of each battlefield depends only on its choices, not on its exact bids. The next lemma tests whether a tuple of choices can be made within the budget; one feasible deviation for each tuple that passes this test suffices to maximize the opponent’s expected payoff.
Lemma 5.4. Let c ′ > 0 c' > 0 c ′ > 0 , and fix one choice on each battlefield j j j , at a threshold t j ∈ T j t_j \in T_j t j ∈ T j ; some choices may be open and others closed. There is a deviation y ∈ X ( c ′ ) y \in\mathcal{X}(c') y ∈ X ( c ′ ) making all the specified choices if and only if
∑ j t j ≤ c ′ , with strict inequality if at least one choice is open. (12) \sum_j t_j \le c', \qquad\text{with strict inequality if at least one choice is open.} \tag*{(12)} j ∑ t j ≤ c ′ , with strict inequality if at least one choice is open. (12)
Consequently, fix battlefield values w w w and a distribution P P P on allocations whose bids on each battlefield j j j lie in T j T_j T j . For each tuple of choices satisfying (12) , choose one feasible deviation that makes those choices. The largest expected payoff against P P P among these finitely many deviations is U w ( P ; c ′ ) U_w(P;c') U w ( P ; c ′ ) ; in particular, the supremum is attained.
Proof. If y ∈ X ( c ′ ) y \in\mathcal{X}(c') y ∈ X ( c ′ ) makes the choices, then t j ≤ y j t_j \le y_j t j ≤ y j for every j j j , with strict inequality at every open choice. Hence ∑ j t j ≤ ∑ j y j ≤ c ′ \sum_j t_j \le\sum_j y_j \le c' ∑ j t j ≤ ∑ j y j ≤ c ′ , and the first inequality is strict if some choice is open. Conversely, if every choice is closed and ∑ j t j ≤ c ′ \sum_j t_j \le c' ∑ j t j ≤ c ′ , the deviation ( t 1 , … , t m ) (t_1,\ldots,t_m) ( t 1 , … , t m ) makes the choices. If ∑ j t j < c ′ \sum_j t_j < c' ∑ j t j < c ′ , choose η > 0 \eta> 0 η > 0 smaller than every gap between consecutive thresholds on every battlefield and with m η < c ′ − ∑ j t j m\eta< c' - \sum_j t_j m η < c ′ − ∑ j t j . Bidding t j + η t_j+\eta t j + η at each open choice and t j t_j t j at each closed choice then makes the choices and respects the budget. To show that one feasible deviation per tuple suffices to attain U w ( P ; c ′ ) U_w(P;c') U w ( P ; c ′ ) , note that deviations making the same choices have the same payoff against every allocation whose bids lie in the sets T j T_j T j , and hence the same expected payoff against P P P . Every feasible deviation makes some tuple of choices, which satisfies (12) , and every such tuple is made by some feasible deviation. The supremum is therefore a maximum over finitely many tuples, each attained by a feasible deviation.
This lemma explains the failure in Proposition 5.2 . Measured in units of δ \delta δ , B B B ’s profitable deviation bids q − 1 / 2 q-1/2 q − 1/2 and q + 1 / 2 q+1/2 q + 1/2 , making open choices at the thresholds q − 1 q-1 q − 1 and q q q formed by A A A ’s bids on the two battlefields. The two thresholds sum to ( q − 1 ) + q = 2 q − 1 (q-1)+q=2q-1 ( q − 1 ) + q = 2 q − 1 , which is less than B B B ’s budget 2 q 2q 2 q , so these choices satisfy (12) . On the grid, however, each open choice costs at least one unit more than its threshold, so no grid deviation within the budget makes both choices.
Candidate allocations. We restrict the player’s bids to a finite set S ⊆ [ 0 , 1 ] \mathcal{S} \subseteq[0,1] S ⊆ [ 0 , 1 ] of rationals, the candidate bids , and let
X = { x ∈ S m : ∑ j x j ≤ c } X = \left\{x \in\mathcal{S}^{m} : \sum_j x_j \le c\right\} X = { x ∈ S m : j ∑ x j ≤ c }
be the set of candidate allocations . Bids in X X X must be compared exactly with both budgets, so S \mathcal{S} S depends on the denominator of ρ \rho ρ . § 5.3 chooses ρ \rho ρ with denominator at most q ˉ \bar q q ˉ , where q ˉ \bar q q ˉ depends only on m m m and e e e and satisfies log q ˉ = O ( ( m / e ) log ( m + 2 ) ) \log\bar q = O((m/e)\log(m+2)) log q ˉ = O (( m / e ) log ( m + 2 )) ; we construct S \mathcal{S} S from this bound before computing either strategy. Let z = e / 2048 z=e/2048 z = e /2048 ; the computation in this subsection loses O ( z ) O(z) O ( z ) in payoff.
Lemma 5.5. There is a finite set S ⊆ [ 0 , 1 ] ∩ Q S \subseteq[0,1] \cap\mathbb{Q} S ⊆ [ 0 , 1 ] ∩ Q containing 0 and 1 such that, for every rational ρ ∈ ( 0 , 1 ) \rho\in(0,1) ρ ∈ ( 0 , 1 ) with denominator at most q ˉ \bar{q} q ˉ , both choices of c c c , and every distribution P P P on X ( c ) \mathcal{X}(c) X ( c ) , there is a distribution P ∗ P^* P ∗ on X \mathcal{X} X with
U ν ( P ∗ ; c ′ ) ≤ U ν ( P ; c ′ ) + z / 64. U_{\nu}(P^*;c') \leq U_{\nu}(P;c') + z/64. U ν ( P ∗ ; c ′ ) ≤ U ν ( P ; c ′ ) + z /64. Every element of S S S has binary encoding length O ( Λ ) O(\Lambda) O ( Λ ) , where Λ \Lambda Λ is an integer specified in Appendix § 9 .§ 2 with Λ = O ( log q ˉ + ( m / z ) log ( m + 2 ) ) = O ~ ( m / z ) \Lambda= O(\log\bar{q} + (m/z)\log(m+2)) = \widetilde{O}(m/z) Λ = O ( log q ˉ + ( m / z ) log ( m + 2 )) = O ( m / z ) .
We sketch the proof here; Appendix § 9 .§ 3 gives the complete proof. The distributions P P P and P ∗ P^* P ∗ appear only in the analysis; the algorithm uses the set S S S , but not these distributions. The proof modifies a random allocation with distribution P P P in two steps, both of which keep every allocation feasible; P ∗ P^* P ∗ is the distribution of the resulting allocation. The first step rounds bids down so that at most K ′ = 64 / z K' = 64/z K ′ = 64/ z distinct bids remain on each battlefield; this increases the opponent’s supremum payoff by at most z / 64 z/64 z /64 . The second step replaces these bids by elements of S S S without changing the opponent’s supremum payoff.
Moving a bid by a small amount can turn a tie into a win or a loss, so the first step controls the marginal CDFs rather than distances between bids. Lemma 2.1 then bounds the change in expected payoffs by the largest change in a marginal CDF. This step rounds each bid down to a quantile of its own marginal distribution. It finds the bid’s position in this distribution on a scale from 0 to 1, rounds this position down to a multiple of 1 / K ′ 1/K' 1/ K ′ , and takes the quantile at the rounded position.
Let F j F_j F j be the CDF of P P P on battlefield j j j , and let Q j ( τ ) = inf { t ≥ 0 : F j ( t ) ≥ τ } Q_j(\tau) = \inf\{t \geq0 : F_j(t) \geq\tau\} Q j ( τ ) = inf { t ≥ 0 : F j ( t ) ≥ τ } be its quantile at τ ∈ [ 0 , 1 ] \tau\in[0,1] τ ∈ [ 0 , 1 ] . Note that Q j ( 0 ) = 0 Q_j(0) = 0 Q j ( 0 ) = 0 . Let x x x be a random allocation with distribution P P P . Given x x x , let τ 1 , … , τ m \tau_1,\ldots,\tau_m τ 1 , … , τ m be independent, with τ j \tau_j τ j uniform on [ F j ( x j − ) , F j ( x j ) ] [F_j(x_j^-),F_j(x_j)] [ F j ( x j − ) , F j ( x j )] . We call τ j \tau_j τ j the rank of x j x_j x j , since it is the position of x j x_j x j in the marginal distribution on battlefield j j j , scaled to [ 0 , 1 ] [0,1] [ 0 , 1 ] . If F j F_j F j has no atom at x j x_j x j , the rank is F j ( x j ) F_j(x_j) F j ( x j ) . Otherwise, it is a uniformly random position within the atom at x j x_j x j . Each rank is uniform on [ 0 , 1 ] [0,1] [ 0 , 1 ] . When F j F_j F j has no atoms, this is the familiar fact that F j ( x j ) F_j(x_j) F j ( x j ) is uniform.
Give the bid x j x_j x j one of the K ′ K' K ′ labels 0 , … , K ′ − 1 0,\ldots,K'-1 0 , … , K ′ − 1 , namely ℓ j = min { ⌊ K ′ τ j ⌋ , K ′ − 1 } \ell_j = \min\{\lfloor K'\tau_j\rfloor,K'-1\} ℓ j = min {⌊ K ′ τ j ⌋ , K ′ − 1 } , so that ℓ j / K ′ \ell_j/K' ℓ j / K ′ is the rank rounded down to a multiple of 1 / K ′ 1/K' 1/ K ′ unless τ j = 1 \tau_j=1 τ j = 1 . The anchor of label ℓ \ell ℓ on battlefield j j j is the quantile a j ℓ = Q j ( ℓ / K ′ ) a_{j\ell} = Q_j(\ell/K') a j ℓ = Q j ( ℓ / K ′ ) , so a j 0 = 0 a_{j0}=0 a j 0 = 0 . Replace the bid x j x_j x j by the anchor a j ℓ j a_{j\ell_j} a j ℓ j of its label, the quantile at the rounded-down rank ℓ j / K ′ \ell_j/K' ℓ j / K ′ .
Since ℓ j / K ′ ≤ τ j ≤ F j ( x j ) \ell_j/K' \leq\tau_j \leq F_j(x_j) ℓ j / K ′ ≤ τ j ≤ F j ( x j ) , the anchor a j ℓ j a_{j\ell_j} a j ℓ j is at most x j x_j x j . All coordinates are rounded down from the same allocation x x x , so every rounded allocation still spends at most c c c . Because each rank is uniform, each label has probability 1 / K ′ 1/K' 1/ K ′ on every battlefield. By the definition of Q j Q_j Q j and the right continuity of F j F_j F j , for every label ℓ \ell ℓ and every t ≥ 0 t \geq0 t ≥ 0 , the anchor a j ℓ a_{j\ell} a j ℓ is at most and exactly when ℓ / K ′ ≤ F j ( t ) \ell/K' \leq F_j(t) ℓ / K ′ ≤ F j ( t ) . Hence the CDF of the rounded bid at 0 is the fraction of labels ℓ \ell ℓ with ℓ / K ′ ≤ F j ( t ) \ell/K' \leq F_j(t) ℓ / K ′ ≤ F j ( t ) , which lies between F j ( t ) F_j(t) F j ( t ) and F j ( t ) + 1 / K ′ F_j(t)+1/K' F j ( t ) + 1/ K ′ ; for t < 0 t<0 t < 0 , both CDFs are zero. Thus every marginal CDF increases by at most 1 / K ′ 1/K' 1/ K ′ , and Lemma 2.1 shows that the opponent’s expected payoff from every deviation increases by at most 1 / K ′ = z / 64 1/K' = z/64 1/ K ′ = z /64 ; so does its supremum payoff.
The anchors depend on P P P and may be irrational or have long encodings, whereas the lemma needs one finite set S S S of candidate bids for all the ratios ρ \rho ρ and distributions P P P that it covers. The second step therefore keeps the joint distribution of the labels fixed and replaces the anchors by rationals with bounded denominators. After the first step, an allocation is specified by its tuple of labels ( ℓ 1 , … , ℓ m ) (\ell_1,\ldots,\ell_m) ( ℓ 1 , … , ℓ m ) : its bid on battlefield j j j is a j ℓ j a_{j\ell_j} a j ℓ j . We call ∑ j a j ℓ j \sum_j a_{j\ell_j} ∑ j a j ℓ j the anchor sum of the tuple.
Choose new anchors in [ 0 , 1 ] [0,1] [ 0 , 1 ] with a j 0 = 0 a_{j0}=0 a j 0 = 0 that preserve the order of the anchors on each battlefield, including equalities. The open and closed choices at a new anchor beat and tie the same labels as the corresponding choices at its old value, so their expected payoffs are unchanged. Also preserve the comparison (< < < , = = = or > > > ) of every anchor sum with each budget c c c and c ′ c' c ′ . The comparisons with c c c keep the player’s allocations feasible. By Lemma 5.4, applied with the anchors as thresholds, the comparisons with c ′ c' c ′ preserve exactly which tuples of choices the opponent can afford. The opponent’s supremum payoff is therefore unchanged.
These conditions form a finite system of linear equalities and inequalities with coefficients in { 0 , ± 1 } \{0,\pm1\} { 0 , ± 1 } and right-hand sides 0 0 0 , 1 1 1 or ρ \rho ρ . To obtain anchors with small denominators, introduce a common margin for the strict inequalities and maximize it by a linear program. A positive margin is feasible because the finitely many strict inequalities all have positive slack at the original anchors. Thus an optimal vertex satisfies all the required comparisons.
At this vertex, the anchors and the margin solve a nonsingular linear system with the stated coefficients and right-hand sides. Cramer’s rule and Hadamard’s inequality therefore bound their denominators by a number D D D depending only on m m m , z z z and q ˉ \bar q q ˉ , with log D = O ( Λ ) \log D=O(\Lambda) log D = O ( Λ ) . The set S S S contains all rationals in [ 0 , 1 ] [0,1] [ 0 , 1 ] with denominator at most D D D ; Appendix § 9 .§ 3 gives its exact definition and the remaining proof details. The new anchors therefore give a distribution P ∗ P^* P ∗ on X X X . Only the first step increased the opponent’s supremum payoff, by at most z / 64 z/64 z /64 , which proves the lemma.
Let C c C_c C c be the infimum of U v ^ ( P ; c ′ ) U_{\widehat v}(P;c') U v ( P ; c ′ ) over distributions P P P on X ( c ) \mathcal{X}(c) X ( c ) . Applying Lemma 5.5 to a distribution P P P on X ( c ) \mathcal{X}(c) X ( c ) with U v ^ ( P ; c ′ ) ≤ C c + z / 64 U_{\widehat v}(P;c')\le C_c+z/64 U v ( P ; c ′ ) ≤ C c + z /64 gives a distribution P ∗ P^* P ∗ on X X X with
U v ^ ( P ∗ ; c ′ ) ≤ C c + z / 32. (13) U_{\widehat v}(P^*;c')\le C_c+z/32. \tag*{(13)} U v ( P ∗ ; c ′ ) ≤ C c + z /32. (13)
Response allocations. To construct Y Y Y , apply Lemma 5.4 with the threshold set T j = S T_j=S T j = S on each battlefield j j j . The set S S S contains zero and all bids of candidate allocations. We use one positive rational increment Δ \Delta Δ for all tuples of choices and both possible opponent budgets, 1 1 1 and ρ \rho ρ . For each tuple satisfying (12) , with thresholds t 1 , … , t m t_1,\ldots,t_m t 1 , … , t m , include in Y Y Y the allocation that bids t j t_j t j at a closed choice on battlefield j j j and t j + Δ t_j+\Delta t j + Δ at an open choice. We call the allocations in Y Y Y response allocations .
Choose Δ \Delta Δ smaller than every gap between consecutive candidate bids. Then t j + Δ t_j+\Delta t j + Δ exceeds t j t_j t j without reaching any larger candidate bid, so it makes the open choice at t j t_j t j . For each opponent budget c ′ ∈ { 1 , ρ } c'\in\{1,\rho\} c ′ ∈ { 1 , ρ } , also require m Δ < c ′ − ∑ j t j m\Delta<c'-\sum_jt_j m Δ < c ′ − ∑ j t j whenever t 1 , … , t m ∈ S t_1,\ldots,t_m\in S t 1 , … , t m ∈ S and ∑ j t j < c ′ \sum_jt_j<c' ∑ j t j < c ′ . An affordable tuple containing an open choice has threshold sum strictly below c ′ c' c ′ . Adding Δ \Delta Δ on at most m m m battlefields therefore keeps the response allocation within the opponent’s budget. Appendix § 9 .§ 4 gives an explicit Δ \Delta Δ with O ( m Λ ) O(m\Lambda) O ( m Λ ) bits.
By Lemma 5.4 , every distribution P P P on X X X satisfies
U v ^ ( P ; c ′ ) = max y ∈ Y E x ∼ P [ ∑ j v ^ j h ( y j , x j ) ] . (14) U_{\widehat v}(P;c')=\max_{y\in Y}\mathbb{E}_{x\sim P}\left[\sum_j \widehat v_j h(y_j,x_j)\right]. \tag*{(14)} U v ( P ; c ′ ) = y ∈ Y max E x ∼ P [ j ∑ v j h ( y j , x j ) ] . (14)
We therefore seek a distribution P P P on X X X against which every response allocation y ∈ Y y\in Y y ∈ Y gives the opponent an expected payoff of at most C c + O ( z ) C_c+O(z) C c + O ( z ) . The distribution P ∗ P^* P ∗ on X X X from (11) satisfies this bound. We compare the algorithm’s output with P ∗ P^* P ∗ in the proof of Lemma 5.6.
Computing a distribution on candidate allocations. The following lemma states what the algorithm achieves. We then describe the algorithm and prove the lemma.
Lemma 5.6. For each budget c ∈ { 1 , ρ } c\in\{1,\rho\} c ∈ { 1 , ρ } , the algorithm below computes a list of T T T candidate allocations, where T = Θ ( Λ / z 2 ) T=\Theta(\Lambda/z^2) T = Θ ( Λ/ z 2 ) is a power of two specified in Appendix § 9 .§ 2 . Let P A P_A P A and P B P_B P B be the uniform distributions on the lists for c = 1 c=1 c = 1 and c = ρ c=\rho c = ρ , respectively, counting repeated allocations. Then U v ^ ( P A ; ρ ) ≤ C 1 + 3 z / 64 U_{\widehat v}(P_A;\rho)\le C_1+3z/64 U v ( P A ; ρ ) ≤ C 1 + 3 z /64 and U v ^ ( P B ; 1 ) ≤ C ρ + 3 z / 64 U_{\widehat v}(P_B;1)\le C_\rho+3z/64 U v ( P B ; 1 ) ≤ C ρ + 3 z /64 , so by Lemma 5.3 ,
U v ^ ( P A ; ρ ) + U v ^ ( P B ; 1 ) ≤ 1 + 3 z / 32. (15) U_{\widehat v}(P_A;\rho)+U_{\widehat v}(P_B;1)\le1+3z/32. \tag*{(15)} U v ( P A ; ρ ) + U v ( P B ; 1 ) ≤ 1 + 3 z /32. (15) The computation is deterministic and uses O ~ ( m Λ 2 / z 2 + m Λ / z 4 ) \widetilde O(m\Lambda^2/z^2+m\Lambda/z^4) O ( m Λ 2 / z 2 + m Λ/ z 4 ) real-RAM operations, or O ~ ( m Λ 3 / z 2 + m Λ 4 / z 4 ) \widetilde O(m\Lambda^3/z^2+m\Lambda^4/z^4) O ( m Λ 3 / z 2 + m Λ 4 / z 4 ) bit operations and O ~ ( m Λ 2 / z 2 ) \widetilde O(m\Lambda^2/z^2) O ( m Λ 2 / z 2 ) working bits.
Expected payoffs depend only on the marginal distributions on the battlefields. This suggests optimizing over marginals, as in the General Lotto game, rather than over distributions on the exponentially many candidate allocations. As recalled in § 4 , however, marginals need not be realizable by allocations that satisfy the budget in every realization.
For each side, the algorithm maintains auxiliary marginals , one distribution per battlefield, with no budget constraint linking these distributions. Each side’s penalty assigns weights to the CDF differences between its auxiliary marginals and a feasible allocation for that side, as described below. In each iteration, budget-constrained optimization selects a candidate allocation for the player and a response allocation for the opponent, each approximately minimizing the corresponding side’s current penalty. Multiplicative weights then updates the auxiliary marginals using both payoffs and penalties. It also updates the weights in these penalties using the CDF differences. The algorithm returns the uniform distribution on the player’s list of T T T candidate allocations, one selected in each iteration.
To bound the opponent’s payoff against this output, the proof also considers the uniform distribution on the opponent’s list of T T T response allocations generated by the algorithm. Both distributions are feasible by construction. Their marginals may differ from the corresponding auxiliary marginals averaged over the T T T iterations. In the regret analysis, the CDF penalties compensate for the payoff changes when the averaged auxiliary marginals are replaced by the marginals of these feasible distributions. This yields the payoff bound for the returned distribution, as the proof of Lemma 5.6 shows.
We first put the player’s and opponent’s bids on a common ordered domain. Each candidate bid, and each candidate bid plus Δ \Delta Δ , receives an integer code, so that the order of the codes is the order of the bids. For given bids on a battlefield, comparing their codes determines the winner or a tie, and hence the payoff on that battlefield. Budget feasibility still depends on the numerical bid amounts. To support efficient encoding and updates, the construction reserves separate positions for candidate bids and candidate bids plus Δ \Delta Δ , and pads the code range to obtain the full code set I = { 0 , … , 2 Λ − 1 } I = \{0,\ldots,2^\Lambda-1\} I = { 0 , … , 2 Λ − 1 } (Appendix § 9 .§ 4 ). Some of these integer positions are unused and represent no bid. The auxiliary marginals are distributions on I I I and may assign mass to unused codes, but selected allocations use only codes that represent actual bids.
We now introduce CDF notation for auxiliary marginals, fixed allocations, and distributions on allocations. Here j ∈ [ m ] j \in[m] j ∈ [ m ] is the battlefield index, and a ∈ I a \in I a ∈ I is the integer code at which we evaluate a CDF. Each CDF gives the probability of a code at most a a a on battlefield j j j . Write p = ( p j ) j ∈ [ m ] p = (p_j)_{j\in[m]} p = ( p j ) j ∈ [ m ] for a family of auxiliary distributions on I I I , and identify the bids on an allocation x ∈ X ∪ Y x \in X \cup Y x ∈ X ∪ Y with their codes. The three cases are
Table 1 (PDF p. 35).
For a fixed allocation, the bid is deterministic, so F x , j ( a ) F_{x,j}(a) F x , j ( a ) is either 0 or 1. A distribution on allocations averages these values, giving F π , j ( a ) = E x ∼ π [ F x , j ( a ) ] F_{\pi,j}(a)=\mathbb{E}_{x\sim\pi}[F_{x,j}(a)] F π , j ( a ) = E x ∼ π [ F x , j ( a )] . We write F p = ( F p , j ) j ∈ [ m ] F_p=(F_{p,j})_{j\in[m]} F p = ( F p , j ) j ∈ [ m ] for the full family of CDFs, and use F x F_x F x and F π F_\pi F π in the same way.
To relate CDF differences to payoffs, let p p p and q q q be the player’s and opponent’s auxiliary marginals and define the opponent’s payoff
f ( p , q ) = ∑ j v ^ j ∑ a , a ′ ∈ I p j ( a ) q j ( a ′ ) ( 1 { a ′ > a } + 1 2 1 { a ′ = a } ) . f(p,q)=\sum_j \widehat{v}_j\sum_{a,a'\in I}p_j(a)q_j(a')\left(\mathbf{1}\{a'>a\}+\frac{1}{2}\mathbf{1}\{a'=a\}\right). f ( p , q ) = j ∑ v j a , a ′ ∈ I ∑ p j ( a ) q j ( a ′ ) ( 1 { a ′ > a } + 2 1 1 { a ′ = a } ) .
Thus, on each battlefield j j j , f f f applies the win-and-tie rule to two independently drawn codes: the player’s code from p j p_j p j and the opponent’s code from q j q_j q j . Hence, if p p p and q q q are the marginals of distributions on X X X and Y Y Y , then f ( p , q ) f(p,q) f ( p , q ) is the opponent’s expected payoff under these distributions. We also allow allocations and distributions on allocations as arguments of f f f , evaluating f f f using their marginals. The function f f f is linear in each marginal family separately.
To measure the effect of changing marginals, define the weighted CDF distance between two marginal families p p p and p ′ p' p ′ by
d v ^ ( p , p ′ ) = ∑ j v ^ j max a ∈ I ∣ F p , j ( a ) − F p ′ , j ( a ) ∣ . d_{\hat{v}}(p,p') = \sum_j \hat{v}_j \max_{a \in I} \lvert F_{p,j}(a) - F_{p',j}(a) \rvert. d v ^ ( p , p ′ ) = j ∑ v ^ j a ∈ I max ∣ F p , j ( a ) − F p ′ , j ( a )∣ .
This distance bounds the change in the opponent’s payoff when one side’s marginals change. By (4) and the identity h ( s , t ) = 1 − h ( t , s ) h(s,t)=1-h(t,s) h ( s , t ) = 1 − h ( t , s ) , which use only the order of bids, replacing p p p by p ′ p' p ′ while keeping q q q fixed changes f ( p , q ) f(p,q) f ( p , q ) by at most d v ^ ( p , p ′ ) d_{\hat{v}}(p,p') d v ^ ( p , p ′ ) . Likewise, replacing q q q by q ′ q' q ′ while keeping p p p fixed changes f ( p , q ) f(p,q) f ( p , q ) by at most d v ^ ( q , q ′ ) d_{\hat{v}}(q,q') d v ^ ( q , q ′ ) . Using the CDFs in the table, we also write d v ^ ( p , x ) d_{\hat{v}}(p,x) d v ^ ( p , x ) or d v ^ ( p , π ) d_{\hat{v}}(p,\pi) d v ^ ( p , π ) to compare auxiliary marginals with a fixed allocation or a distribution on allocations.
We next express this CDF distance as a maximum of linear penalties. The penalty weights are represented by signed multipliers . A signed multiplier is a family λ = ( λ j ) j ∈ [ m ] \lambda=(\lambda_j)_{j\in[m]} λ = ( λ j ) j ∈ [ m ] in which each λ j \lambda_j λ j is a distribution on pairs ( s , a ) ∈ { − 1 , 1 } × I (s,a)\in\{-1,1\}\times I ( s , a ) ∈ { − 1 , 1 } × I . The code a a a specifies where the CDFs are compared, and the sign s s s allows a difference in either direction to contribute positively. A signed multiplier is paired with a family of CDFs by
λ ⋅ F p = ∑ j v ^ j ∑ s , a λ j ( s , a ) s F p , j ( a ) , \lambda\cdot F_p = \sum_j \hat{v}_j \sum_{s,a} \lambda_j(s,a)\,s\,F_{p,j}(a), λ ⋅ F p = j ∑ v ^ j s , a ∑ λ j ( s , a ) s F p , j ( a ) ,
and similarly for F x F_x F x .
For auxiliary marginals p p p and a fixed allocation x x x , the penalty λ ⋅ ( F p − F x ) \lambda\cdot(F_p-F_x) λ ⋅ ( F p − F x ) averages signed CDF differences on each battlefield and sums these averages with weights v ^ j \hat{v}_j v ^ j . With p p p and x x x fixed, each average is at most the largest absolute CDF difference on that battlefield. To attain this bound, put all the mass of λ j \lambda_j λ j on a pair ( s , a ) (s,a) ( s , a ) whose code a a a maximizes ∣ F p , j ( a ) − F x , j ( a ) ∣ \lvert F_{p,j}(a)-F_{x,j}(a)\rvert ∣ F p , j ( a ) − F x , j ( a )∣ and whose sign s s s makes the signed difference nonnegative. Maximizing independently on each battlefield therefore gives
max λ λ ⋅ ( F p − F x ) = d v ^ ( p , x ) . (16) \max_{\lambda}\lambda\cdot(F_p-F_x)=d_{\hat{v}}(p,x). \tag*{(16)} λ max λ ⋅ ( F p − F x ) = d v ^ ( p , x ) . (16)
The identity also holds with a distribution π \pi π in place of the fixed allocation x x x . Each fixed multiplier thus gives a penalty that is linear in the CDFs and that the algorithm can use to select an allocation. Since each λ j \lambda_j λ j is a distribution, the algorithm can update these penalty weights by multiplicative weights.
The algorithm maintains auxiliary marginals p t p_t p t for the player and q t q_t q t for the opponent, together with signed multipliers λ t \lambda_t λ t for the player’s penalty and μ t \mu_t μ t for the opponent’s. Each battlefield distribution starts uniform on its own domain: I I I for the auxiliary marginals, and { − 1 , 1 } × I \{-1,1\}\times I { − 1 , 1 } × I for the multipliers. Each iteration has two steps: select feasible allocations using the current multipliers, then update the four families of distributions.
The first step in iteration t = 1 , … , T t=1,\ldots,T t = 1 , … , T selects a candidate allocation x t ∈ X x_t\in X x t ∈ X for the player and a response allocation y t ∈ Y y_t\in Y y t ∈ Y for the opponent. These allocations approximately maximize λ t ⋅ F x \lambda_t\cdot F_x λ t ⋅ F x over x ∈ X x\in X x ∈ X and μ t ⋅ F y \mu_t\cdot F_y μ t ⋅ F y over y ∈ Y y\in Y y ∈ Y , respectively. The allowed additive error is specified in Lemma 5.7 . Since p t p_t p t and λ t \lambda_t λ t are fixed at this step, λ t ⋅ F p t \lambda_t\cdot F_{p_t} λ t ⋅ F p t does not depend on the choice of x x x . Hence x t x_t x t also approximately minimizes the player’s current penalty λ t ⋅ ( F p t − F x ) \lambda_t\cdot(F_{p_t}-F_x) λ t ⋅ ( F p t − F x ) over X X X , with the same additive approximation error. The opponent’s term μ t ⋅ F q t \mu_t\cdot F_{q_t} μ t ⋅ F q t is likewise independent of y y y , so y t y_t y t approximately minimizes the opponent’s current penalty μ t ⋅ ( F q t − F y ) \mu_t\cdot(F_{q_t}-F_y) μ t ⋅ ( F q t − F y ) over Y Y Y .
The second step updates the four families by multiplicative weights to obtain the families for iteration t + 1 t+1 t + 1 . All four updates use p t p_t p t , q t q_t q t , λ t \lambda_t λ t and μ t \mu_t μ t from the start of iteration t t t . The multiplier updates also use the allocations x t x_t x t and y t y_t y t selected in the first step.
The following table gives the objective of each update. In each row, the family in the first column is the variable being updated, and all quantities with subscript t t t are held fixed. Each objective is linear in the family being updated.
Table 6.
The first two rows omit the terms − λ t ⋅ F x t -\lambda_t\cdot F_{x_t} − λ t ⋅ F x t and + μ t ⋅ F y t +\mu_t\cdot F_{y_t} + μ t ⋅ F y t from the objectives for updating p p p and q q q , respectively. These terms are constant during those updates, so omitting them changes neither the updates nor the regrets defined below.
For each row of the table and each battlefield j j j , obtain the loss vector by taking the coefficients of that battlefield’s probabilities in the objective and dividing them by v ^ j \hat{v}_j v ^ j . For the three maximized objectives, negate the resulting values so that a smaller loss always corresponds to a better objective value. Multiplicative weights reweights codes for p p p and q q q , and pairs ( s , a ) (s,a) ( s , a ) for λ \lambda λ and μ \mu μ , giving greater relative weight to elements with smaller loss and then normalizing each battlefield distribution. The update of p p p favors codes that lower the opponent’s payoff plus the player’s penalty. The update of q q q favors codes that raise the opponent’s payoff minus the opponent’s penalty. The multiplier updates give more weight to pairs ( s , a ) (s,a) ( s , a ) with larger signed CDF differences. For the player, these differences compare F p t , j F_{p_t,j} F p t , j with F x t , j F_{x_t,j} F x t , j ; for the opponent, they compare F q t , j F_{q_t,j} F q t , j with F y t , j F_{y_t,j} F y t , j . After T T T iterations, the algorithm outputs the list x 1 , … , x T x_1,\ldots,x_T x 1 , … , x T of the player’s candidate allocations, representing the uniform distribution on this list.
To analyze the output, we will combine regret bounds for the four families. Here regret measures how much better a fixed family, used in every iteration, would have done in hindsight. It differs from the players’ regrets in (3) . For the family p p p , let ϕ t \phi_t ϕ t denote its objective in the table in iteration t t t . Its average regret relative to a fixed comparison family p ′ p' p ′ is
1 T ∑ t = 1 T ( ϕ t ( p t ) − ϕ t ( p ′ ) ) . \frac{1}{T}\sum_{t=1}^{T}\left(\phi_t(p_t)-\phi_t(p')\right). T 1 t = 1 ∑ T ( ϕ t ( p t ) − ϕ t ( p ′ ) ) .
Both terms use the same q t q_t q t and λ t \lambda_t λ t ; the comparison changes only the player’s auxiliary marginals. The regrets of q q q , λ \lambda λ and μ \mu μ are defined in the same way, with the difference reversed for maximized objectives.
To choose the update rate η \eta η and the number of iterations T T T , first suppose that the losses and updates are computed exactly. For each battlefield distribution in any of the four families, the standard multiplicative-weights regret bound depends logarithmically on the number of codes or pairs ( s , a ) (s,a) ( s , a ) in its domain. This number is at most 2 Λ + 1 2^{\Lambda+1} 2 Λ + 1 , and all losses have magnitude at most 2 2 2 , giving an average regret bound of
O ( Λ η T + η ) . O\left(\frac{\Lambda}{\eta T}+\eta\right). O ( η T Λ + η ) .
The regret in a family’s objective is the v ^ j \hat{v}_j v ^ j -weighted sum of its battlefield regrets, undoing the division by v ^ j \hat{v}_j v ^ j in the loss definition. Since ∑ j v ^ j = 1 \sum_j\hat{v}_j=1 ∑ j v ^ j = 1 , this weighted average satisfies the same bound. Choosing η = Θ ( z ) \eta=\Theta(z) η = Θ ( z ) and T = Θ ( Λ / z 2 ) T=\Theta(\Lambda/z^2) T = Θ ( Λ/ z 2 ) makes both terms O ( z ) O(z) O ( z ) , so each family has average regret O ( z ) O(z) O ( z ) . There are four families, so the sum of their average regrets is also O ( z ) O(z) O ( z ) .
We must implement the two steps without enumerating X X X , Y Y Y , or the full code set I I I . We need both a small sum of the four average regrets and feasible allocations that nearly maximize λ t ⋅ F x \lambda_t \cdot F_x λ t ⋅ F x and μ t ⋅ F y \mu_t \cdot F_y μ t ⋅ F y in each iteration. For the updates, the implementation approximates CDFs using summaries of the maintained distributions and evaluates the weights assigned to codes and pairs ( s , a ) (s,a) ( s , a ) only to a prescribed numerical precision. These approximations introduce additional errors, controlled in Appendix § 10 .
For either side, the objective used to select an allocation is a sum of battlefield terms, each depending only on the bid on that battlefield. Maximizing this sum subject to that side’s budget is a knapsack problem. An additive error in the objective is acceptable, so we use a dynamic program that combines bid choices across battlefields (Appendix § 10 .§ 2 ). The program groups bid choices on subsets of battlefields by rounding their total objective contributions to a finite grid, keeping the number of table entries small. The program nevertheless tests the budget exactly. For the player’s candidate allocation x t x_t x t , the program uses only candidate bids and checks that the numerical bid amounts sum to at most c c c . For the opponent’s response allocation y t y_t y t , it records the exact sum of the chosen thresholds and whether any choice is open, as (12) requires. On each battlefield, we partition I I I into intervals of consecutive codes so that the rounded objective contribution has the same value throughout each interval. From every interval containing a bid allowed for that side, the program keeps the smallest allowed bid: larger allowed bids in that interval give the same contribution and use more budget. Different intervals may have different objective contributions, and the dynamic program chooses among all the retained bids. Quantile summaries of the multiplier distributions, described in Appendix § 10 .§ 1 , keep the number of these intervals small.
For the multiplicative-weights updates, the algorithm uses summaries of all four families to approximate the losses. Each summary approximates a battlefield distribution by a small weighted list of codes, or of pairs ( s , a ) (s,a) ( s , a ) for a multiplier. The summary weights are updated in every iteration, and the lists of codes or pairs are chosen afresh periodically. For each maintained battlefield distribution, a binary tree groups consecutive elements of its domain: codes for p p p and q q q , and pairs ( s , a ) (s,a) ( s , a ) ordered by sign and then by code for λ \lambda λ and μ \mu μ . The tree stores accumulated updates and applies any change shared by all elements of an interval to that interval at once. The following lemma bounds both the four average regrets and the additive error in each allocation choice, including the effects of the summaries and the prescribed numerical precision.
Lemma 5.7. With the parameters of Appendix § 9 .§ 2 , there are numbers R , β o p t ≥ 0 R,\beta_{\mathrm{opt}} \ge0 R , β opt ≥ 0 with R + 2 β o p t < z / 64 R+2\beta_{\mathrm{opt}} < z/64 R + 2 β opt < z /64 such that the implementation in Appendix § 10 has the following properties.
For every choice of fixed comparison families for p p p , q q q , λ \lambda λ and μ \mu μ , the sum of the four average regrets is at most R R R . Here p t p_t p t , q t q_t q t , λ t \lambda_t λ t and μ t \mu_t μ t are the families maintained by the implementation, and the regrets are computed with the exact objectives in the table above.
In every iteration, x t ∈ X x_t \in X x t ∈ X , y t ∈ Y y_t \in Y y t ∈ Y , and
λ t ⋅ F x t ≥ max x ∈ X λ t ⋅ F x − β o p t , μ t ⋅ F y t ≥ max y ∈ Y μ t ⋅ F y − β o p t . \lambda_t \cdot F_{x_t} \ge\max_{x\in X} \lambda_t \cdot F_x-\beta_{\mathrm{opt}}, \qquad\mu_t \cdot F_{y_t} \ge\max_{y\in Y} \mu_t \cdot F_y-\beta_{\mathrm{opt}}. λ t ⋅ F x t ≥ x ∈ X max λ t ⋅ F x − β opt , μ t ⋅ F y t ≥ y ∈ Y max μ t ⋅ F y − β opt . For both budgets together, the implementation satisfies the computation bounds of Lemma 5.6.
Appendix § 10 .§ 4 proves the first two properties and Appendix § 12 .§ 5 the third.
Proof of Lemma 5.6. Fix a budget c ∈ { 1 , ρ } c \in\{1,\rho\} c ∈ { 1 , ρ } . Let x ˉ \bar{x} x ˉ be the algorithm’s output distribution, uniform on the player’s list of candidate allocations x 1 , … , x T x_1,\ldots,x_T x 1 , … , x T . Let y ˉ \bar{y} y ˉ be the uniform distribution on the opponent’s list of response allocations y 1 , … , y T y_1,\ldots,y_T y 1 , … , y T . Fix any distribution π \pi π on the player’s candidate allocations X X X and any distribution σ \sigma σ on the opponent’s response allocations Y Y Y . We first show that
f ( x ˉ , σ ) < f ( π , y ˉ ) + z / 64. f(\bar{x},\sigma)<f(\pi,\bar{y})+z/64. f ( x ˉ , σ ) < f ( π , y ˉ ) + z /64.
Taking π = P ∗ \pi=P^* π = P ∗ from (13) will then give the desired payoff bound, because y ˉ \bar{y} y ˉ is a feasible opponent strategy.
We use Part 1 of Lemma 5.7 to bound the sum of the four regrets. Fix signed comparison multipliers λ \lambda λ and μ \mu μ , held constant across all iterations. Using the marginals of π \pi π and σ \sigma σ and these multipliers as comparison families, the cumulative regrets for p p p , q q q , λ \lambda λ and μ \mu μ , respectively, are
∑ t [ f ( p t , q t ) + λ t ⋅ F p t − f ( π , q t ) − λ t ⋅ F π ] , \sum_t\left[f(p_t,q_t)+\lambda_t\cdot F_{p_t}-f(\pi,q_t)-\lambda_t\cdot F_\pi\right], t ∑ [ f ( p t , q t ) + λ t ⋅ F p t − f ( π , q t ) − λ t ⋅ F π ] ,
∑ t [ f ( p t , σ ) − μ t ⋅ F σ − f ( p t , q t ) + μ t ⋅ F q t ] , \sum_t\left[f(p_t,\sigma)-\mu_t\cdot F_\sigma-f(p_t,q_t)+\mu_t\cdot F_{q_t}\right], t ∑ [ f ( p t , σ ) − μ t ⋅ F σ − f ( p t , q t ) + μ t ⋅ F q t ] ,
∑ t [ λ ⋅ ( F p t − F x t ) − λ t ⋅ ( F p t − F x t ) ] , \sum_t\left[\lambda\cdot(F_{p_t}-F_{x_t})-\lambda_t\cdot(F_{p_t}-F_{x_t})\right], t ∑ [ λ ⋅ ( F p t − F x t ) − λ t ⋅ ( F p t − F x t ) ] ,
∑ t [ μ ⋅ ( F q t − F y t ) − μ t ⋅ ( F q t − F y t ) ] . \sum_t\left[\mu\cdot(F_{q_t}-F_{y_t})-\mu_t\cdot(F_{q_t}-F_{y_t})\right]. t ∑ [ μ ⋅ ( F q t − F y t ) − μ t ⋅ ( F q t − F y t ) ] .
Since Lemma 5.7 bounds the sum of the average regrets by R R R , these cumulative regrets sum to at most T R TR T R . In this sum, the terms f ( p t , q t ) f(p_t,q_t) f ( p t , q t ) cancel, as do the terms λ t ⋅ F p t \lambda_t\cdot F_{p_t} λ t ⋅ F p t and μ t ⋅ F q t \mu_t\cdot F_{q_t} μ t ⋅ F q t . The remaining terms involving the current multipliers λ t \lambda_t λ t and μ t \mu_t μ t compare the selected allocations with π \pi π and σ \sigma σ . For the player, λ t ⋅ F π \lambda_t\cdot F_\pi λ t ⋅ F π is an average of the values λ t ⋅ F x \lambda_t\cdot F_x λ t ⋅ F x over x ∈ X x\in X x ∈ X , each of which is at most λ t ⋅ F x t + β o p t \lambda_t\cdot F_{x_t}+\beta_{\mathrm{opt}} λ t ⋅ F x t + β opt by Part 2 of Lemma 5.7 . The same argument applies to σ \sigma σ on Y Y Y and the opponent’s multiplier μ t \mu_t μ t . Each of the two allocation choices therefore contributes at least − β o p t -\beta_{\mathrm{opt}} − β opt per iteration, giving
∑ t [ λ t ⋅ ( F x t − F π ) + μ t ⋅ ( F y t − F σ ) ] ≥ − 2 T β o p t . \sum_t\left[\lambda_t\cdot(F_{x_t}-F_\pi)+\mu_t\cdot(F_{y_t}-F_\sigma)\right]\ge-2T\beta_{\mathrm{opt}}. t ∑ [ λ t ⋅ ( F x t − F π ) + μ t ⋅ ( F y t − F σ ) ] ≥ − 2 T β opt .
Removing these terms from the regret sum costs at most 2 T β o p t 2T\beta_{\mathrm{opt}} 2 T β opt , so the remaining terms sum to at most T ( R + 2 β o p t ) T(R+2\beta_{\mathrm{opt}}) T ( R + 2 β opt ) .
Let p ~ \tilde{p} p ~ and q ~ \tilde{q} q ~ be the auxiliary marginals averaged over the T T T iterations, so p ~ = T − 1 ∑ t p t \tilde{p}=T^{-1}\sum_t p_t p ~ = T − 1 ∑ t p t and q ~ = T − 1 ∑ t q t \tilde{q}=T^{-1}\sum_t q_t q ~ = T − 1 ∑ t q t . The marginal CDFs of x ˉ \bar{x} x ˉ and y ˉ \bar{y} y ˉ are the averages of F x t F_{x_t} F x t and F y t F_{y_t} F y t over these same iterations. Dividing the bound on the remaining regret terms by T T T and using linearity in each marginal family gives
f ( p ~ , σ ) − f ( π , q ~ ) + λ ⋅ ( F p ~ − F x ˉ ) + μ ⋅ ( F q ~ − F y ˉ ) ≤ R + 2 β o p t < z / 64. f(\tilde{p},\sigma)-f(\pi,\tilde{q})+\lambda\cdot(F_{\tilde{p}}-F_{\bar{x}})+\mu\cdot(F_{\tilde{q}}-F_{\bar{y}})\le R+2\beta_{\mathrm{opt}}<z/64. f ( p ~ , σ ) − f ( π , q ~ ) + λ ⋅ ( F p ~ − F x ˉ ) + μ ⋅ ( F q ~ − F y ˉ ) ≤ R + 2 β opt < z /64.
The inequality holds for every fixed choice of the comparison multipliers λ \lambda λ and μ \mu μ . Maximizing over these multipliers and applying (16) replaces the two pairings by d v ( p ~ , x ˉ ) d_v(\tilde{p},\bar{x}) d v ( p ~ , x ˉ ) and d v ( q ~ , y ˉ ) d_v(\tilde{q},\bar{y}) d v ( q ~ , y ˉ ) . The CDF distances bound the changes in payoff when we replace the auxiliary marginals by the marginals of x ˉ \bar{x} x ˉ and y ˉ \bar{y} y ˉ . Thus
f ( x ˉ , σ ) − f ( π , y ˉ ) ≤ f ( p ~ , σ ) − f ( π , q ~ ) + d v ( p ~ , x ˉ ) + d v ( q ~ , y ˉ ) < z / 64. \begin{aligned}
f(\bar{x},\sigma)-f(\pi,\bar{y})\le f(\tilde{p},\sigma)-f(\pi,\tilde{q})+d_v(\tilde{p},\bar{x})+d_v(\tilde{q},\bar{y}) \\
&<z/64.
\end{aligned} f ( x ˉ , σ ) − f ( π , y ˉ ) ≤ f ( p ~ , σ ) − f ( π , q ~ ) + d v ( p ~ , x ˉ ) + d v ( q ~ , y ˉ ) < z /64.
for all π \pi π and σ \sigma σ . In particular, ( x ˉ , y ˉ ) (\bar{x},\bar{y}) ( x ˉ , y ˉ ) is a z / 64 z/64 z /64 -Nash equilibrium of the game restricted to X X X and Y Y Y , with payoff f f f to the opponent.
To obtain the payoff bound in Lemma 5.6, take π = P ∗ \pi=P^* π = P ∗ from (13) , and let σ \sigma σ be the point mass at an arbitrary response allocation y ∈ Y y\in Y y ∈ Y . Since y ˉ \bar{y} y ˉ is supported on allocations within the opponent’s budget c ′ c' c ′ , we have f ( P ∗ , y ˉ ) ≤ U v ( P ∗ ; c ′ ) ≤ C c + z / 32 f(P^*,\bar{y})\le U_v(P^*;c')\le C_c+z/32 f ( P ∗ , y ˉ ) ≤ U v ( P ∗ ; c ′ ) ≤ C c + z /32 . The comparison inequality therefore gives f ( x ˉ , y ) < C c + 3 z / 64 f(\bar{x},y)<C_c+3z/64 f ( x ˉ , y ) < C c + 3 z /64 for every y ∈ Y y\in Y y ∈ Y . By (14) , the largest payoff over Y Y Y equals the opponent’s supremum over all feasible deviations, so U v ( x ˉ ; c ′ ) < C c + 3 z / 64 U_v(\bar{x};c')<C_c+3z/64 U v ( x ˉ ; c ′ ) < C c + 3 z /64 .
Both penalties are needed here. The player’s penalty transfers the guarantee from p ~ \tilde{p} p ~ to the feasible distribution x ˉ \bar{x} x ˉ . The opponent’s penalty permits the replacement of q ~ \tilde{q} q ~ by y ˉ \bar{y} y ˉ . The feasibility of y ˉ \bar{y} y ˉ then allows the comparison with P ∗ P^* P ∗ .
The algorithm returns x ˉ \bar{x} x ˉ , which is P A P_A P A for c = 1 c=1 c = 1 and P B P_B P B for c = ρ c=\rho c = ρ . This proves the two bounds of the lemma. Part 3 of Lemma 5.7 gives the computation bounds.
Transferring the distributions to the original budgets
We now return from the auxiliary budgets 1 and ρ \rho ρ to the original budgets 1 and b b b . Lemma 5.6 gives each player a uniform distribution on a list of T T T feasible allocations for the auxiliary game. We change the bids in each player’s list while allowing only a small increase in the other player’s supremum payoff. Merely scaling B B B ’s bids by b / ρ b/\rho b / ρ need not suffice, even when ρ \rho ρ is very close to b b b . A combination of bids that the opponent could only tie may become cheap enough to beat on every battlefield. We first replace the bids by a small number of anchors on each battlefield, then adjust those anchors to control what the opponent can afford.
Replacing bids by anchors. Store each player’s list as a table with one allocation per row, retaining repeated allocations as separate rows. Let K = 128 / e K=128/e K = 128/ e ; the choice of T T T in Appendix § 9 .§ 2 makes T T T divisible by K K K . For each player and each battlefield, sort a separate copy of the T T T bids in increasing order, keeping equal bids in the order of their allocations in the original list. Split the sorted bids into K K K consecutive blocks of size T / K T/K T / K , numbered 0 , … , K − 1 0,\ldots,K-1 0 , … , K − 1 . Label each bid in the original table by its block number. Replace bids in block zero by zero, and bids in block l ≥ 1 l\ge1 l ≥ 1 by the largest bid in block l − 1 l-1 l − 1 . These replacement bids are the anchors . No bid increases, so every row remains feasible. Fix a battlefield and any bid amount t ≥ 0 t\ge0 t ≥ 0 . The marginal CDF at t t t is the fraction of the T T T bids that are at most t t t . Replacing bids by their anchors can move them from above t t t to at most t t t only in the first block containing a bid greater than t t t . Since each block contains T / K T/K T / K bids, each marginal CDF increases by at most 1 / K 1/K 1/ K , as in the first step of the proof of Lemma 5.5 . By Lemma 2.1 , the opponent’s supremum payoff increases by at most 1 / K 1/K 1/ K .
The resulting distribution is specified by a label table ( l i j ) (l_{ij}) ( l ij ) and an anchor table u = ( u j l ) u=(u_{jl}) u = ( u j l ) . Row i i i bids u j , l i j u_{j,l_{ij}} u j , l ij on battlefield j j j . The label table records which labels occur together in each allocation; it will stay fixed while we change the anchor table. Each label has probability 1 / K 1/K 1/ K on every battlefield, although several labels may have the same anchor. We retain these labels separately because the adjustment may give them different anchors.
Which player’s anchors must change. We first express the anchors as fractions of the budget for which they were computed. Player A A A ’s budget is one, so its anchor table, denoted u A u^A u A , is unchanged. For player B B B , divide every anchor by ρ \rho ρ to obtain the table u B u^B u B . For either player, the normalized bids selected by each row of its label table sum to at most one. The same table u B u^B u B specifies bids ρ u B \rho u^B ρ u B when B B B ’s budget is ρ \rho ρ , and bids b u B b u^B b u B when its budget is b b b . Thus keeping u B u^B u B fixed means keeping the fractions of B B B ’s budget fixed, not keeping its actual bids fixed.
We compare the effect of the budget change on the two strategies separately. Against A A A ’s table u A u^A u A , player B B B ’s budget changes from ρ \rho ρ to b b b . Against B B B ’s strategy, we instead measure all bids in units of B B B ’s budget. Dividing both players’ bids by ρ \rho ρ in the auxiliary game leaves B B B ’s table as u B u^B u B and gives A A A budget 1 / ρ 1/\rho 1/ ρ . In the original game, dividing both players’ bids by b b b again leaves the same table u B u^B u B , but gives A A A budget 1 / b 1/b 1/ b . Each change of units preserves comparisons of bids, including ties, and hence preserves payoffs.
Suppose ρ < b \rho<b ρ < b . Player B B B can then spend more against the fixed table u A u^A u A , so we must adjust A A A ’s anchors to control B B B ’s supremum payoff. Against the fixed table u B u^B u B , however, A A A ’s budget in these units decreases from 1 / ρ 1/\rho 1/ ρ to 1 / b 1/b 1/ b . This cannot increase A A A ’s supremum payoff, so B B B ’s normalized anchors need no adjustment. If ρ > b \rho>b ρ > b , the comparison reverses: B B B can spend less against u A u^A u A , whereas A A A ’s budget against u B u^B u B increases from 1 / ρ 1/\rho 1/ ρ to 1 / b 1/b 1/ b . We therefore adjust only B B B ’s normalized anchors in this case. If ρ = b \rho=b ρ = b , neither table needs an adjustment.
For an anchor table u u u , write U v ^ ( u ; c ) U_{\hat v}(u;c) U v ^ ( u ; c ) for the opponent’s supremum payoff with budget c c c against the uniform distribution specified by u u u and its label table. In particular, U v ^ ( u A ; ρ ) U_{\hat v}(u^A;\rho) U v ^ ( u A ; ρ ) is B B B ’s supremum payoff in the auxiliary game, and U v ^ ( u B ; 1 / ρ ) U_{\hat v}(u^B;1/\rho) U v ^ ( u B ; 1/ ρ ) is A A A ’s supremum payoff in that game. The anchor replacement increased each of these two payoffs by at most 1 / K 1/K 1/ K . Together with Lemma 5.6, this gives the bound before adjusting either table:
U v ^ ( u A ; ρ ) + U v ^ ( u B ; 1 / ρ ) ≤ 1 + 3 z / 32 + 2 / K . (17) U_{\hat v}(u^A;\rho)+U_{\hat v}(u^B;1/\rho)\le1+3z/32+2/K. \tag*{(17)} U v ^ ( u A ; ρ ) + U v ^ ( u B ; 1/ ρ ) ≤ 1 + 3 z /32 + 2/ K . (17)
Adjusting the anchors. Fix the player whose normalized anchor table u u u must be adjusted. Let β 0 < β \beta_0<\beta β 0 < β be the opponent’s old and new budgets, measured in units of that player’s budget as above. We keep the label table fixed and change only the anchor values. The goal is to limit the increase in the opponent’s supremum payoff despite its larger budget.
To compare what the opponent can achieve before and after the adjustment, choose one label l j l_j l j on each battlefield j j j . A bid above the current anchor u j l j u_{jl_j} u j l j beats every bid carrying a label from 0 0 0 through l j l_j l j . Since each label has probability 1 / K 1/K 1/ K , these wins contribute at least v ^ j ( l j + 1 ) / K \hat v_j(l_j+1)/K v ^ j ( l j + 1 ) / K to the opponent’s expected payoff. We summarize this contribution by the integer score
s j l = ⌊ S v ^ j ( l + 1 ) K ⌋ , S = pow2ceil ( 128 m / e ) . s_{jl}=\left\lfloor\frac{S\hat v_j(l+1)}{K}\right\rfloor,\qquad S=\operatorname{pow2ceil}(128m/e). s j l = ⌊ K S v ^ j ( l + 1 ) ⌋ , S = pow2ceil ( 128 m / e ) .
Here S S S is the least power of two at least 128 m / e 128m/e 128 m / e , and s j l / S s_{jl}/S s j l / S underestimates v ^ j ( l + 1 ) / K \hat v_j(l+1)/K v ^ j ( l + 1 ) / K by less than 1 / S 1/S 1/ S . The total score of the chosen labels is ∑ j s j l j \sum_j s_{jl_j} ∑ j s j l j . If their anchors sum to strictly less than β 0 \beta_0 β 0 , the opponent can bid slightly above each of them within its old budget. Let h ∗ h_* h ∗ be the largest total score among choices satisfying this strict budget test; a dynamic program computes it. Thus h ∗ / S h_*/S h ∗ / S is a lower bound on the opponent’s old supremum payoff.
We now seek new anchors u ′ u' u ′ with the following properties. The anchor of label zero stays at zero, and the anchors on each battlefield remain nondecreasing in the label. The bids selected by each row of the label table must still sum to at most one. In addition, for every choice of labels with total score greater than h ∗ h_* h ∗ , we require
∑ j u j l j ′ > β . \sum_j u'_{jl_j}>\beta. j ∑ u j l j ′ > β .
Such a choice is then unaffordable even if the opponent only tries to tie the selected anchors.
Consider any deviation with budget β \beta β against the new anchors. On each battlefield j j j , let l j l_j l j be the largest label whose anchor is at most the deviation’s bid on that battlefield. These selected anchors sum to at most β \beta β , so the constraint above forces their total score to be at most h ∗ h_* h ∗ . Counting every tied bid as a win gives an upper bound on the deviation’s expected payoff. On battlefield j j j , this counts exactly the bids with labels 0 , … , l j 0,\ldots,l_j 0 , … , l j . Allowing an error of less than 1 / S 1/S 1/ S per battlefield from rounding the scores therefore bounds the payoff by h ∗ / S + m / S h_*/S+m/S h ∗ / S + m / S . The opponent’s new supremum payoff is consequently at most its old supremum plus m / S ≤ e / 128 m/S\le e/128 m / S ≤ e /128 . Lemma E.1 formalizes this argument.
It remains to choose ρ \rho ρ so that such an adjustment is possible. To obtain the strict inequalities, we first use weak inequalities: every choice of labels with score greater than h ∗ h_* h ∗ must have anchor sum at least a common lower bound. The old anchors satisfy these inequalities when the lower bound is β 0 \beta_0 β 0 , by the definition of h ∗ h_* h ∗ . We seek feasible anchors as this lower bound increases past β \beta β , preserving the order of the anchors and the budget of every allocation.
The argument in Appendix § 11 shows that, as the opposing budget increases, these weak inequalities can lose feasibility only at certain critical budget ratios . A determinant argument using the bounded integer coefficients of the inequalities shows that every critical ratio is rational, with a denominator bound depending only on m m m and e e e . If b b b itself has a denominator within this bound, we take ρ = b \rho=b ρ = b and no adjustment is needed. When an adjustment is needed, we choose a noncritical ρ \rho ρ and a target ratio on the other side of b b b , with no critical ratio strictly between them. This allows the common lower bound to exceed β \beta β while the constraints remain feasible, giving the required strict inequalities. Because the bound is uniform over all label tables and scores, we can choose ρ \rho ρ before computing either strategy. Lemma E.2 gives this choice using only b b b , m m m and e e e . The chosen ρ \rho ρ has denominator at most q ˉ \bar q q ˉ , where
log q ˉ = O ( ( m / e ) log ( m + 2 ) ) . \log\bar q = O((m/e)\log(m+2)). log q ˉ = O (( m / e ) log ( m + 2 )) .
The lemma also gives the algorithm for computing the new anchors once the label tables are known.
Let P ~ A \widetilde P_A P A and P ~ B \widetilde P_B P B be the uniform distributions specified by the label tables and the final anchor tables, still with each player’s budget normalized to one. At most one anchor table is adjusted, and the opponent’s normalized budget against an unchanged table does not increase. Thus the transfer adds at most m / S m/S m / S to the sum of the two supremum payoffs. Hence (17) gives
U v ^ ( P ~ A ; b ) + U v ^ ( P ~ B ; 1 / b ) ≤ 1 + 3 z / 32 + 2 / K + m / S . U_{\hat v}(\widetilde P_A;b)+U_{\hat v}(\widetilde P_B;1/b)\le1+3z/32+2/K+m/S. U v ^ ( P A ; b ) + U v ^ ( P B ; 1/ b ) ≤ 1 + 3 z /32 + 2/ K + m / S .
We also undo the second value rounding: replacing v ^ \hat v v ^ by v r e d v^{\mathrm{red}} v red changes each term by at most e / 256 e/256 e /256 (§ 5.1 ). Using 2 / K = e / 64 2/K=e/64 2/ K = e /64 , m / S ≤ e / 128 m/S\le e/128 m / S ≤ e /128 and 3 z / 32 < e / 256 3z/32<e/256 3 z /32 < e /256 , we obtain
U v r e d ( P ~ A ; b ) + U v r e d ( P ~ B ; 1 / b ) − 1 < e / 16. (18) U_{v^{\mathrm{red}}}(\widetilde P_A;b)+U_{v^{\mathrm{red}}}(\widetilde P_B;1/b)-1<e/16. \tag*{(18)} U v red ( P A ; b ) + U v red ( P B ; 1/ b ) − 1 < e /16. (18)
These are the distributions used in the reconstruction below. We keep their bids normalized to one until the final sampling step, when B B B ’s bids are multiplied by b b b .
Returning allocations on the original battlefields
It remains to convert allocations on the reduced battlefields into allocations on the original battlefields. We work with a distribution P P P on reduced allocations that spend at most one, such as P ~ A \widetilde P_A P A or P ~ B \widetilde P_B P B , and multiply the resulting allocations by the player’s original budget at the end. The reconstruction uses the values v ′ v' v ′ from the first rounding in § 5.1 . Every battlefield kept individually retains its bid. If no battlefields were replaced, define L ( P ) = P L(P)=P L ( P ) = P ; no reconstruction is needed. Otherwise, the light battlefields, whose total value is V V V , were replaced by k = 8 / e k=8/e k = 8/ e representative battlefields of value V / k V/k V / k each. We must distribute the bids on these representative battlefields among the original light battlefields. Let p j = v j ′ / V p_j=v'_j/V p j = v j ′ / V for each light battlefield j j j , so that these proportions sum to one.
Consider one reduced allocation, with bids x 0 , … , x k − 1 x_0,\ldots,x_{k-1} x 0 , … , x k − 1 on the representative battlefields. Light battlefield j j j has value V p j Vp_j V p j , which is k p j kp_j k p j times the value V / k V/k V / k of a representative battlefield. A natural first attempt gives each light battlefield j j j the bid k p j x a kp_jx_a k p j x a , choosing the index a ∈ { 0 , … , k − 1 } a\in\{0,\ldots,k-1\} a ∈ { 0 , … , k − 1 } independently and uniformly for each j j j . Since ∑ j p j = 1 \sum_jp_j=1 ∑ j p j = 1 , the expected total bid on the light battlefields is ∑ j k p j ⋅ 1 k ∑ a x a = ∑ a x a \sum_jkp_j\cdot\frac{1}{k}\sum_ax_a=\sum_ax_a ∑ j k p j ⋅ k 1 ∑ a x a = ∑ a x a . Choosing these indices independently can nevertheless exceed the budget in an individual allocation. The following construction enforces the budget in every realization, at the cost of a controlled change in these marginal distributions.
We use a single random shift to coordinate the bids on all light battlefields. View [ 0 , 1 ) [0,1) [ 0 , 1 ) as a circle by identifying its endpoints. For the chosen allocation, sort a separate copy of the representative bids as x ( 0 ) ≤ ⋯ ≤ x ( k − 1 ) x_{(0)}\le\cdots\le x_{(k-1)} x ( 0 ) ≤ ⋯ ≤ x ( k − 1 ) . Place these bids, multiplied by k k k , on equal intervals of the circle:
Z ( t ) = k x ( a ) for a / k ≤ t < ( a + 1 ) / k . Z(t)=kx_{(a)}\quad\text{for }a/k\le t<(a+1)/k. Z ( t ) = k x ( a ) for a / k ≤ t < ( a + 1 ) / k .
Starting at zero, partition the circle into consecutive arcs of lengths p j p_j p j , following the original order of the light battlefields. Draw ω \omega ω uniformly from [ 0 , 1 ) [0,1) [ 0 , 1 ) , independently of the allocation, and add it to every arc endpoint modulo one. Let I j ( ω ) I_j(\omega) I j ( ω ) be the rotated arc of light battlefield j j j , and bid
X j = p j ess inf t ∈ I j ( ω ) Z ( t ) (19) X_j = p_j \operatorname{ess\,inf}_{t\in I_j(\omega)} Z(t) \tag*{(19)} X j = p j ess inf t ∈ I j ( ω ) Z ( t ) (19)
on light battlefield j j j . The essential infimum ignores arc endpoints, so it is the smallest value of Z Z Z on an interval [ a / k , ( a + 1 ) / k ) [a/k,(a+1)/k) [ a / k , ( a + 1 ) / k ) that overlaps the arc in positive length. The arcs partition the circle, and each arc’s length times the minimum of Z Z Z on that arc is at most the integral of Z Z Z over the arc. Consequently,
∑ j l i g h t X j ≤ ∑ j l i g h t ∫ I j ( ω ) Z ( t ) d t = ∫ 0 1 Z ( t ) d t = ∑ a = 0 k − 1 x a . \sum_{j\ {\rm light}} X_j \le\sum_{j\ {\rm light}} \int_{I_j(\omega)} Z(t)\,\mathrm{d}t = \int_0^1 Z(t)\,\mathrm{d}t = \sum_{a=0}^{k-1} x_a. j light ∑ X j ≤ j light ∑ ∫ I j ( ω ) Z ( t ) d t = ∫ 0 1 Z ( t ) d t = a = 0 ∑ k − 1 x a .
Thus every reconstructed allocation satisfies the budget. Write L ( P ) \mathcal{L}(P) L ( P ) for the distribution obtained by drawing an allocation from P P P , drawing ω \omega ω , and applying this construction. The next lemma bounds the increase in the opponent’s supremum payoff caused by the reconstruction.
Lemma 5.8. Suppose the reduction replaced the light battlefields by representative battlefields. For every distribution P P P on allocations of the reduced game that spend at most one and every opposing budget c ≥ 0 c\ge0 c ≥ 0 ,
U v ( L ( P ) ; c ) ≤ U v r e d ( P ; c ) + ∑ j l i g h t ( v j ′ ) 2 V + V k ≤ U v r e d ( P ; c ) + 9 e 40 . U_v(\mathcal{L}(P);c) \le U_{v_{\mathrm{red}}}(P;c) + \frac{\sum_{j\ {\rm light}}(v'_j)^2}{V} + \frac{V}{k} \le U_{v_{\mathrm{red}}}(P;c) + \frac{9e}{40}. U v ( L ( P ) ; c ) ≤ U v red ( P ; c ) + V ∑ j light ( v j ′ ) 2 + k V ≤ U v red ( P ; c ) + 40 9 e . The representative bids may be dependent and need not have identical marginal distributions.
The first error term comes from taking an arc minimum instead of choosing one representative bid uniformly. Fix a light battlefield j j j and a bid amount t ≥ 0 t\ge0 t ≥ 0 . Since Z Z Z is nondecreasing on [ 0 , 1 ) [0,1) [ 0 , 1 ) , the points where p j Z p_jZ p j Z is at most t t t form an interval starting at zero. A uniformly chosen point lies in this interval with the same probability that a uniformly chosen bid k p j x a kp_jx_a k p j x a is at most t t t . The reconstructed bid X j X_j X j is at most t t t exactly when its arc overlaps this interval in positive length. An arc of length p j p_j p j can overlap the interval even when its starting point is outside it, but this adds at most p j p_j p j to the probability. The same argument applies with strict inequalities. Thus taking the arc minimum changes each marginal CDF by at most p j p_j p j , and weighting these errors by v j ′ v'_j v j ′ gives the first term.
The second error term comes from comparing an opposing deviation on the original battlefields with deviations on the reduced battlefields. Fix an opposing allocation y y y with total bid at most c c c . Comparing y j y_j y j with k p j x a kp_jx_a k p j x a is equivalent to comparing y j / p j y_j/p_j y j / p j with k x a kx_a k x a , since dividing both bids by p j p_j p j preserves wins and ties. Define a random bid Y Y Y by choosing light battlefield j j j with probability p j p_j p j and returning y j / p j y_j/p_j y j / p j . The payoff of y y y against the bids k p j x a kp_jx_a k p j x a on the light battlefields is V V V times the expected share of Y Y Y against k x a kx_a k x a , since v j ′ = V p j v'_j=Vp_j v j ′ = V p j . Here a a a is uniform and independent of Y Y Y . The mean of Y Y Y is the total bid ∑ j l i g h t y j \sum_{j\ {\rm light}}y_j ∑ j light y j on the light battlefields.
The proof in Appendix § 12 .§ 1 constructs a uniform distribution on a list of k k k bid amounts that approximates Y Y Y , without increasing the mean and with CDF error at most 1 / k 1/k 1/ k . Divide each list entry by k k k and assign one to each representative battlefield. Every such assignment respects the opponent’s budget, keeping its bids on individually retained battlefields unchanged. Choosing uniformly among the k k k cyclic permutations makes each representative battlefield receive each list entry with probability 1 / k 1/k 1/ k , even when some entries are equal. The average payoff of these reduced deviations is within V / k V/k V / k of the payoff of y y y against the independently chosen bids k p j x a kp_jx_a k p j x a considered above. These deviations depend only on y y y , so the comparison remains valid after averaging over allocations drawn from P P P . Their average expected payoff against P P P is at most U v r e d ( P ; c ) U_{v_{\mathrm{red}}}(P;c) U v red ( P ; c ) . Finally, the first error is at most max j l i g h t v j ′ ≤ e / 10 \max_{j\ {\rm light}}v'_j\le e/10 max j light v j ′ ≤ e /10 , and V / k ≤ e / 8 V/k\le e/8 V / k ≤ e /8 , giving the bound 9 e / 40 9e/40 9 e /40 .
Finitely many shifts. To sample using finitely many random bits, we replace the continuous shift by a uniform choice from a list of S o u t = pow2ceil ( 64 / e ) S_{\mathrm{out}} = \operatorname{pow2ceil}(64/e) S out = pow2ceil ( 64/ e ) rational shifts. We choose these shifts away from positions where an arc endpoint coincides with a boundary a / k a/k a / k of one of the intervals defining Z Z Z . Recall that the first value rounding writes v j ′ = w j ′ / Q v'_j = w'_j/Q v j ′ = w j ′ / Q with positive integer weights w j ′ w'_j w j ′ . Hence p j = w j ′ / W G p_j = w'_j/W_G p j = w j ′ / W G , where W G = ∑ j l i g h t w j ′ = O ( n / e ) W_G = \sum_{j\ \mathrm{light}} w'_j = O(n/e) W G = ∑ j light w j ′ = O ( n / e ) . With D s h = k W G D_{\mathrm{sh}} = kW_G D sh = k W G , every shift at which an arc endpoint meets an endpoint of an interval [ a / k , ( a + 1 ) / k ) [a/k,(a+1)/k) [ a / k , ( a + 1 ) / k ) is a multiple of 1 / D s h 1/D_{\mathrm{sh}} 1/ D sh . Thus divide the possible shifts into cells [ r / D s h , ( r + 1 ) / D s h ) [r/D_{\mathrm{sh}},(r+1)/D_{\mathrm{sh}}) [ r / D sh , ( r + 1 ) / D sh ) , for r = 0 , … , D s h − 1 r = 0,\ldots,D_{\mathrm{sh}}-1 r = 0 , … , D sh − 1 . Within the interior of each cell, every arc overlaps the same intervals defining Z Z Z , so every reconstructed bid is constant. For 0 ≤ ℓ < S o u t 0 \le\ell< S_{\mathrm{out}} 0 ≤ ℓ < S out , let ω ℓ \omega_\ell ω ℓ be the midpoint of the cell containing the evenly spaced point ( ℓ + 1 / 2 ) / S o u t (\ell+1/2)/S_{\mathrm{out}} ( ℓ + 1/2 ) / S out . We sample the index ℓ \ell ℓ uniformly even when different indices give the same shift.
Lemma 5.9. Fix a reduced allocation and a light battlefield j j j . Replacing the uniform shift ω \omega ω by ω ℓ \omega_\ell ω ℓ for a uniformly random ℓ ∈ { 0 , … , S o u t − 1 } \ell\in\{0,\ldots,S_{\mathrm{out}}-1\} ℓ ∈ { 0 , … , S out − 1 } changes each of the probabilities P ( X j < t ) \mathbb{P}(X_j < t) P ( X j < t ) and P ( X j ≤ t ) \mathbb{P}(X_j \le t) P ( X j ≤ t ) by at most 1 / S o u t 1/S_{\mathrm{out}} 1/ S out , for every bid amount t ≥ 0 t \ge0 t ≥ 0 .
For a fixed reduced allocation, light battlefield j j j , and bid amount t t t , the shifts giving X j < t X_j < t X j < t form an interval on the circle, possibly empty or the whole circle. Under a continuous uniform shift, this event has probability equal to the interval’s length. The fraction of equally spaced points in a half-open interval differs from its length by at most 1 / S o u t 1/S_{\mathrm{out}} 1/ S out . The proof handles the interval endpoints and shows that moving the points to cell midpoints preserves this error bound, both for X j < t X_j < t X j < t and for X j ≤ t X_j \le t X j ≤ t . Appendix § 12 .§ 2 gives the proof and an O ( n + log ( 1 / e ) ) O(n+\log(1/e)) O ( n + log ( 1/ e )) -operation procedure for evaluating all bids of a sampled allocation.
To sample a player’s strategy, choose a row i ∈ [ T ] i \in[T] i ∈ [ T ] of its label table uniformly and decode its bids using the final anchors. Independently choose ℓ \ell ℓ uniformly from { 0 , … , S o u t − 1 } \{0,\ldots,S_{\mathrm{out}}-1\} { 0 , … , S out − 1 } , and reconstruct the light bids using this allocation and the shift ω ℓ \omega_\ell ω ℓ . The bids on individually retained battlefields come from the same selected row. Finally, multiply all bids by the player’s original budget: one for A A A and b b b for B B B . Since T T T and S o u t S_{\mathrm{out}} S out are powers of two, this uses exactly log 2 ( T S o u t ) \log_2(TS_{\mathrm{out}}) log 2 ( T S out ) random bits. If no battlefields were replaced, set S o u t = 1 S_{\mathrm{out}} = 1 S out = 1 and omit the shift.
Proof of Theorem 5.1 . Appendix § 12 .§ 3 treats the cases n = 1 n = 1 n = 1 and b = 1 b = 1 b = 1 , so assume n > 1 n > 1 n > 1 and b < 1 b < 1 b < 1 . The algorithm reduces the game (§ 5.1 ), selects ρ \rho ρ (Lemma E.2 ), and computes P A P_A P A and P B P_B P B (Lemma 5.6). It then replaces the bids by anchors and adjusts at most one anchor table (§ 5.3 ). It describes each player’s strategy by its label table, its final anchor table, and the data for the reconstruction with finite shifts. With the final anchors, each row of the label table specifies a reduced allocation that spends at most one. The reconstruction does not increase the total bid, and the final multiplication restores the original budget, so every sampled allocation is feasible. Let μ A \mu_A μ A and μ B \mu_B μ B be the resulting strategies on the original battlefields. Here U U U uses the original value vector v v v . By (3), each regret is at most U ( μ B ; 1 ) + U ( μ A ; b ) − 1 U(\mu_B;1)+U(\mu_A;b)-1 U ( μ B ; 1 ) + U ( μ A ; b ) − 1 , and
U ( μ B ; 1 ) + U ( μ A ; b ) − 1 ≤ e 16 ⏟ reduced game + 2 ⋅ 9 e 40 ⏟ reconstruction + 2 ⋅ e 64 ⏟ finite shifts + 2 ⋅ e 128 ⏟ original values = 179 e 320 < e . U(\mu_B;1)+U(\mu_A;b)-1 \le\underbrace{\frac{e}{16}}_{\text{reduced game}} + \underbrace{2\cdot\frac{9e}{40}}_{\text{reconstruction}} + \underbrace{2\cdot\frac{e}{64}}_{\text{finite shifts}} + \underbrace{2\cdot\frac{e}{128}}_{\text{original values}} = \frac{179e}{320} < e. U ( μ B ; 1 ) + U ( μ A ; b ) − 1 ≤ reduced game 16 e + reconstruction 2 ⋅ 40 9 e + finite shifts 2 ⋅ 64 e + original values 2 ⋅ 128 e = 320 179 e < e .
The first term is (18) . The second applies Lemma 5.8 with opposing budget c = b c=b c = b against P ~ A \widetilde{P}_A P A and c = 1 / b c=1/b c = 1/ b against P ~ B \widetilde{P}_B P B , when light battlefields were replaced. Multiplying B B B ’s bids and the bids of its opponent by b b b converts the latter comparison to the original budgets without changing payoffs. If no battlefields were replaced, both the reconstruction error and the finite-shift error are zero. When finite shifts are used, the third term follows from Lemma 5.9 and (5) , since V < 1 V < 1 V < 1 and 1 / S o u t ≤ e / 64 1/S_{\mathrm{out}} \le e/64 1/ S out ≤ e /64 . The last term replaces the values v ′ v' v ′ by the original values v v v (§ 5.1 ). The players sample independently, and each sample uses one complete row, which preserves the correlations across battlefields used in the proof. Appendices § 12 .§ 2 , § 12 .§ 5 and § 12 .§ 6 prove the bounds on computation, storage, description length, and sampling.
Conclusion
We give an FPTAS for two-player Colonel Blotto with arbitrary budgets and common battlefield values. It remains open whether an ε \varepsilon ε -Nash equilibrium can be computed in time polynomial in the input length and log ( 1 / ε ) \log(1/\varepsilon) log ( 1/ ε ) . Our finite-bit coupling algorithm achieves this in the General Lotto coupling regime. Improving the dependence on 1 / ε 1/\varepsilon 1/ ε in the FPTAS is another natural question.
For more than two players, it remains open whether an FPTAS exists, even for three players with common battlefield values. Another open question is whether an FPTAS exists for two players with arbitrary player-specific values, beyond the sufficient General Lotto coupling condition in Theorem 4.6 .
Acknowledgements
This project has received funding from the European Research Council (ERC) under the European Union’s Horizon Europe research and innovation programme (grant agreement No. 101198689). The views presented in this paper are solely the authors’ and do not necessarily represent the positions of the European Union or the European Research Council Executive Agency. Neither the EU nor the granting authority accepts responsibility for these views.
AI methodology. We used ChatGPT to help work out proof details from our sketches and ideas, optimize the FPTAS in § 5 and improve its running-time bounds, and write preliminary drafts of parts of the manuscript. We also used ChatGPT to generate the accompanying Lean implementation and formal proofs of feasibility and equilibrium guarantees, available at https://github.com/AbheekG/colonel-blotto-lean .
Omitted proofs
Proof of Lemma 2.1
Proof. Suppose d ( μ , ν ) ≤ δ d(\mu,\nu) \le\delta d ( μ , ν ) ≤ δ . On each battlefield, the marginal CDFs differ by at most δ \delta δ ; taking limits from below gives the same bound for their left limits. By (5) , changing the opponent’s marginal CDF by at most δ \delta δ changes the expected share at every fixed bid by at most δ \delta δ . Summing with weights v i v_i v i , which sum to one, and averaging over one’s own strategy proves the first assertion. For a fixed opposing bid t t t , the identity h ( s , t ) = 1 − h ( t , s ) h(s,t)=1-h(t,s) h ( s , t ) = 1 − h ( t , s ) gives the same bound when the distribution of one’s own bid s s s changes. Summing over battlefields and averaging over the opponent’s strategy therefore bounds the effect of changing one’s own strategy by its marginal CDF distance as well. Changing the two strategies in turn now gives
∣ u j ( μ A ′ , μ B ′ ) − u j ( μ A , μ B ) ∣ ≤ δ A + δ B , j ∈ { A , B } . |u_j(\mu'_A,\mu'_B)-u_j(\mu_A,\mu_B)| \le\delta_A+\delta_B,\qquad j\in\{A,B\}. ∣ u j ( μ A ′ , μ B ′ ) − u j ( μ A , μ B ) ∣ ≤ δ A + δ B , j ∈ { A , B } .
The first assertion also bounds the change in A’s supremum deviation payoff by δ B \delta_B δ B , and the change in B’s by δ A \delta_A δ A . Combining these bounds with (3) proves the claim.
Proof of Theorem 4.6: recognition and exact equilibrium
Proof. We recall the cubic equations used in the parameter enumeration of [13 Proposition 1] and explain how to test the endpoint inequality in (10) . Sort the ratios v i / w i v_i/w_i v i / w i , grouping equal ratios. The distinct ratios partition ( 0 , ∞ ) (0,\infty) ( 0 , ∞ ) into open intervals, including those below the smallest ratio and above the largest. On each interval, the sets H = { i : v i / w i > γ } H=\{i:v_i/w_i>\gamma\} H = { i : v i / w i > γ } and S = [ n ] ∖ H S=[n]\setminus H S = [ n ] ∖ H are fixed. Define
A 1 = ∑ i ∈ H w i , A 2 = ∑ i ∈ S v i 2 / w i , B 1 = ∑ i ∈ H w i 2 / v i , B 2 = ∑ i ∈ S v i . A_1=\sum_{i\in H}w_i,\qquad A_2=\sum_{i\in S}v_i^2/w_i,\qquad B_1=\sum_{i\in H}w_i^2/v_i,\qquad B_2=\sum_{i\in S}v_i. A 1 = i ∈ H ∑ w i , A 2 = i ∈ S ∑ v i 2 / w i , B 1 = i ∈ H ∑ w i 2 / v i , B 2 = i ∈ S ∑ v i .
Substituting the marginal parameters from (9) into the two mean equations gives
2 λ = γ A 1 + A 2 / γ , 2 b λ = γ 2 B 1 + B 2 . 2\lambda=\gamma A_1+A_2/\gamma,\qquad2b\lambda=\gamma^2B_1+B_2. 2 λ = γ A 1 + A 2 / γ , 2 bλ = γ 2 B 1 + B 2 .
Eliminating λ \lambda λ yields
B 1 γ 3 − b A 1 γ 2 + B 2 γ − b A 2 = 0 , λ = γ 2 B 1 + B 2 2 b . (20) B_1\gamma^3-bA_1\gamma^2+B_2\gamma-bA_2=0,\qquad\lambda=\frac{\gamma^2B_1+B_2}{2b}. \tag*{(20)} B 1 γ 3 − b A 1 γ 2 + B 2 γ − b A 2 = 0 , λ = 2 b γ 2 B 1 + B 2 . (20)
The polynomial is nonzero: if H H H is nonempty, then B 1 > 0 B_1>0 B 1 > 0 ; otherwise B 2 = ∑ i v i = 1 B_2=\sum_i v_i=1 B 2 = ∑ i v i = 1 . Check its positive roots inside the interval and test each ratio breakpoint in the mean equations as well. At a breakpoint, the formulas for the summand moving between H H H and S S S agree. Each retained γ \gamma γ determines a positive λ \lambda λ through (20) . Thus this procedure finds every positive pair satisfying the mean equations.
As we scan the sorted ratios, each battlefield moves from H H H to S S S once, so the four sums require constant work per moved battlefield. For each candidate pair, the endpoint condition max i ℓ i ≤ b \max_i \ell_i\le b max i ℓ i ≤ b becomes
max { max i ∈ S v i , γ max i ∈ H w i } ≤ b λ . \max\left\{\max_{i\in S}v_i,\ \gamma\max_{i\in H}w_i\right\}\le b\lambda. max { i ∈ S max v i , γ i ∈ H max w i } ≤ bλ .
where an empty maximum is zero. In the sorted order, S S S is a prefix and H H H a suffix. Precomputing prefix maxima of v i v_i v i and suffix maxima of w i w_i w i therefore makes each candidate test take O ( 1 ) O(1) O ( 1 ) operations. Each interval contributes at most three roots, and there are at most n n n distinct breakpoints, so there are O ( n ) O(n) O ( n ) candidates in total. Test candidates until one passes; the first positive root need not satisfy the endpoint condition. If none passes, no positive pair satisfies (10) .
This proves the O ( n log n ) O(n \log n) O ( n log n ) recognition bound in the model allowing exact roots of polynomials of degree at most three to be obtained at unit cost. Construct the marginal parameters only for a candidate that passes the test, then store them in O ( n ) O(n) O ( n ) additional work. All subsequent coupling formulas use arithmetic and comparisons only, so they also apply to these real parameters. Apply the coupling construction separately to the two players using the accepted parameters. The mean equations and ℓ i ≤ b ≤ 1 \ell_i \le b \le1 ℓ i ≤ b ≤ 1 verify (8) , so the resulting strategies μ A \mu_A μ A and μ B \mu_B μ B have the prescribed marginals and spend their budgets exactly. Since payoffs depend only on the battlefield marginals, these couplings form a Nash equilibrium by [13 Theorem 1] . The linear sampling bound follows from § 4.1.6 .
Finite-bit implementation and complexity
The finite-bit model accounts for the binary representation of both the input and the output. Let L L L be the total binary encoding length of the input, including the approximation parameter ε \varepsilon ε . To give sharper bounds, write L = L 0 + E L = L_0 + E L = L 0 + E , where L 0 L_0 L 0 is the encoding length of the game input and E E E is that of ε \varepsilon ε . Bit bounds include reading both inputs, arithmetic on their binary representations, writing the output, and generating random bits. Each finite-bit construction specifies its rational output and bounds any resulting loss in the equilibrium guarantee.
In the bit analyses, Rat ( W ) \operatorname{Rat}(W) Rat ( W ) is a nondecreasing superadditive upper bound on the cost of each exact rational arithmetic operation, comparison, integer floor, or greatest-common-divisor computation on operands of O ( W ) O(W) O ( W ) bits. For the bounds in the main text, we use arithmetic algorithms with Rat ( W ) = O ~ ( W ) \operatorname{Rat}(W) = \widetilde{O}(W) Rat ( W ) = O ( W ) . The bounds below also allow the conservative choice Rat ( W ) = O ~ ( W 2 ) \operatorname{Rat}(W) = \widetilde{O}(W^2) Rat ( W ) = O ( W 2 ) for schoolbook arithmetic.
Finite-bit implementation of the common-value sampler
To prove Corollary 4.5 , we first express the coupling for w ≥ ( 1 − p ) ℓ w \ge(1-p)\ell w ≥ ( 1 − p ) ℓ in Lemma 4.4 as a finite mixture of uniform distributions on line segments. We then approximate the continuous uniforms, bound the bits used for branch choices, and account for operand lengths. Write k = ⌈ log 2 ( 1 / ε ) ⌉ k = \lceil\log_2(1/\varepsilon) \rceil k = ⌈ log 2 ( 1/ ε )⌉ . Reading the rational approximation parameter and determining k k k take O ( E ) O(E) O ( E ) bit operations: compare its numerator and denominator after a binary shift determined by their bit lengths.
Combining the segment couplings. Consider the case w ≥ ( 1 − p ) ℓ w \ge(1-p)\ell w ≥ ( 1 − p ) ℓ of Lemma 4.4 . The first coupling has coordinates ( X 1 , X 2 , Z 1 ) (X_1, X_2, Z_1) ( X 1 , X 2 , Z 1 ) and the second has coordinates ( Z 2 , X 3 , X 4 ) (Z_2, X_3, X_4) ( Z 2 , X 3 , X 4 ) , with Z 1 = d − Z 2 Z_1 = d - Z_2 Z 1 = d − Z 2 . Both auxiliary variables Z 1 , Z 2 Z_1, Z_2 Z 1 , Z 2 are uniform on [ 0 , d ] [0,d] [ 0 , d ] . Recall that segment j j j of the first coupling has weight q j q_j q j and Z 1 Z_1 Z 1 endpoint values r j , s j r_j, s_j r j , s j . Given Z 1 = z Z_1 = z Z 1 = z away from all endpoint values, the conditional sampler chooses segment j j j with probability d q j / ∣ r j − s j ∣ d q_j/|r_j-s_j| d q j /∣ r j − s j ∣ when z z z lies between r j , s j r_j,s_j r j , s j , and zero otherwise. Once that segment is chosen, X 1 , X 2 X_1, X_2 X 1 , X 2 are affine functions of z z z . We now combine this rule with the second coupling so that the midpoint estimate below applies to all four coordinates.
Fix a segment of the second coupling, with weight β \beta β , and let t ∈ [ 0 , 1 ] t \in[0,1] t ∈ [ 0 , 1 ] be its interpolation parameter. Sampling uniformly on this segment means choosing t t t uniformly on [ 0 , 1 ] [0,1] [ 0 , 1 ] . Along the segment, Z 2 , X 3 , X 4 Z_2, X_3, X_4 Z 2 , X 3 , X 4 are affine functions of t t t . The Z 2 Z_2 Z 2 coordinate is nonconstant on every segment of positive weight, since otherwise its uniform marginal would have an atom. As t t t varies, set z = d − Z 2 z = d - Z_2 z = d − Z 2 and subdivide [ 0 , 1 ] [0,1] [ 0 , 1 ] wherever z z z crosses a value r j r_j r j or s j s_j s j . On the interior of each resulting subinterval, the same segments of the first coupling contain a point with Z 1 = z Z_1 = z Z 1 = z , and their conditional probabilities are constant.
Consider one such subinterval [ t 0 , t 1 ] [t_0,t_1] [ t 0 , t 1 ] and an eligible segment j j j of the first coupling. The resulting four coordinates are affine functions of t t t : X 3 , X 4 X_3, X_4 X 3 , X 4 come from the fixed second segment, and X 1 , X 2 X_1, X_2 X 1 , X 2 are affine functions of z = d − Z 2 z = d - Z_2 z = d − Z 2 on segment j j j . They therefore trace a line segment as t t t runs from t 0 t_0 t 0 to t 1 t_1 t 1 . The probability of choosing the second segment and landing in this subinterval is β ( t 1 − t 0 ) \beta(t_1-t_0) β ( t 1 − t 0 ) . Multiplying by the conditional probability of choosing segment j j j gives the combined segment weight
β ( t 1 − t 0 ) d q j ∣ r j − s j ∣ , \beta(t_1-t_0)\frac{dq_j}{\lvert r_j-s_j\rvert}, β ( t 1 − t 0 ) ∣ r j − s j ∣ d q j ,
and its endpoints are obtained by evaluating the four output coordinates at t 0 t_0 t 0 and t 1 t_1 t 1 . Summing these weights over the eligible first segments gives β ( t 1 − t 0 ) \beta(t_1-t_0) β ( t 1 − t 0 ) ; summing over all subintervals and second segments then gives one. The corresponding points in both original segments remain feasible at t 0 t_0 t 0 and t 1 t_1 t 1 , so the combined endpoints are feasible as well. These finitely many subdivision endpoints have probability zero and do not affect the marginal distributions.
We sample the resulting mixture by choosing a segment with its weight and sampling a point uniformly on it. Each coupling has at most seven segments, so there are at most fourteen endpoint values r j , s j r_j,s_j r j , s j . Each segment of the second coupling is therefore divided into at most fifteen intervals, giving at most 7 ⋅ 15 ⋅ 7 = 735 7\cdot15\cdot7=735 7 ⋅ 15 ⋅ 7 = 735 combined segments. Their weights and endpoints use a constant number of rational operations on the parameters.
Approximating the continuous uniforms. An N N N -point midpoint uniform chooses each value ( j + 1 / 2 ) / N (j+1/2)/N ( j + 1/2 ) / N , 0 ≤ j < N 0\le j<N 0 ≤ j < N , with probability 1 / N 1/N 1/ N . For N = 2 K N=2^K N = 2 K , this needs exactly K K K random bits. Replacing a scalar uniform on a line segment by this midpoint uniform changes the CDF of each nonconstant affine coordinate by at most 1 / ( 2 N ) 1/(2N) 1/ ( 2 N ) . Constant coordinates and the sum remain exact. The estimate survives finite mixtures, proportional splitting, and reflection; for reflection, apply the same CDF estimate to left limits. It therefore covers the three-variable segment tables and the four-variable segment mixture just constructed.
The only additional estimate concerns the first case of Lemma 4.3, whose segment probabilities depend on the sampled location S ∈ [ 0 , t ] S\in[0,t] S ∈ [ 0 , t ] . Recall that the target third marginal is q Unif [ 0 , t ] + ( 1 − q ) Unif [ 0 , c ] q\operatorname{Unif}[0,t]+(1-q)\operatorname{Unif}[0,c] q Unif [ 0 , t ] + ( 1 − q ) Unif [ 0 , c ] and that h = q ( c − t ) > 0 h=q(c-t)>0 h = q ( c − t ) > 0 . This case uses one uniform draw to generate S S S and a second to sample a point on the selected segment. The randomness used to choose the segment is handled separately below. Conditional on S = s S=s S = s , the third coordinate has distribution ( 1 − p s ) δ s + p s Unif [ s , c ] (1-p_s)\delta_s+p_s\operatorname{Unif}[s,c] ( 1 − p s ) δ s + p s Unif [ s , c ] , where p s = ( c − h − 2 s ) / ( c − s ) p_s=(c-h-2s)/(c-s) p s = ( c − h − 2 s ) / ( c − s ) . For a fixed threshold z < c z<c z < c , its conditional CDF K s ( z ) K_s(z) K s ( z ) is zero for s > z s>z s > z , and for s ≤ z s\le z s ≤ z it is
K s ( z ) = ( 1 − p s ) + p s z − s c − s = 1 − ( c − h − 2 s ) ( c − z ) ( c − s ) 2 . K_s(z)=(1-p_s)+p_s\frac{z-s}{c-s}=1-\frac{(c-h-2s)(c-z)}{(c-s)^2}. K s ( z ) = ( 1 − p s ) + p s c − s z − s = 1 − ( c − s ) 2 ( c − h − 2 s ) ( c − z ) .
As a function of s s s on s ≤ z s\le z s ≤ z , its derivative is 2 ( h + s ) ( c − z ) / ( c − s ) 3 ≥ 0 2(h+s)(c-z)/(c-s)^3\ge0 2 ( h + s ) ( c − z ) / ( c − s ) 3 ≥ 0 ; after s s s passes z z z , it is zero. Thus it has at most one increasing part and one downward jump, giving total variation at most two because its values lie in [ 0 , 1 ] [0,1] [ 0 , 1 ] . Composition with the increasing inverse CDF for S S S preserves this bound. For a function of total variation V V V on [ 0 , 1 ] [0,1] [ 0 , 1 ] , the midpoint rule has error at most V / ( 2 N ) V/(2N) V / ( 2 N ) : decompose it into the difference of two monotone functions and use midpoint discrepancy 1 / ( 2 N ) 1/(2N) 1/ ( 2 N ) for each. Thus replacing the uniform used to generate S S S contributes CDF error at most 1 / N 1/N 1/ N . The first two conditional marginals are unchanged for every S S S , so they have no error from this replacement. Replacing the uniform draw along the selected segment adds at most 1 / ( 2 N ) 1/(2N) 1/ ( 2 N ) in each coordinate.
Every remaining case is a mixture, translation, reflection, or proportional split of these constructions. Consequently, replacing the at most two scalar uniforms in the coupling formulas by K K K -bit midpoint uniforms, while retaining the exact branch probabilities, gives marginal CDF error at most
ν = 3 2 ⋅ 2 K . (21) \nu=\frac{3}{2\cdot2^K}. \tag*{(21)} ν = 2 ⋅ 2 K 3 . (21)
This bound is uniform over all parameters and all outcomes of the probability rounding; it contains no reciprocal length or slack. All sampled allocations still have the required exact sum.
A bounded number of bits for branch choices. For rational success probability p p p , simulate a Bernoulli choice by generating independent random bits and comparing them with the binary expansion of p p p until the first difference. Return one if the random bit at that position is smaller, and zero if it is larger. For dyadic p p p , if the sampled prefix matches its terminating binary expansion, return the Bernoulli outcome zero immediately: every extension of that prefix is at least p p p . Probabilities zero and one require no bits. Each generated bit matches the corresponding digit with probability 1 / 2 1/2 1/2 , unless the procedure has already stopped. Conditionally on all earlier random choices, the bit count Z Z Z is therefore dominated by a geometric random variable of parameter 1 / 2 1/2 1/2 on { 1 , 2 , … } \{1,2,\ldots\} { 1 , 2 , … } , so
E [ ( 4 / 3 ) Z ∣ past ] ≤ 2. \mathbb{E}[(4/3)^Z \mid\text{past}] \le2. E [( 4/3 ) Z ∣ past ] ≤ 2.
Finite segment mixtures may be sampled by successive conditional Bernoulli choices, discarding zero weights. The reduction has at most n − 1 n-1 n − 1 outer choices, followed by a constant number of choices within the three- or four-variable coupling; the formulas above permit the conservative bound C ∗ = n + 1000 C_* = n + 1000 C ∗ = n + 1000 on their total. Pad the sequence to C ∗ C_* C ∗ choices using choices that need no random bits. Iterating the conditional moment bound and applying Markov’s inequality yields
P [ total branch bits > R ] ≤ 2 C ∗ ( 3 / 4 ) R . \mathbb{P}[\text{total branch bits} > R] \le2^{C_*}(3/4)^R. P [ total branch bits > R ] ≤ 2 C ∗ ( 3/4 ) R .
Impose the shared cap R = 3 ( C ∗ + K ) R = 3(C_* + K) R = 3 ( C ∗ + K ) . If another branch bit is needed after R R R bits have been used, return ( B , 0 , … , 0 ) (B,0,\ldots,0) ( B , 0 , … , 0 ) for the relevant budget B B B . Since 2 ( 3 / 4 ) 3 < 1 2(3/4)^3 < 1 2 ( 3/4 ) 3 < 1 and ( 3 / 4 ) 3 < 1 / 2 (3/4)^3 < 1/2 ( 3/4 ) 3 < 1/2 , the probability of this fallback is at most 2 − K 2^{-K} 2 − K . Runs with and without the cap agree unless fallback occurs, so the cap changes the output distribution in total variation by at most 2 − K 2^{-K} 2 − K , and hence changes every marginal CDF by at most that amount.
Choose K = ⌈ log 2 ( 32 / ε ) ⌉ K = \lceil\log_2(32/\varepsilon)\rceil K = ⌈ log 2 ( 32/ ε )⌉ . The resulting marginal distance from each ideal strategy is at most
δ ≤ ν + 2 − K = 5 2 ⋅ 2 K . \delta\le\nu+ 2^{-K} = \frac{5}{2 \cdot2^K}. δ ≤ ν + 2 − K = 2 ⋅ 2 K 5 .
By Lemma 2.1 , each opposing deviation bound increases by at most δ \delta δ . The ideal bounds from § 4.1.1 sum to one, so (3) gives regret at most 2 δ < ε 2\delta< \varepsilon 2 δ < ε for each player. All paths, including fallback, spend the budget exactly. Each sampler uses at most R + 2 K = O ( n + k ) R + 2K = O(n+k) R + 2 K = O ( n + k ) bits.
Bit complexity and output. The initial lengths ℓ i \ell_i ℓ i and values r i = p i ℓ i r_i = p_i\ell_i r i = p i ℓ i can all be written with a common denominator of O ( L 0 ) O(L_0) O ( L 0 ) bits. For example, the product of the denominators of the input values and budget ratio is such a denominator, since ℓ i = 2 v i \ell_i = 2v_i ℓ i = 2 v i and p i p_i p i is either 1 1 1 or b b b . A value r i r_i r i strictly between zero and ℓ i \ell_i ℓ i created by rounding is a sum of initial r j r_j r j minus lengths ℓ j \ell_j ℓ j on a set of coordinates; the sets merged at each step are disjoint. Thus rounding the mixture probabilities and grouping keep O ( L 0 ) O(L_0) O ( L 0 ) -bit numerators and denominators. The conditional probabilities in the rounding rule are ratios of differences between these values, so they also have O ( L 0 ) O(L_0) O ( L 0 ) -bit numerators and denominators. The three- or four-variable coupling then uses a constant number of arithmetic operations and at most two O ( k ) O(k) O ( k ) -bit midpoints. Its output coordinates and their proportional splits therefore have W = O ( L 0 + k ) W = O(L_0+k) W = O ( L 0 + k ) bits. The deterministic strategy description stores the input parameters and the precisions, together with the fixed sampling procedure; it need not enumerate the finite support.
Computing the strategy description takes O ( n Rat ( L 0 ) + E ) O(n\operatorname{Rat}(L_0)+E) O ( n Rat ( L 0 ) + E ) bit operations. A complete bounded draw takes
O ( n Rat ( W ) + ( n + k ) W ) O\bigl(n\operatorname{Rat}(W) + (n+k)W\bigr) O ( n Rat ( W ) + ( n + k ) W )
bit operations and writes O ( n W ) O(nW) O ( nW ) bits of rational coordinates. The second term accounts for comparing random bits with the binary expansions of the rational branch probabilities; each digit uses O ( W ) O(W) O ( W ) bit work. Using Rat ( W ) = O ~ ( W ) \operatorname{Rat}(W) = \widetilde{O}(W) Rat ( W ) = O ( W ) and L = L 0 + E L = L_0 + E L = L 0 + E gives the bounds in the main text. This proves all assertions of Corollary 4.5 .
Finite-bit implementation for player-specific values
We complete the finite-bit part of Theorem 4.6 by implementing the parameter search exactly and, when a qualifying pair exists, constructing the samplers. Unlike the common-value case, the parameters can be irrational even for rational input. We account for the bit cost of representing these parameters and performing exact arithmetic and comparisons.
Exact algebraic parameters. After clearing denominators, each polynomial in (20) has degree at most three and integer coefficients of O ( L 0 ) O(L_0) O ( L 0 ) bits. Remove repeated factors by taking the squarefree part, then use a Sturm sequence to isolate its real roots in disjoint rational intervals. For polynomials of this fixed degree, bounds on root magnitudes and separation give polynomial precision and polynomial bit cost in L 0 L_0 L 0 . Retain roots in the relevant ratio interval, and test the rational breakpoints separately as in Appendix § 7 .§ 2 .
To obtain an irreducible polynomial for each candidate, first detect rational roots. A rational root of an integer polynomial with leading coefficient a d a_d a d has denominator at most ∣ a d ∣ \lvert a_d\rvert ∣ a d ∣ . Refining an isolating interval to width less than 1 / ( 4 ∣ a d ∣ 2 ) 1/(4\lvert a_d\rvert^2) 1/ ( 4 ∣ a d ∣ 2 ) permits rational reconstruction by continued fractions, followed by exact substitution to test the candidate. Every reducible polynomial of degree two or three has a rational root, so removing the resulting linear factors leaves an irreducible factor for each remaining candidate.
Represent each candidate γ \gamma γ by its irreducible polynomial and a rational isolating interval. All lengths and mixture probabilities computed from it belong to the number field Q ( γ ) \mathbb{Q}(\gamma) Q ( γ ) , whose degree d d d is at most three. We represent an element of this field by its rational coefficients in the basis 1 , γ , … , γ d − 1 1,\gamma,\ldots,\gamma^{d-1} 1 , γ , … , γ d − 1 . Addition, multiplication, and reduction modulo the defining polynomial use rational arithmetic; division reduces to a linear system of size at most three. An element is zero exactly when all its reduced coefficients are zero.
For sign comparisons, suppose that these coefficients and the defining polynomial have binary lengths at most W W W . The norm of a nonzero field element is a nonzero rational number with O ( W ) O(W) O ( W ) -bit numerator and denominator, so its absolute value is at least 2 − O ( W ) 2^{-O(W)} 2 − O ( W ) . The other conjugates have absolute values at most 2 O ( W ) 2^{O(W)} 2 O ( W ) ; since the norm is their product with the chosen real value, that value also has magnitude at least 2 − O ( W ) 2^{-O(W)} 2 − O ( W ) . Refining the isolating interval and evaluating with O ( W ) O(W) O ( W ) bits of precision therefore determines its sign. The candidate parameters have polynomial coefficient lengths in L 0 L_0 L 0 , so these operations test max i ℓ i ≤ b \max_i \ell_i \le b max i ℓ i ≤ b in polynomial time, including equality. If every candidate fails, reject; otherwise retain one passing pair for the sampling construction below.
Bounded randomness and rational output. The positive lengths satisfy min i ℓ i ≥ 2 − poly ( L 0 ) \min_i \ell_i \ge2^{-\operatorname{poly}(L_0)} min i ℓ i ≥ 2 − poly ( L 0 ) by the preceding bound on nonzero field elements. Starting from one and halving until the value is at most every ℓ i \ell_i ℓ i therefore gives q 0 = 2 − s ≤ min i ℓ i q_0 = 2^{-s} \le\min_i \ell_i q 0 = 2 − s ≤ min i ℓ i with s = poly ( L 0 ) s = \operatorname{poly}(L_0) s = poly ( L 0 ) , using polynomially many exact comparisons. As in Appendix § 8 .§ 1 , there are at most C ∗ = n + 1000 C_* = n + 1000 C ∗ = n + 1000 Bernoulli choices and at most two scalar uniform draws per allocation. We use K K K bits for each scalar uniform, H H H bits for each Bernoulli choice, and P P P bits after the binary point for the final output coordinates, where
K = ⌈ log 2 48 ε ⌉ , H = ⌈ log 2 32 C ∗ ε ⌉ , P = s + ⌈ log 2 32 ε ⌉ . K = \left\lceil\log_2 \frac{48}{\varepsilon} \right\rceil,\qquad H = \left\lceil\log_2 \frac{32C_*}{\varepsilon} \right\rceil,\qquad P = s + \left\lceil\log_2 \frac{32}{\varepsilon} \right\rceil. K = ⌈ log 2 ε 48 ⌉ , H = ⌈ log 2 ε 32 C ∗ ⌉ , P = s + ⌈ log 2 ε 32 ⌉ .
Use K K K -bit midpoint uniforms for the scalar uniforms in the coupling formulas. For a branch probability r ∈ Q ( γ ) r \in\mathbb{Q}(\gamma) r ∈ Q ( γ ) , compare an independent H H H -bit midpoint uniform with r r r by an exact algebraic sign test. Return one if the midpoint is less than r r r , and zero otherwise; the success probability differs from r r r by at most 2 − H 2^{-H} 2 − H . Compare this sampler with the one using the same K K K -bit midpoint draws but exact branch probabilities. Until their first differing branch choice, the two runs have the same conditional parameters, so each choice has discrepancy probability at most 2 − H 2^{-H} 2 − H under a coupling. Summing over the at most C ∗ C_* C ∗ choices bounds the change in the output distribution in total variation by C ∗ 2 − H C_*2^{-H} C ∗ 2 − H . Each resulting algebraic allocation remains nonnegative and has the required exact sum, since every selected branch is feasible.
Finally replace each coordinate x ≥ 0 x \ge0 x ≥ 0 by 2 − P ⌊ 2 P x ⌋ 2^{-P}\lfloor2^P x\rfloor 2 − P ⌊ 2 P x ⌋ using exact algebraic comparisons. All normalized coordinates lie in [ 0 , 1 ] [0,1] [ 0 , 1 ] , so binary search takes O ( P ) O(P) O ( P ) comparisons per coordinate. This rounding decreases coordinates by less than 2 − P 2^{-P} 2 − P and keeps the total allocation at most the player’s budget on every path. It also leaves every zero coordinate equal to zero.
Before output rounding, (21) and the branch error bound give marginal CDF error at most 3 / ( 2 ⋅ 2 K ) + C ∗ 2 − H 3/(2\cdot2^K)+C_*2^{-H} 3/ ( 2 ⋅ 2 K ) + C ∗ 2 − H . Fix a battlefield i i i , and let X X X and X r o u n d X_{\mathrm{round}} X round be its coordinate before and after output rounding. For t ≥ 0 t \ge0 t ≥ 0 , they satisfy
P [ X ≤ t ] ≤ P [ X r o u n d ≤ t ] ≤ P [ X ≤ t + 2 − P ] . \mathbb{P}[X \le t] \le\mathbb{P}[X_{\mathrm{round}} \le t] \le\mathbb{P}[X \le t+2^{-P}]. P [ X ≤ t ] ≤ P [ X round ≤ t ] ≤ P [ X ≤ t + 2 − P ] .
If F F F is the ideal marginal CDF, this sandwich shows that rounding increases the CDF error by at most F ( t + 2 − P ) − F ( t ) F(t+2^{-P})-F(t) F ( t + 2 − P ) − F ( t ) . The difference is the ideal probability of ( t , t + 2 − P ] (t,t+2^{-P}] ( t , t + 2 − P ] , which excludes the atom at zero even when t = 0 t=0 t = 0 . On ( 0 , ∞ ) (0,\infty) ( 0 , ∞ ) the ideal marginal has density at most 1 / ℓ i ≤ 1 / q 0 1/\ell_i \le1/q_0 1/ ℓ i ≤ 1/ q 0 , so this additional error is at most 2 − P / q 0 2^{-P}/q_0 2 − P / q 0 . For t < 0 t<0 t < 0 , both the ideal and rounded CDFs are zero. Hence the total marginal error is at most
δ ≤ 3 2 ⋅ 2 K + C ∗ 2 − H + 2 − P q 0 ≤ 3 ε 32 . \delta\le\frac{3}{2\cdot2^K}+C_*2^{-H}+\frac{2^{-P}}{q_0}\le\frac{3\varepsilon}{32}. δ ≤ 2 ⋅ 2 K 3 + C ∗ 2 − H + q 0 2 − P ≤ 32 3 ε .
The proof of Lemma 2.1 only uses the normalization of the values of the player whose payoff is being bounded. It therefore applies separately to the value vectors v v v and w w w , giving regret at most 3 δ < ε 3\delta<\varepsilon 3 δ < ε for each player.
Bit complexity and output. It remains to bound the coefficient lengths reached during sampling, so that the algebraic operations above have polynomial cost. The coefficients of all initial lengths ℓ i \ell_i ℓ i and values r i = p i ℓ i r_i=p_i\ell_i r i = p i ℓ i can be written with a common denominator of polynomial bit length in the basis of Q ( γ ) \mathbb{Q}(\gamma) Q ( γ ) . Rounding the mixture probabilities and grouping use sums and differences of these quantities on disjoint sets of coordinates, so their coefficient lengths remain polynomial. Branch probabilities are obtained by division in Q ( γ ) \mathbb{Q}(\gamma) Q ( γ ) . The three- or four-variable coupling uses a constant number of arithmetic operations on these parameters and the midpoint inputs, followed by proportional splitting into the original coordinates. All resulting coefficients therefore have lengths polynomial in n n n , L 0 L_0 L 0 , log ( 1 / ε ) \log(1/\varepsilon) log ( 1/ ε ) . Root isolation, arithmetic and sign tests, and the O ( n P ) O(nP) O ( n P ) output comparisons consequently have polynomial cost in n n n , L L L , log ( 1 / ε ) \log(1/\varepsilon) log ( 1/ ε ) , including reading and processing the approximation parameter. The description consists of the rational input, selected root representation, precisions, and fixed sampler code. Each allocation uses at most C ∗ H + 2 K C_*H+2K C ∗ H + 2 K independent random bits and has polynomial output length. This completes the finite-bit guarantee.
Minimax, parameters, and candidate bids
Proof of Lemma 5.3
Proof. Recall that m ≥ 2 m \ge2 m ≥ 2 and 0 < ρ < 1 0 < \rho< 1 0 < ρ < 1 , and write v v v for the battlefield values. Adding unused budget to the bids of a strategy cannot increase the opponent’s payoff, and adding unused budget to the bids of a deviation cannot decrease the deviating player’s payoff. Hence C 1 C_1 C 1 and C ρ C_\rho C ρ do not change if both players are restricted to allocations that spend their full budgets, and we assume this restriction throughout the proof. Since u A + u B = 1 u_A + u_B = 1 u A + u B = 1 , the definitions give
1 − C 1 = sup P inf Q u A ( P , Q ) and C ρ = inf Q sup P u A ( P , Q ) . 1-C_1=\sup_P\inf_Q u_A(P,Q) \qquad\text{and}\qquad C_\rho=\inf_Q\sup_P u_A(P,Q). 1 − C 1 = P sup Q inf u A ( P , Q ) and C ρ = Q inf P sup u A ( P , Q ) .
where P P P ranges over distributions on A A A ’s allocations and Q Q Q over distributions on B B B ’s allocations. The inequality 1 − C 1 ≤ C ρ 1-C_1 \le C_\rho 1 − C 1 ≤ C ρ holds in every game, since inf Q ′ u A ( P , Q ′ ) ≤ u A ( P , Q ) ≤ sup P ′ u A ( P ′ , Q ) \inf_{Q'}u_A(P,Q') \le u_A(P,Q) \le\sup_{P'}u_A(P',Q) inf Q ′ u A ( P , Q ′ ) ≤ u A ( P , Q ) ≤ sup P ′ u A ( P ′ , Q ) for all P P P and Q Q Q . We prove the reverse inequality in two steps.
Call a distribution of A A A regular if its marginals have no atoms. We first show that, against every fixed distribution Q Q Q of B B B , the supremum of u A ( P , Q ) u_A(P,Q) u A ( P , Q ) over regular P P P equals the supremum over all P P P . Since u A ( P , Q ) u_A(P,Q) u A ( P , Q ) is an average of the payoffs of A A A ’s allocations, it suffices to approximate the payoff u A ( x , Q ) u_A(x,Q) u A ( x , Q ) of each allocation x x x of A A A by regular distributions. Suppose first that x x x has at least two positive coordinates. For small δ > 0 \delta> 0 δ > 0 , give each zero coordinate an independent uniform amount in [ δ 2 , 2 δ 2 ] [\delta^2,2\delta^2] [ δ 2 , 2 δ 2 ] and subtract the total of these amounts equally from the positive coordinates. Independently, draw independent uniform variables V j V_j V j on [ − 1 , 1 ] [-1,1] [ − 1 , 1 ] for the positive coordinates, let V ‾ \overline{V} V be their mean, and add δ ( V j − V ‾ ) \delta(V_j-\overline{V}) δ ( V j − V ) to each positive coordinate j j j . For sufficiently small δ \delta δ , this gives a regular distribution that spends the full budget. Fix an allocation y y y of B B B and a battlefield j j j , and let δ → 0 \delta\to0 δ → 0 . If x j > 0 x_j > 0 x j > 0 and y j = x j y_j=x_j y j = x j , A A A ’s new bid differs from x j x_j x j by δ ( V j − V ‾ ) \delta(V_j-\overline{V}) δ ( V j − V ) plus a term of order δ 2 \delta^2 δ 2 ; since V j − V ‾ V_j-\overline{V} V j − V has a symmetric distribution without atoms, A A A wins with probability tending to 1 / 2 1/2 1/2 . If x j = y j = 0 x_j=y_j=0 x j = y j = 0 , A A A now wins battlefield j j j , and if x j ≠ y j x_j \ne y_j x j = y j , the comparison is eventually unchanged. Hence the payoff against y y y converges to at least u A ( x , y ) u_A(x,y) u A ( x , y ) , and bounded convergence gives the same conclusion against Q Q Q . If x x x has only one positive coordinate, it equals 1 1 1 and beats every bid of B B B , which is at most ρ < 1 \rho< 1 ρ < 1 . Give the other coordinates independent uniform amounts in [ δ 2 , 2 δ 2 ] [\delta^2,2\delta^2] [ δ 2 , 2 δ 2 ] and subtract their total from the positive coordinate, keeping it above ρ \rho ρ ; the resulting distribution is regular because m ≥ 2 m \ge2 m ≥ 2 , and the same argument applies. This is the only use of ρ < 1 \rho< 1 ρ < 1 .
Second, let P r e g \mathcal{P}_{\mathrm{reg}} P reg be the nonempty convex set of regular distributions of A A A . Let Q \mathcal{Q} Q be the set of distributions on B B B ’s allocations; with the weak topology, it is compact and convex, since these allocations form a compact simplex. For a regular P P P , the function Q ↦ u A ( P , Q ) Q \mapsto u_A(P,Q) Q ↦ u A ( P , Q ) is continuous because u A ( P , y ) = ∑ j v j ( 1 − F P , j ( y j ) ) u_A(P,y)=\sum_j v_j(1-F_{P,j}(y_j)) u A ( P , y ) = ∑ j v j ( 1 − F P , j ( y j )) is continuous in y y y when the marginal CDFs F P , j F_{P,j} F P , j of P P P are continuous. The payoff is affine in each player’s distribution. The Kneser–Fan minimax theorem [17 Theorem 4.2′] applies to two convex sets when the minimizing set is compact and the payoff is affine in each variable and lower semicontinuous in the minimizing variable; it requires no continuity or compactness in the maximizing variable. Applying it to P r e g \mathcal{P}_{\mathrm{reg}} P reg and Q \mathcal{Q} Q and using the first step gives
C ρ = inf Q ∈ Q sup P ∈ P r e g u A ( P , Q ) = sup P ∈ P r e g inf Q ∈ Q u A ( P , Q ) ≤ 1 − C 1 . C_\rho=\inf_{Q\in\mathcal{Q}}\sup_{P\in\mathcal{P}_{\mathrm{reg}}}u_A(P,Q)=\sup_{P\in\mathcal{P}_{\mathrm{reg}}}\inf_{Q\in\mathcal{Q}}u_A(P,Q)\le1-C_1. C ρ = Q ∈ Q inf P ∈ P reg sup u A ( P , Q ) = P ∈ P reg sup Q ∈ Q inf u A ( P , Q ) ≤ 1 − C 1 .
Together with 1 − C 1 ≤ C ρ 1-C_1 \le C_\rho 1 − C 1 ≤ C ρ , established above, this proves C 1 + C ρ = 1 C_1+C_\rho=1 C 1 + C ρ = 1 . □
Relation to the criterion of Barelli, Govindan, and Wilson. For the game restricted to allocations that spend the full budgets, the perturbation also verifies the one-sided payoff approachability condition in [7 Definition 2.8 and Remark 2.10(3)] . For every allocation $x of A A A and distribution Q Q Q of B B B in this restricted game, it suffices to find allocations x δ → x x_\delta\to x x δ → x that have zero probability of a tie against Q Q Q and satisfy lim inf δ → 0 u A ( x δ , Q ) ≥ u A ( x , Q ) \liminf_{\delta\to0} u_A(x_\delta,Q) \ge u_A(x,Q) lim inf δ → 0 u A ( x δ , Q ) ≥ u A ( x , Q ) . Let P δ P_\delta P δ be the perturbed distribution constructed in the proof. Its allocations approach x x x as δ → 0 \delta\to0 δ → 0 , and its atomless marginals avoid all atoms of Q Q Q ’s marginals with probability one, since each marginal has at most countably many atoms. We can therefore choose an allocation x δ x_\delta x δ with zero probability of a tie against Q Q Q and with u A ( x δ , Q ) ≥ u A ( P δ , Q ) − δ u_A(x_\delta,Q) \ge u_A(P_\delta,Q)-\delta u A ( x δ , Q ) ≥ u A ( P δ , Q ) − δ . The payoff bound in the proof gives the required limiting inequality. The standing regularity assumption of [7 Assumption 2.1] also holds: for either player, replace an allocation X X X by ( 1 − η ) X + η Z (1-\eta)X+\eta Z ( 1 − η ) X + η Z , where Z Z Z is an independent uniform allocation on that player’s full-budget simplex and η ∈ ( 0 , 1 ) \eta\in(0,1) η ∈ ( 0 , 1 ) tends to zero. The resulting distributions converge weakly to the distribution of X X X and have atomless marginals, so they assign zero probability to ties against every fixed opposing allocation. Thus [7 Remark 2.10(3)] provides another route to the minimax equality.
Why the cited existence theorems do not apply directly. The general existence claims in [13 Section 2.1] and [5 Section 2] refer to [14 ] and [9 ] , respectively. The following example shows that their hypotheses can fail here. Take two battlefields of value 1 / 2 1/2 1/2 each, budgets 1 and 1 / 3 1/3 1/3 , and allocations
x ∗ = ( 1 / 3 , 2 / 3 ) , y ∗ = ( 1 / 3 , 0 ) , x t = ( 1 / 3 + t , 2 / 3 − t ) , 0 < t < 1 / 3. x^*=(1/3,2/3), \qquad y^*=(1/3,0), \qquad x_t=(1/3+t,2/3-t), \qquad0<t<1/3. x ∗ = ( 1/3 , 2/3 ) , y ∗ = ( 1/3 , 0 ) , x t = ( 1/3 + t , 2/3 − t ) , 0 < t < 1/3.
At ( x ∗ , y ∗ ) (x^*,y^*) ( x ∗ , y ∗ ) , the players’ payoffs are ( 3 / 4 , 1 / 4 ) (3/4,1/4) ( 3/4 , 1/4 ) , whereas at ( x t , y ∗ ) (x_t,y^*) ( x t , y ∗ ) they are ( 1 , 0 ) (1,0) ( 1 , 0 ) . Thus ( x ∗ , y ∗ ) (x^*,y^*) ( x ∗ , y ∗ ) is not an equilibrium, and as t → 0 t \to0 t → 0 the profiles ( x t , y ∗ ) (x_t,y^*) ( x t , y ∗ ) converge to it with payoff vector ( 1 , 0 ) (1,0) ( 1 , 0 ) . Moreover, both bids in x t x_t x t exceed B B B ’s entire budget, so every feasible strategy of B B B earns zero against x t x_t x t .
The mixed-strategy existence theorem in [14 Corollary 5.2] requires better-reply security of the mixed extension: whenever strategy profiles converge to a nonequilibrium profile and their payoff vectors converge, some player must have a strategy guaranteeing strictly more than its limiting payoff against every opponent strategy in a neighborhood of the limit. Here neighborhoods of mixed strategies use the weak topology; pure allocations are identified with the distributions concentrated on them. In the example, A A A cannot earn more than its limiting payoff of 1. Nor can B B B guarantee a positive payoff near x ∗ x^* x ∗ , because every neighborhood contains some x t x_t x t , against which all its strategies earn zero. Hence better-reply security fails even when deviations may be mixed.
The example also violates payoff security of the mixed extension: at ( x ∗ , y ∗ ) (x^*,y^*) ( x ∗ , y ∗ ) , B B B cannot guarantee a payoff arbitrarily close to its current payoff 1 / 4 1/4 1/4 against all nearby strategies of A A A . The hypotheses of [9 ] imply this property, as shown in [14 Section 6.2] , so they also fail in this example. This example does have a pure equilibrium: A A A bids ( 1 / 2 , 1 / 2 ) (1/2,1/2) ( 1/2 , 1/2 ) and B B B uses any feasible allocation. It therefore rules out the direct applications of these existence theorems, not equilibrium existence itself.
Parameters and positive value rounding
Section 5.1 defines both roundings and proves their error bounds. The first, with scale 256 n / e 256n/e 256 n / e , has ℓ 1 \ell_1 ℓ 1 error at most e / 128 e/128 e /128 and common denominator Q ′ = O ( n / e ) Q'=O(n/e) Q ′ = O ( n / e ) ; its integer weights w j ′ w'_j w j ′ are kept for the reconstruction in Section 5.4. The second, with scale 512 m / e 512m/e 512 m / e , has ℓ 1 \ell_1 ℓ 1 error at most e / 256 e/256 e /256 and common denominator Q v < 512 m / e + m Q_v<512m/e+m Q v < 512 m / e + m .
Here and below, pow2ceil ( a ) \operatorname{pow2ceil}(a) pow2ceil ( a ) is the least power of two that is at least a a a ; it is computed by repeated doubling. The parameters for budget transfer and for the candidate bids depend only on m m m and e e e . The first group controls budget transfer: K K K is the number of labels per battlefield, S S S the score scale, d d d the number of anchors of nonzero labels, and H H H the bound on the coefficients. of constraint slacks in Appendix § 11 .§ 2 . The denominator Q g Q_g Q g of the grid used to select ρ \rho ρ gives the bound q ˉ \bar{q} q ˉ on the denominator of ρ \rho ρ . The second group controls the candidate bids: D D D bounds the denominators of the rational anchors in the proof of Lemma 5.5 , C C C is the denominator of the evenly spaced grid contained in S S S , and Δ p h y s \Delta_{\mathrm{phys}} Δ phys is the increment Δ \Delta Δ that realizes open choices. The full code set I I I has U c o d e = 2 Λ U_{\mathrm{code}}=2^\Lambda U code = 2 Λ elements. Their values are
z = e / 2048 , K = 128 / e = 1 / ( 16 z ) , S = pow2ceil ( 128 m / e ) , d = m ( K − 1 ) , z=e/2048,\qquad K=128/e=1/(16z),\qquad S=\operatorname{pow2ceil}(128m/e),\qquad d=m(K-1), z = e /2048 , K = 128/ e = 1/ ( 16 z ) , S = pow2ceil ( 128 m / e ) , d = m ( K − 1 ) ,
H = ( m + 3 ) d + 2 , Q g = pow2ceil ( 4 H 2 ) , q ˉ = 2 Q g ≤ 16 H 2 , H=(m+3)^{d+2},\qquad Q_g=\operatorname{pow2ceil}(4H^2),\qquad\bar{q}=2Q_g\le16H^2, H = ( m + 3 ) d + 2 , Q g = pow2ceil ( 4 H 2 ) , q ˉ = 2 Q g ≤ 16 H 2 ,
J D = m ( 64 / z − 1 ) + 1 , D = q ˉ ( m + 2 ) J D , J_D=m(64/z-1)+1,\qquad D=\bar{q}(m+2)^{J_D}, J D = m ( 64/ z − 1 ) + 1 , D = q ˉ ( m + 2 ) J D ,
C = pow2ceil ( 4 D 2 ) , Δ p h y s = 1 4 m q ˉ C m + 2 , U c o d e = 8 C = 2 Λ . C=\operatorname{pow2ceil}(4D^2),\qquad\Delta_{\mathrm{phys}}=\frac{1}{4m\bar{q}C^{m+2}},\qquad U_{\mathrm{code}}=8C=2^\Lambda. C = pow2ceil ( 4 D 2 ) , Δ phys = 4 m q ˉ C m + 2 1 , U code = 8 C = 2 Λ .
These definitions give m z < 1 mz<1 m z < 1 , Λ ≥ m \Lambda\ge m Λ ≥ m , and Λ = O ~ ( m / z ) \Lambda=\widetilde{O}(m/z) Λ = O ( m / z ) . The remaining parameters control the iterative computation of Appendix § 10 and are fixed from the reduced input before any candidate allocations are selected. They specify the number of updates, the size and accuracy of CDF summaries, and the precision used to evaluate the updates:
Choose the mantissa precision p m a n t p_{\mathrm{mant}} p mant by increasing it until 64 E 2 1 − p m a n t ≤ ν 64E\,2^{1-p_{\mathrm{mant}}}\le\nu 64 E 2 1 − p mant ≤ ν . In particular, T = Θ ( Λ / z 2 ) T=\Theta(\Lambda/z^2) T = Θ ( Λ/ z 2 ) is a power of two, and K K K divides T T T because k e p = 16 K k_{\mathrm{ep}}=16K k ep = 16 K .
Proof of Lemma 5.5
Proof. Fix a rational ρ = p / q \rho=p/q ρ = p / q with 0 < p < q ≤ q ˉ 0<p<q\le\bar{q} 0 < p < q ≤ q ˉ , where p p p and q q q need not be relatively prime, the player’s budget c ∈ { 1 , ρ } c\in\{1,\rho\} c ∈ { 1 , ρ } , and the opponent’s budget c ′ c' c ′ . Let F D \mathcal{F}_D F D be the set of rationals in [ 0 , 1 ] [0,1] [ 0 , 1 ] with reduced denominator at most D D D , where D D D is specified in Appendix § 9 .§ 2 . We follow the two steps described after Lemma 5.5 and supply the details omitted there.
The first step needs one further fact: each rank τ j \tau_j τ j is uniform on [ 0 , 1 ] [0,1] [ 0 , 1 ] . Recall that, given the allocation x x x , the rank τ j \tau_j τ j is uniform on [ F j ( x j − ) , F j ( x j ) ] [F_j(x_j^-),F_j(x_j)] [ F j ( x j − ) , F j ( x j )] . For u ∈ ( 0 , 1 ) u\in(0,1) u ∈ ( 0 , 1 ) , let t = Q j ( u ) t=Q_j(u) t = Q j ( u ) . Bids x j < t x_j<t x j < t satisfy F j ( x j ) < u F_j(x_j)<u F j ( x j ) < u , so they contribute probability F j ( t − ) F_j(t^-) F j ( t − ) to P ( τ j ≤ u ) \mathbb{P}(\tau_j\le u) P ( τ j ≤ u ) . If F j F_j F j has an atom at t t t , the bid x j = t x_j=t x j = t contributes u − F j ( t − ) u-F_j(t^-) u − F j ( t − ) , since u u u lies in [ F j ( t − ) , F j ( t ) ] [F_j(t^-),F_j(t)] [ F j ( t − ) , F j ( t )] ; otherwise F j ( t − ) = F j ( t ) = u F_j(t^-)=F_j(t)=u F j ( t − ) = F j ( t ) = u , and this bid contributes zero. Bids x j > t x_j>t x j > t have τ j ≥ F j ( t ) ≥ u \tau_j\ge F_j(t)\ge u τ j ≥ F j ( t ) ≥ u , with equality only on an event of probability zero. Hence P ( τ j ≤ u ) = u \mathbb{P}(\tau_j\le u)=u P ( τ j ≤ u ) = u . The cap in the definition of the label l j l_j l j matters only on the event τ j = 1 \tau_j=1 τ j = 1 , which has probability zero.
For the second step, write a j l = Q j ( l / K ′ ) a_{jl}=Q_j(l/K') a j l = Q j ( l / K ′ ) for the anchors. Treat the m ( K ′ − 1 ) m(K'-1) m ( K ′ − 1 ) anchors of nonzero labels as variables, keeping a j 0 = 0 a_{j0}=0 a j 0 = 0 ; their values may still be zero. Require every equality and strict inequality that the original anchors satisfy between two anchors on the same battlefield, and between an anchor and 0 or 1. Also require, for every tuple ( l 1 , … , l m ) (l_1,\ldots,l_m) ( l 1 , … , l m ) and each budget in { 1 , ρ } \{1,\rho\} { 1 , ρ } , the same relation (< < < , = = = or > > > ) between ∑ j a j l j \sum_j a_jl_j ∑ j a j l j and that budget as for the original anchors. Replace each strict inequality by the corresponding weak inequality with a common margin t t t , add the constraint 0 ≤ t ≤ 1 0 \le t \le1 0 ≤ t ≤ 1 , and maximize t t t . The original anchors satisfy these constraints with some positive margin, since there are finitely many constraints. At an optimal vertex, the anchors and t t t solve a nonsingular subsystem of tight constraints of order at most J D = m ( K ′ − 1 ) + 1 J_D=m(K'-1)+1 J D = m ( K ′ − 1 ) + 1 ; this holds even if the feasible set is lower-dimensional, since a vertex has a full-rank tight subsystem in the ambient variables. Each row of this subsystem has coefficients in { 0 , 1 , − 1 } \{0,1,-1\} { 0 , 1 , − 1 } , at most m + 1 m+1 m + 1 of them nonzero, and a right-hand side whose denominator divides q q q . Cramer’s rule and Hadamard’s inequality bound the denominator of each new anchor by q ( m + 2 ) J D ≤ D q(m+2)^{J_D} \le D q ( m + 2 ) J D ≤ D , so the new anchors lie in F D \mathcal{F}_D F D .
Keep the joint probabilities of the label tuples. Their feasibility for budget c c c is unchanged because every anchor sum retains its comparison with c c c . By Lemma 5.4 , applied with the anchors as thresholds, the opponent’s supremum payoff is determined by the joint distribution of the labels, the order of the anchors on each battlefield, including repeated anchors, and the comparison of each anchor sum with c ′ c' c ′ . All of these are preserved, so replacing the anchors by these rational values preserves the opponent’s supremum payoff. The total increase from P P P is at most 1 / K ′ = z / 64 1/K'=z/64 1/ K ′ = z /64 . The set of candidate bids is S = F D ∪ { t / C : t = 0 , … , C } S=\mathcal{F}_D\cup\{t/C:t=0,\ldots,C\} S = F D ∪ { t / C : t = 0 , … , C } , with the power of two C C C from Appendix § 9 .§ 2 . It contains F D \mathcal{F}_D F D , zero and one, and every element has denominator at most C C C , hence encoding length O ( log C ) O(\log C) O ( log C ) . Since D = q ˉ ( m + 2 ) m ( K ′ − 1 ) + 1 D=\bar q(m+2)^{m(K'-1)+1} D = q ˉ ( m + 2 ) m ( K ′ − 1 ) + 1 and 4 D 2 ≤ C < 8 D 2 4D^2\le C<8D^2 4 D 2 ≤ C < 8 D 2 , the code length Λ = log 2 ( 8 C ) \Lambda=\log_2(8C) Λ = log 2 ( 8 C ) satisfies
Λ = O ( log q ˉ + ( m / z ) log ( m + 2 ) ) . \Lambda=O\left(\log\bar q+(m/z)\log(m+2)\right). Λ = O ( log q ˉ + ( m / z ) log ( m + 2 ) ) .
The set S S S depends on the common bound q ˉ \bar q q ˉ , not on the particular ratio p / q p/q p / q . The distributions P P P and P ∗ P^* P ∗ appear only in the analysis; the algorithm does not construct the linear program above or compute the probabilities of P ∗ P^* P ∗ .
The candidate bids form the set S = F D ∪ { t / C : t = 0 , 1 , … , C } S=\mathcal{F}_D\cup\{t/C:t=0,1,\ldots,C\} S = F D ∪ { t / C : t = 0 , 1 , … , C } of Appendix § 9 .§ 3 . We encode the candidate bids, and the bids s + Δ p h y s s+\Delta_{\mathrm{phys}} s + Δ phys for s ∈ S s\in S s ∈ S that realize open choices, by integers, so that comparisons of codes reproduce comparisons of bids. For t = 0 , … , C t=0,\ldots,C t = 0 , … , C , the bucket [ t / C , ( t + 1 ) / C ) [t/C,(t+1)/C) [ t / C , ( t + 1 ) / C ) receives the codes 4 t 4t 4 t , 4 t + 1 4t+1 4 t + 1 , 4 t + 2 4t+2 4 t + 2 and 4 t + 3 4t+3 4 t + 3 , which represent the grid point t / C t/C t / C , the bid t / C + Δ p h y s t/C+\Delta_{\mathrm{phys}} t / C + Δ phys , the point of F D \mathcal{F}_D F D strictly inside the bucket if there is one, and that point plus Δ p h y s \Delta_{\mathrm{phys}} Δ phys . We show below that a bucket contains at most one point of F D \mathcal{F}_D F D in its interior. Codes of bids in S S S are called closed, and codes of bids s + Δ p h y s s+\Delta_{\mathrm{phys}} s + Δ phys are called open. A code is valid if it represents a bid; candidate allocations use only closed codes, and response allocations use closed and open codes. The open code of the bid one is invalid because neither budget exceeds one, the codes 4 t + 2 4t+2 4 t + 2 and 4 t + 3 4t+3 4 t + 3 are invalid when bucket t t t has no interior point of F D \mathcal{F}_D F D , and every code above 4 C 4C 4 C is invalid; these last codes only make the size 8 C 8C 8 C of I = { 0 , … , 8 C − 1 } I=\{0,\ldots,8C-1\} I = { 0 , … , 8 C − 1 } a power of two. Invalid codes may carry mass in the auxiliary marginals but never occur in a selected allocation. Distinct candidate bids differ by at least 1 / C 2 > Δ p h y s 1/C^2>\Delta_{\mathrm{phys}} 1/ C 2 > Δ phys , so the codes are ordered as the bids they represent.
The denominator of every candidate bid is at most C C C . For a sum a a a of at most m m m candidate bids and a budget c ′ ∈ { 1 , p / q } c'\in\{1,p/q\} c ′ ∈ { 1 , p / q } , a nonzero difference satisfies
∣ a − c ′ ∣ ≥ 1 q C m > m Δ p h y s . |a-c'|\ge\frac{1}{qC^m}>m\Delta_{\mathrm{phys}}. ∣ a − c ′ ∣ ≥ q C m 1 > m Δ phys .
To test budgets without adding the small increments, represent a partial tuple of choices by a resource tag ( a , o ) (a,o) ( a , o ) , where a a a is the sum of its thresholds and o o o records whether any choice is open. Tags add by ( a , o ) + ( a ′ , o ′ ) = ( a + a ′ , o ∨ o ′ ) (a,o)+(a',o')=(a+a',o\lor o') ( a , o ) + ( a ′ , o ′ ) = ( a + a ′ , o ∨ o ′ ) and are ordered lexicographically, with closed before open. Addition preserves this order, and a completed tag is feasible precisely when
a < c ′ or a = c ′ and o = 0 , (22) a<c' \text{ or } a=c' \text{ and } o=0, \tag*{(22)} a < c ′ or a = c ′ and o = 0 , (22)
which is condition (12) . The corresponding allocation adds Δ p h y s \Delta_{\mathrm{phys}} Δ phys at each open choice, and the displayed gap shows that it satisfies the budget exactly when (22) holds. Together with the gap between candidate bids, this verifies that Δ = Δ p h y s \Delta=\Delta_{\mathrm{phys}} Δ = Δ phys has the properties required in § 5.2 .
The algorithm never lists S S S ; it only needs the least valid code in a given interval of codes. Distinct rationals with reduced denominator at most D D D differ by at least D − 2 D^{-2} D − 2 , which exceeds the bucket width 1 / C 1/C 1/ C , so a bucket contains at most one of them in its interior. If such a fraction exists, its distance to the midpoint ( 2 t + 1 ) / ( 2 C ) (2t+1)/(2C) ( 2 t + 1 ) / ( 2 C ) of the bucket is less than 1 / ( 2 ( q ′ ) 2 ) 1/(2(q')^2) 1/ ( 2 ( q ′ ) 2 ) , where q ′ ≤ D q'\le D q ′ ≤ D is its reduced denominator. By Legendre’s theorem, it is then a convergent of the continued fraction of the midpoint. A later convergent with denominator at most D D D would be closer to the midpoint and hence also inside the bucket, contradicting uniqueness. Therefore take the last convergent with denominator at most D D D , and retain it only if it lies strictly inside the bucket. To find the least valid code in an interval of codes, inspect the constant number of codes in its first bucket and, if necessary, the grid point of the next bucket. Report absence if the result lies outside the interval; this also covers intervals that consist only of invalid codes. The Euclidean algorithm gives O ( Λ ) O(\Lambda) O ( Λ ) real-RAM operations and O ~ ( Λ 2 ) \widetilde{O}(\Lambda^2) O ( Λ 2 ) bit operations per query, as justified in Appendix § 12 .§ 4 .
Computing the strategy distributions
This appendix implements the four updates of § 5.2 and proves the accuracy bounds in Lemma 5.7 . We describe the computation for a fixed budget c ∈ { 1 , ρ } c\in\{1,\rho\} c ∈ { 1 , ρ } of the player whose strategy is computed; applying it for both choices gives the two required distributions. Let X X X be the candidate allocations for this budget and Y Y Y the response allocations for the opponent’s budget c ′ c' c ′ , with the codes and the increment Δ = Δ p h y s \Delta=\Delta_{\mathrm{phys}} Δ = Δ phys of Appendix § 9 .§ 4 . We use the notation of § 5.2 for auxiliary marginals, CDFs on codes, the payoff f f f and the pairing λ ⋅ F p \lambda\cdot F_p λ ⋅ F p , set F p , j ( − 1 ) = 0 F_{p,j}(-1)=0 F p , j ( − 1 ) = 0 , and omit the battlefield index in formulas for a single battlefield. Define H p , j ( a ) = ( F p , j ( a − 1 ) + F p , j ( a ) ) / 2 H_{p,j}(a)=(F_{p,j}(a-1)+F_{p,j}(a))/2 H p , j ( a ) = ( F p , j ( a − 1 ) + F p , j ( a )) /2 . With respect to the inner product ⟨ g , p ⟩ = ∑ j v ^ j ∑ a g j ( a ) p j ( a ) \langle g,p\rangle=\sum_j\hat{v}_j\sum_a g_j(a)p_j(a) ⟨ g , p ⟩ = ∑ j v ^ j ∑ a g j ( a ) p j ( a ) , the gradient of f f f is $1-H_q$ in p p p and H p H_p H p in $q.
Updates and selected allocations
For each battlefield j j j , the algorithm maintains the distributions p j p_j p j and q j q_j q j on I I I and λ j \lambda_j λ j and μ j \mu_j μ j on { + , − } × I \{+,-\}\times I { + , − } × I ; we call these 4 m 4m 4 m distributions the components. In a signed component λ j \lambda_j λ j or μ j \mu_j μ j , we order the pairs with positive sign first and those with negative sign second, each in increasing order of codes, and normalize over both signs together. For a signed component, define the signed tail
G λ , j ( a ) = ∑ a ′ ≥ a ( λ j ( + , a ′ ) − λ j ( − , a ′ ) ) . G_{\lambda,j}(a)=\sum_{a'\ge a}\bigl(\lambda_j(+,a')-\lambda_j(-,a')\bigr). G λ , j ( a ) = a ′ ≥ a ∑ ( λ j ( + , a ′ ) − λ j ( − , a ′ ) ) .
Then λ ⋅ F p = ⟨ G λ , p ⟩ \lambda\cdot F_p=\langle G_\lambda,p\rangle λ ⋅ F p = ⟨ G λ , p ⟩ , and in particular λ ⋅ F x = ∑ j v ^ j G λ , j ( x j ) \lambda\cdot F_x=\sum_j\hat{v}_jG_{\lambda,j}(x_j) λ ⋅ F x = ∑ j v ^ j G λ , j ( x j ) for an allocation x x x ; this is the sum over battlefields that the dynamic program of Appendix § 10 .§ 2 maximizes. Every component starts as the uniform distribution. In iteration t t t , before changing any component, the algorithm selects feasible allocations x t ∈ X x_t\in X x t ∈ X and y t ∈ Y y_t\in Y y t ∈ Y that approximately maximize λ t ⋅ F x \lambda_t\cdot F_x λ t ⋅ F x and μ t ⋅ F y \mu_t\cdot F_y μ t ⋅ F y , respectively. The losses of the four updates are the gradients of the objectives in § 5.2 , negated for the three maximized objectives:
g p ( a ) = 1 − H q ( a ) + G λ ( a ) , g q ( a ) = − H p ( a ) + G μ ( a ) , g λ ( s , a ) = s ( F x t ( a ) − F p ( a ) ) , g μ ( s , a ) = s ( F y t ( a ) − F q ( a ) ) . (23) \begin{aligned}
g_p(a) &= 1 - H_q(a) + G_\lambda(a), & g_q(a) &= -H_p(a) + G_\mu(a),\\
g_\lambda(s,a) &= s(F_{x_t}(a) - F_p(a)), & g_\mu(s,a) &= s(F_{y_t}(a) - F_q(a)). \tag*{(23)}
\end{aligned} g p ( a ) g λ ( s , a ) = 1 − H q ( a ) + G λ ( a ) , = s ( F x t ( a ) − F p ( a )) , g q ( a ) g μ ( s , a ) = − H p ( a ) + G μ ( a ) , = s ( F y t ( a ) − F q ( a )) . (23)
where p p p , q q q , λ \lambda λ and μ \mu μ stand for the current components p t p_t p t , q t q_t q t , λ t \lambda_t λ t and μ t \mu_t μ t . These formulas apply separately to each battlefield; the weight of a battlefield enters through the inner product and is not multiplied again into its normalized update.
The algorithm approximates the terms in (23) on the mesh θ \theta θ . It rounds strict and weak CDFs and the tail probabilities for each sign separately down to this mesh, and then forms their half-sums or differences. Write g ^ t \hat{g}_t g ^ t for the resulting losses, computed with the same selected allocations x t x_t x t and y t y_t y t . Their magnitudes are bounded by 2, 2, 1 and 1, respectively, and each lies on the mesh θ / 2 \theta/2 θ /2 . The algorithm stores the integer level increment
d t ( a ) = 2 ( g ^ t ( a ) + 2 ) / θ ∈ { 0 , … , 8 / θ } . (24) d_t(a) = 2(\hat{g}_t(a) + 2)/\theta\in\{0,\ldots,8/\theta\}. \tag*{(24)} d t ( a ) = 2 ( g ^ t ( a ) + 2 ) / θ ∈ { 0 , … , 8/ θ } . (24)
We call the distribution defined by all preceding updates the full distribution , to distinguish it from the summaries used below. It assigns code a a a probability proportional to a g e o m ∑ i < t d i ( a ) a_{\mathrm{geom}}^{\sum_{i<t}d_i(a)} a geom ∑ i < t d i ( a ) . Since a g e o m d t ( a ) = e − κ ( g ^ t ( a ) + 2 ) a_{\mathrm{geom}}^{d_t(a)} = e^{-\kappa(\hat{g}_t(a)+2)} a geom d t ( a ) = e − κ ( g ^ t ( a ) + 2 ) with κ = − 2 log ( a g e o m ) / θ ∈ [ η , 2 η ] \kappa=-2\log(a_{\mathrm{geom}})/\theta\in[\eta,2\eta] κ = − 2 log ( a geom ) / θ ∈ [ η , 2 η ] , each update is a multiplicative-weights update with rate κ \kappa κ . The constant 2, added to make the increments nonnegative, contributes the same factor to every weight of a component and disappears on normalization. The rate κ \kappa κ is used only in the analysis. The algorithm records x t x_t x t as the t t t -th list entry before applying the updates, and it returns the uniform distribution on the T T T candidate allocations.
To avoid processing all codes in every iteration, the algorithm groups the iterations into epochs of k e p k_{\mathrm{ep}} k ep consecutive iterations. At the start of an epoch, it selects s s s codes at approximate quantiles of each current component, keeping repeated selections. Their uniform distribution serves as a summary of that component; Appendix § 10 .§ 3 bounds its CDF error relative to the current component. For each signed component, the rounded signed tail computed from its summary changes only at the successors of the codes in the summary. Partition I I I at these successors and, using Appendix § 9 .§ 4 , cache in each part the least valid code that a candidate allocation (for λ j \lambda_j λ j ) or a response allocation (for μ j \mu_j μ j ) can use; a part without such a code supplies no option. Replacing a bid by the cached code of its part preserves the rounded objective and can only decrease the resource tag, so the cached codes contain an optimal choice for the rounded objective. The all-zero allocation guarantees that a feasible choice exists.
Each summary keeps its selected codes throughout the epoch, but their weights are updated by the same factors as the full distribution. Each selected code starts with weight 1 / s 1/s 1/ s ; after level increments totaling L L L have accumulated at its code during the epoch, its unnormalized weight is a g e o m L / s a_{\mathrm{geom}}^L/s a geom L / s . We call this total L L L the local level, since it includes only the current epoch’s updates. Normalizing these weights answers the CDF queries. The rounded losses change only at the codes selected for the summaries of p p p and q q q and their successors, at the successors of the codes in the signed summaries, at the cached codes of the epoch, and, in signed components, at the boundary between the two signs. These codes partition the codes of each component into O ( s + k e p ) O(s+k_{\mathrm{ep}}) O ( s + k ep ) intervals, which we call cells. The algorithm maintains exact local levels for each cell and each selected code. Each iteration evaluates the geometric powers of the current local levels of the selected codes, sums the numerators of their fixed-precision approximations exactly, forms the rounded CDFs and tails, selects the two feasible allocations, records x t x_t x t , and increments the levels according to (24) . At the end of the epoch, each cell’s exact cumulative level is added once to the corresponding interval in a binary tree representing the full distribution, and the epoch arrays are discarded. Appendix § 10 .§ 3 describes this tree and its updates. The next epoch constructs its summaries from the distributions with all these updates applied.
A fixed profit grid with exact budget tests
The two optimizations over feasible allocations must respect the budget exactly while approximating their objectives λ t ⋅ F x \lambda_t \cdot F_x λ t ⋅ F x and μ t ⋅ F y \mu_t \cdot F_y μ t ⋅ F y . We keep exact resource tags ( a , o ) (a,o) ( a , o ) , recording the sum of the chosen thresholds and whether any choice is open, as in Appendix § 9 .§ 4 ; only objective values are rounded. These objectives can have both signs. Let G ^ j \widehat{G}_j G j be the signed tail computed from the current summary of λ t \lambda_t λ t or μ t \mu_t μ t on battlefield j j j , with the two sign probabilities rounded as in Appendix § 10 .§ 1 . The rounded objective for selecting an allocation is ∑ j v ^ j G ^ j ( x j ) \sum_j \widehat{v}_j\widehat{G}_j(x_j) ∑ j v j G j ( x j ) . Adding the constant one gives nonnegative coordinate profits
π j ( a ) = v ^ j ( 1 + G ^ j ( a ) ) . \pi_j(a)=\widehat{v}_j(1+\widehat{G}_j(a)). π j ( a ) = v j ( 1 + G j ( a )) .
The profits sum to at most two over any allocation, and they have integer numerators over the fixed denominator Q p r o f = 2 T Q v / θ Q_{\mathrm{prof}}=2TQ_v/\theta Q prof = 2 T Q v / θ . Every positive profit is therefore at least 1 / Q p r o f 1/Q_{\mathrm{prof}} 1/ Q prof . This denominator is fixed for the whole iterative computation.
Construct a balanced binary tree with one leaf per battlefield and pad it to 2 h 0 2^{h_0} 2 h 0 leaves, where h 0 = ⌈ log 2 m ⌉ h_0=\lceil\log_2 m\rceil h 0 = ⌈ log 2 m ⌉ , using dummy leaves with zero resource and profit. Set
w p r o f = pow2ceil ( 4 ( h 0 + 1 ) / α ) , B p r o f = min { h ∈ Z ≥ 0 : 2 h ≥ 4 Q p r o f } , F p r o f = 2 B p r o f w p r o f . w_{\mathrm{prof}}=\operatorname{pow2ceil}(4(h_0+1)/\alpha),\qquad B_{\mathrm{prof}}=\min\{h\in\mathbb{Z}_{\geq0}:2^h\geq4Q_{\mathrm{prof}}\},\qquad F_{\mathrm{prof}}=2^{B_{\mathrm{prof}}}w_{\mathrm{prof}}. w prof = pow2ceil ( 4 ( h 0 + 1 ) / α ) , B prof = min { h ∈ Z ≥ 0 : 2 h ≥ 4 Q prof } , F prof = 2 B prof w prof .
The profit grid has numerators zero, all a 2 h a2^h a 2 h for integers a , h a,h a , h with w p r o f ≤ a < 2 w p r o f w_{\mathrm{prof}}\leq a<2w_{\mathrm{prof}} w prof ≤ a < 2 w prof and 0 ≤ h ≤ B p r o f 0\leq h\leq B_{\mathrm{prof}} 0 ≤ h ≤ B prof , and the endpoint 2 F p r o f 2F_{\mathrm{prof}} 2 F prof , over denominator F p r o f F_{\mathrm{prof}} F prof . It has J = O ~ ( 1 / z ) J=\widetilde{O}(1/z) J = O ( 1/ z ) entries. Rounding x x x down to this grid loses at most the fraction 1 / w p r o f 1/w_{\mathrm{prof}} 1/ w prof whenever 2 − B p r o f ≤ x ≤ 2 2^{-B_{\mathrm{prof}}}\leq x\leq2 2 − B prof ≤ x ≤ 2 .
At each leaf and each profit-grid value, retain the least exact resource tag among options rounded to that value, together with a reference to the selected option. Unreachable entries are explicitly absent. At an internal node enumerate pairs of reachable states, one from each child, add their represented profits and exact resource tags, round the profit sum down, and retain the least resource tag at each resulting profit-grid value. Store references to the two child states that attain this tag. At the root choose the largest profit-grid value whose resource tag satisfies the budget, and follow the stored references to recover its complete allocation. The resource tags are never rounded.
For any actual tuple of choices on a subtree of height r r r , induction gives a retained state with no larger tag and represented profit at least ( 1 − 1 / w p r o f ) r + 1 (1-1/w_{\mathrm{prof}})^{r+1} ( 1 − 1/ w prof ) r + 1 times its true profit. At a merge, the two children have the same height, tag addition preserves order, and one further rounding supplies the next factor. Conversely every state has an actual predecessor tuple whose profit is at least its represented value. No positive sum is rounded to zero: before applying the relative bound at any positive internal sum, the preceding inductive bound is at least
( 1 − 1 / w p r o f ) h 0 + 1 Q p r o f ≥ 3 4 Q p r o f > 2 − B p r o f . \frac{(1-1/w_{\mathrm{prof}})^{h_0+1}}{Q_{\mathrm{prof}}}\geq\frac{3}{4Q_{\mathrm{prof}}}>2^{-B_{\mathrm{prof}}}. Q prof ( 1 − 1/ w prof ) h 0 + 1 ≥ 4 Q prof 3 > 2 − B prof .
The selected allocation therefore loses at most 2 ( h 0 + 1 ) / w p r o f ≤ α / 2 2(h_0+1)/w_{\mathrm{prof}}\leq\alpha/2 2 ( h 0 + 1 ) / w prof ≤ α /2 in the rounded objective compared with the best feasible allocation. For a selected response allocation, the algorithm adds Δ p h y s \Delta_{\mathrm{phys}} Δ phys at every open choice and checks the sum of the resulting bids against the budget.
The balanced tree also controls the number of bit operations. At a node whose subtree contains j j j battlefields, an exact resource tag may require O ( j Λ ) O(j\Lambda) O ( j Λ ) bits; it is not uniformly an O ( Λ ) O(\Lambda) O ( Λ ) -bit quantity. There are O ( m / j ) O(m/j) O ( m / j ) such nodes at that level, each examining O ( J 2 ) O(J^2) O ( J 2 ) pairs of child states. Summing over levels gives O ~ ( m Λ J 2 ) \widetilde{O}(m\Lambda J^2) O ( m Λ J 2 ) bit operations per optimization, with O ~ ( m Λ J ) \widetilde{O}(m\Lambda J) O ( m Λ J ) bits for the states and predecessors. Pair sums are generated as needed, not stored in a quadratic table.
Rounded positive arithmetic and interval trees
The CDF summaries must approximate the distributions after all preceding updates, even though we store their weights approximately. We prove an error bound that depends on the tree depth and accumulated update levels, without an additional factor for the number of times a stored mass was recomputed. Write u f p = 2 1 − p m a n t u_{\mathrm{fp}} = 2^{1-p_{\mathrm{mant}}} u fp = 2 1 − p mant . A positive stored number has a p m a n t p_{\mathrm{mant}} p mant -bit normalized mantissa, an encoded signed exponent, and a separate marker for zero. If x x x is the exact result of a positive addition or multiplication, its stored approximation satisfies
( 1 − u f p ) x ≤ fl ( x ) ≤ x . (1-u_{\mathrm{fp}})x \le\operatorname{fl}(x) \le x. ( 1 − u fp ) x ≤ fl ( x ) ≤ x .
Positive values are never rounded to zero: the exponent is stored as an integer with the bit-length bound proved below, rather than restricted to a fixed hardware range. The base a g e o m = 1 − ξ a_{\mathrm{geom}} = 1-\xi a geom = 1 − ξ is exactly representable because the precision choice implies p m a n t ≥ log 2 ( 1 / ξ ) + 20 p_{\mathrm{mant}} \ge\log_2(1/\xi)+20 p mant ≥ log 2 ( 1/ ξ ) + 20 . Repeated squaring gives a shared table of the powers a g e o m 2 i a_{\mathrm{geom}}^{2^i} a geom 2 i , rounded down at each multiplication. To evaluate a g e o m a a_{\mathrm{geom}}^a a geom a for an integer exponent 0 ≤ a ≤ G 0 \le a \le G 0 ≤ a ≤ G , multiply the table entries selected by the binary expansion of a a a , starting at exact one. Induction over squarings and these multiplications gives
( 1 − u f p ) a g e o m a ≤ Pow ( a ) ≤ a g e o m a , Pow ( 0 ) = 1. (25) (1-u_{\mathrm{fp}})a_{\mathrm{geom}}^a \le\operatorname{Pow}(a) \le a_{\mathrm{geom}}^a,\qquad\operatorname{Pow}(0)=1. \tag*{(25)} ( 1 − u fp ) a geom a ≤ Pow ( a ) ≤ a geom a , Pow ( 0 ) = 1. (25)
Represent each component by a binary tree of intervals of its ordered codes: the root covers all its codes, and each split bisects an interval. A node v v v represents an interval I v I_v I v and stores an exact nonnegative offset a v a_v a v , an approximate mass M v M_v M v , and either two child pointers or a marker declaring its interval uniform. A uniform leaf means that all its codes have the same accumulated level; its subintervals are created only when an update distinguishes them. The cached value M v M_v M v approximates B v B_v B v , defined without the node’s own offset:
B v = { ∣ I v ∣ at a uniform leaf , a g e o m a L B L + a g e o m a R B R otherwise . B_v =
\begin{cases}
|I_v| & \text{at a uniform leaf},\\
a_{\mathrm{geom}}^{a_L}B_L+a_{\mathrm{geom}}^{a_R}B_R & \text{otherwise}.
\end{cases} B v = { ∣ I v ∣ a geom a L B L + a geom a R B R at a uniform leaf , otherwise .
If A v A_v A v is the sum of offsets from the root through v v v , the node’s true global mass is a g e o m A v B v a_{\mathrm{geom}}^{A_v}B_v a geom A v B v . An update covering the node’s entire interval adds its integer level only to a v a_v a v . A partial update splits a uniform leaf into children with offset zero, retaining the old offset at the parent, then recurses. To recompute the parent’s mass, round each product Pow ( a L ) M L \operatorname{Pow}(a_L)M_L Pow ( a L ) M L and Pow ( a R ) M R \operatorname{Pow}(a_R)M_R Pow ( a R ) M R , then round their sum. The previously stored parent mass is not used in this recomputation. No offset is pushed down or redistributed.
Each code’s path sum equals its accumulated update level and is at most G G G . For a node of remaining height h v h_v h v , structural induction proves
( 1 − u f p ) ( G + 2 ) h v B v ≤ M v ≤ B v . (26) (1-u_{\mathrm{fp}})^{(G+2)h_v}B_v \le M_v \le B_v. \tag*{(26)} ( 1 − u fp ) ( G + 2 ) h v B v ≤ M v ≤ B v . (26)
A leaf is exact. When recomputing an internal node, the children’s error bound contributes at most ( G + 2 ) ( h v − 1 ) (G+2)(h_v-1) ( G + 2 ) ( h v − 1 ) to the exponent of 1 − u f p 1-u_{\mathrm{fp}} 1 − u fp , the power evaluation contributes at most G G G , and the multiplication and addition contribute two more. An update covering the node’s entire interval leaves B v B_v B v and its stored approximation unchanged. Thus earlier recomputations of stored masses require no additional error allowance. The approximate total mass used for normalization is fl ( Pow ( a r o o t ) M r o o t ) \operatorname{fl}(\operatorname{Pow}(a_{\mathrm{root}})M_{\mathrm{root}}) fl ( Pow ( a root ) M root ) , including the root’s own offset.
For each quantile target i / s i/s i / s , i = 1 , … , s i=1,\ldots,s i = 1 , … , s , descend from the root by repeatedly choosing one of the two code intervals. Accumulate an approximate prefix mass, compare the prefix through the left child with i / s i/s i / s times the freshly computed total mass, and select the corresponding half. If the descent reaches a uniform leaf before a single code, continue bisecting its interval and halve its mass without creating stored child nodes.
To evaluate a node’s global mass during a query, sum its path offsets exactly and compute fl ( Pow ( A v ) M v ) \operatorname{fl}(\operatorname{Pow}(A_v)M_v) fl ( Pow ( A v ) M v ) . Each tree has depth at most Λ + 1 \Lambda+1 Λ + 1 , so (25) and (26) bound this approximation below by the true mass times ( 1 − u f p ) ( G + 2 ) ( Λ + 1 ) + G + 1 (1-u_{\mathrm{fp}})^{(G+2)(\Lambda+1)+G+1} ( 1 − u fp ) ( G + 2 ) ( Λ + 1 ) + G + 1 . A prefix sums at most Λ + 2 \Lambda+2 Λ + 2 such masses, so rounding the additions contributes at most Λ + 1 \Lambda+1 Λ + 1 further factors of 1 − u f p 1-u_{\mathrm{fp}} 1 − u fp . Allowing one more factor for multiplying the normalizer by i / s i/s i / s gives a total exponent at most ( G + 3 ) ( Λ + 2 ) ≤ E (G+3)(\Lambda+2)\le E ( G + 3 ) ( Λ + 2 ) ≤ E . Halving the mass of a uniform leaf is exact in the stored representation. By 1 − ( 1 − u f p ) r ≤ r u f p 1-(1-u_{\mathrm{fp}})^r\le ru_{\mathrm{fp}} 1 − ( 1 − u fp ) r ≤ r u fp , all queried global masses, prefixes, normalizers, and scaled normalizers therefore have relative downward error at most e 0 = E u f p ≤ ν / 64 e_0=E u_{\mathrm{fp}}\le\nu/64 e 0 = E u fp ≤ ν /64 . Consequently a normalized comparison has error at most δ q = 2 e 0 / ( 1 − e 0 ) < ν / 16 \delta_q=2e_0/(1-e_0)<\nu/16 δ q = 2 e 0 / ( 1 − e 0 ) < ν /16 . Maintain a bracket [ L , R ) [L,R) [ L , R ) satisfying
F p ( L − 1 ) ≤ i / s + δ q , F p ( R − 1 ) ≥ i / s − δ q . F_p(L-1)\le i/s+\delta_q,\qquad F_p(R-1)\ge i/s-\delta_q. F p ( L − 1 ) ≤ i / s + δ q , F p ( R − 1 ) ≥ i / s − δ q .
Each comparison preserves the appropriate endpoint inequality, even if the rounded comparisons are not monotone. At the final code a i a_i a i these inequalities give
F p ( a i − 1 ) ≤ i / s + δ q , F p ( a i ) ≥ i / s − δ q . F_p(a_i-1)\le i/s+\delta_q,\qquad F_p(a_i)\ge i/s-\delta_q. F p ( a i − 1 ) ≤ i / s + δ q , F p ( a i ) ≥ i / s − δ q .
To see why these inequalities control the summary’s CDF, fix a code threshold a a a . A target i / s < F p ( a ) − δ q i/s<F_p(a)-\delta_q i / s < F p ( a ) − δ q must select a code a i ≤ a a_i\le a a i ≤ a , since a i > a a_i>a a i > a would violate the first inequality. Conversely, a target i / s > F p ( a ) + δ q i/s>F_p(a)+\delta_q i / s > F p ( a ) + δ q must select a i > a a_i>a a i > a by the second inequality. Counting the s s s equally spaced targets, with repeated selected codes counted separately, bounds the summary’s CDF error by 1 / s + δ q < ν 1/s+\delta_q<\nu 1/ s + δ q < ν . The codes of a signed component are traversed as one ordered interval, so its two signs share a normalizer. Zero prefix masses are represented exactly, and Pow ( 0 ) \operatorname{Pow}(0) Pow ( 0 ) is returned as exact one.
A contiguous range update visits and creates O ( Λ ) O(\Lambda) O ( Λ ) nodes. There are O ( s + k e p ) O(s+k_{\mathrm{ep}}) O ( s + k ep ) interval updates per epoch and component, so
B t r e e = 1 + 64 ( M e p + 1 ) ( s + k e p + 4 ) ( Λ + 2 ) B_{\mathrm{tree}}=1+64(M_{\mathrm{ep}}+1)(s+k_{\mathrm{ep}}+4)(\Lambda+2) B tree = 1 + 64 ( M ep + 1 ) ( s + k ep + 4 ) ( Λ + 2 )
suffices as a deterministic per-tree node bound. Nodes store offsets, mantissas, exponents, and pointers; interval endpoints are retained only on the current traversal stack instead of being stored as Λ \Lambda Λ -bit keys in every node. Local levels, exponents and addresses use O ( log ( Λ + 2 ) + log ( 1 / z ) ) O(\log(\Lambda+2)+\log(1/z)) O ( log ( Λ + 2 ) + log ( 1/ z )) bits. The precision is p m a n t = O ( log ( Λ + 2 ) + log ( 1 / z ) ) p_{\mathrm{mant}}=O(\log(\Lambda+2)+\log(1/z)) p mant = O ( log ( Λ + 2 ) + log ( 1/ z )) . All these bounds hold also during the disjoint interval updates within an epoch.
Proof of the accuracy bounds in Lemma 5.7
Proof. At the start of an epoch, the uniformly weighted summary approximates the full distribution to CDF error less than ν \nu ν . During the epoch, both distributions are multiplied by the same code-dependent weights and renormalized. We show that the summary remains accurate after these updates. The ordered variation TV ( g ) \operatorname{TV}(g) TV ( g ) is the sum of absolute differences between consecutive values of a function g g g on the ordered codes of a component. Each executed loss g ^ t \widehat g_t g t has ordered variation at most four. For the losses of p p p and q q q , this follows from the monotonicity of CDFs and the tail probabilities for each sign. For a signed loss, write g ( a ) = 1 { x ≤ a } − c ( a ) g(a)=\mathbf{1}\{x\le a\}-c(a) g ( a ) = 1 { x ≤ a } − c ( a ) , where c c c is a rounded CDF with final value one. Then g ( U c o d e − 1 ) = 0 g(U_{\mathrm{code}}-1)=0 g ( U code − 1 ) = 0 and TV ( g ) ≤ 2 − ∣ g ( 0 ) ∣ \operatorname{TV}(g)\le2-|g(0)| TV ( g ) ≤ 2 − ∣ g ( 0 ) ∣ (if x = 0 x=0 x = 0 , the sharper bound TV ( g ) = g ( 0 ) \operatorname{TV}(g)=g(0) TV ( g ) = g ( 0 ) holds). The concatenation ( g , − g ) (g,-g) ( g , − g ) has variation 2 TV ( g ) + ∣ g ( 0 ) ∣ ≤ 4 2\operatorname{TV}(g)+|g(0)|\le4 2 TV ( g ) + ∣ g ( 0 ) ∣ ≤ 4 . Thus after l ≤ k e p l\le k_{\mathrm{ep}} l ≤ k ep iterations the local level L l L_l L l satisfies
0 ≤ L l ≤ 8 l / θ , TV ( L l ) ≤ 8 l / θ . 0\le L_l\le8l/\theta,\qquad\operatorname{TV}(L_l)\le8l/\theta. 0 ≤ L l ≤ 8 l / θ , TV ( L l ) ≤ 8 l / θ .
For the multiplicative reweighting function φ l = a g e o m L l \varphi_l=a_{\mathrm{geom}}^{L_l} φ l = a geom L l , Bernoulli’s inequality and telescoping adjacent integer powers give
1 − 4 η l ≤ φ l ≤ 1 , TV ( φ l ) ≤ 4 η l ≤ 1 / 4096. 1-4\eta l\le\varphi_l\le1,\qquad\operatorname{TV}(\varphi_l)\le4\eta l\le1/4096. 1 − 4 η l ≤ φ l ≤ 1 , TV ( φ l ) ≤ 4 η l ≤ 1/4096.
In particular φ l ≥ 31 / 32 \varphi_l \ge31/32 φ l ≥ 31/32 .
Let Ψ \Psi Ψ be the difference between the summary distribution and the full distribution of a component at the beginning of the epoch; its total mass is zero, and the absolute mass of every prefix is at most ν \nu ν . Writing ⟨ φ , Ψ ⟩ = ∑ a φ ( a ) Ψ ( a ) \langle\varphi,\Psi\rangle= \sum_a \varphi(a)\Psi(a) ⟨ φ , Ψ ⟩ = ∑ a φ ( a ) Ψ ( a ) for this single component, summation by parts gives
∣ ⟨ φ l , Ψ ⟩ ∣ ≤ ν TV ( φ l ) , ∣ ⟨ φ l 1 ( − ∞ , a ] , Ψ ⟩ ∣ ≤ ν ( TV ( φ l ) + ∥ φ l ∥ ∞ ) . \left|\langle\varphi_l,\Psi\rangle\right| \le\nu\operatorname{TV}(\varphi_l), \qquad\left|\langle\varphi_l\mathbf{1}_{(-\infty,a]},\Psi\rangle\right| \le\nu\left(\operatorname{TV}(\varphi_l) + \|\varphi_l\|_\infty\right). ∣ ⟨ φ l , Ψ ⟩ ∣ ≤ ν TV ( φ l ) , ⟨ φ l 1 ( − ∞ , a ] , Ψ ⟩ ≤ ν ( TV ( φ l ) + ∥ φ l ∥ ∞ ) .
Both distributions have total reweighted mass at least 31 / 32 31/32 31/32 , so normalization bounds the CDF distance between them by 34 ν / 31 34\nu/31 34 ν /31 . Fresh power evaluations in (25) add less than ν / 128 \nu/128 ν /128 after normalization. The local powers lie in [ 1 / 2 , 1 ] [1/2,1] [ 1/2 , 1 ] , so their numerators can all be summed exactly over denominator 2 p m a n t 2^{p^{\mathrm{mant}}} 2 p mant ; exact one uses numerator 2 p m a n t 2^{p^{\mathrm{mant}}} 2 p mant . The reweighted summary therefore has CDF error less than 5 ν 5\nu 5 ν relative to the full distribution at that iteration. The bounds hold for the sequence of losses generated by the algorithm, even though each loss depends on earlier updates.
Each signed tail is the difference between the probabilities of two intervals in the ordered codes, one for each sign. The preceding error, followed by rounding each term separately, implies
∥ g t − g ^ t ∥ ∞ ≤ ϵ g = 25 ν + 3 θ = 49 α / 128. \|g_t-\widehat{g}_t\|_\infty\le\epsilon_g = 25\nu+ 3\theta= 49\alpha/128. ∥ g t − g t ∥ ∞ ≤ ϵ g = 25 ν + 3 θ = 49 α /128.
Comparing the objectives computed from rounded and exact tail probabilities at both the optimal and returned allocations, and applying Appendix § 10 .§ 2 , gives
max x ∈ X λ t ⋅ F x − λ t ⋅ F x t ≤ β o p t , β o p t = α + 40 ν + 4 θ = 25 α / 16. \max_{x\in X}\lambda_t\cdot F_x-\lambda_t\cdot F_{x_t} \le\beta_{\mathrm{opt}}, \qquad\beta_{\mathrm{opt}}=\alpha+40\nu+4\theta=25\alpha/16. x ∈ X max λ t ⋅ F x − λ t ⋅ F x t ≤ β opt , β opt = α + 40 ν + 4 θ = 25 α /16.
and the same bound for Y Y Y , μ t \mu_t μ t , y t y_t y t . Battlefield values sum to one, so neither error gains a factor m m m .
With the rate κ ∈ [ η , 2 η ] \kappa\in[\eta,2\eta] κ ∈ [ η , 2 η ] from Appendix § 10 .§ 1 , the normalized update of a component p p p with loss g ^ \widehat{g} g is p + ( a ) = p ( a ) e − κ g ^ ( a ) / Z p^+(a)=p(a)e^{-\kappa\widehat{g}(a)}/Z p + ( a ) = p ( a ) e − κ g ( a ) / Z , where Z Z Z normalizes. Write KL ( p ∥ q ) = ∑ x p ( x ) log ( p ( x ) / q ( x ) ) \operatorname{KL}(p\|q)=\sum_x p(x)\log(p(x)/q(x)) KL ( p ∥ q ) = ∑ x p ( x ) log ( p ( x ) / q ( x )) for relative entropy. For any test distribution p ⋆ p^\star p ⋆ and ∣ g ^ ∣ ≤ M g |\widehat{g}|\le M_g ∣ g ∣ ≤ M g , the inequalities e x ≤ 1 + x + x 2 e^x\le1+x+x^2 e x ≤ 1 + x + x 2 for ∣ x ∣ ≤ 1 / 2 |x|\le1/2 ∣ x ∣ ≤ 1/2 and log x ≤ x − 1 \log x\le x-1 log x ≤ x − 1 give
KL ( p ⋆ ∥ p ) − KL ( p ⋆ ∥ p + ) ≥ κ ⟨ g ^ , p − p ⋆ ⟩ − κ 2 M g 2 . \operatorname{KL}(p^\star\|p)-\operatorname{KL}(p^\star\|p^+) \ge\kappa\langle\widehat{g},p-p^\star\rangle-\kappa^2M_g^2. KL ( p ⋆ ∥ p ) − KL ( p ⋆ ∥ p + ) ≥ κ ⟨ g , p − p ⋆ ⟩ − κ 2 M g 2 .
The four squared magnitude bounds sum to 4 + 4 + 1 + 1 = 10 4+4+1+1=10 4 + 4 + 1 + 1 = 10 . For a uniform initial distribution p 1 p_1 p 1 on at most 2 Λ + 1 2^{\Lambda+1} 2 Λ + 1 choices, KL ( p ⋆ ∥ p 1 ) ≤ Λ + 1 \operatorname{KL}(p^\star\|p_1)\le\Lambda+1 KL ( p ⋆ ∥ p 1 ) ≤ Λ + 1 for every test distribution p ⋆ p^\star p ⋆ . The four families, weighted by battlefield values summing to one, therefore contribute at most 4 ( Λ + 1 ) 4(\Lambda+1) 4 ( Λ + 1 ) to the initial relative-entropy bound. Summing the four inequalities over T T T iterations and replacing executed losses by their true versions bounds their total average regret by
4 ( Λ + 1 ) η T + 20 η + 8 ϵ g . \frac{4(\Lambda+1)}{\eta T}+20\eta+8\epsilon_g. η T 4 ( Λ + 1 ) + 20 η + 8 ϵ g .
The logarithm and exponential here are analysis only, not algorithmic primitives.
Set
R = 4 ( Λ + 1 ) η T + 20 η + 8 ϵ g . R=\frac{4(\Lambda+1)}{\eta T}+20\eta+8\epsilon_g. R = η T 4 ( Λ + 1 ) + 20 η + 8 ϵ g .
The preceding argument bounds the sum of the four average regrets by R R R uniformly over their fixed comparison distributions. The exact-objective optimization bound above supplies β o p t \beta_{\mathrm{opt}} β opt for both feasible allocations. Substituting the parameters of Appendix § 9 .§ 2 gives
R + 2 β o p t < 1443 16 α < z / 64. R+2\beta_{\mathrm{opt}}<\frac{1443}{16}\alpha<z/64. R + 2 β opt < 16 1443 α < z /64.
This proves the accuracy assertions of Lemma 5.7 . Appendix § 12 .§ 5 proves its computation time and space assertions. The proof of Lemma 5.6 in the main text derives the guarantee for the retained complete allocations from these bounds. ▫
Exact transfer between budget ratios
This appendix gives the budget-transfer construction used in § 5.3 . We first specify which combinations of labels the new anchors must make unaffordable and prove the resulting payoff bound. We then choose the auxiliary ratio ρ \rho ρ and show how to compute suitable anchors.
Fix the player whose anchor table must change, with label table ( l i j ) (l_{ij}) ( l ij ) , normalized anchor table u u u , and opposing budgets β 0 < β \beta_0 < \beta β 0 < β at ratios ρ \rho ρ and b b b . The bids selected by each row of the label table spend at most one under u u u , and each label has probability 1 / K 1/K 1/ K on every battlefield. The new anchors will preserve the order of the labels, but need not preserve equalities between their old anchors. The parameters K K K , S S S , d d d , H H H , Q g Q_g Q g and q ˉ \bar q q ˉ are those in Appendix § 9 .§ 2 ; in particular, d = m ( K − 1 ) d = m(K - 1) d = m ( K − 1 ) and H = ( m + 3 ) d + 2 H = (m + 3)^{d+2} H = ( m + 3 ) d + 2 .
Payoff scores and the constraints on anchors
We measure the opponent’s payoff from beating combinations of labels by integer scores. Let S = pow2ceil ( 128 m / e ) S = \operatorname{pow2ceil}(128m/e) S = pow2ceil ( 128 m / e ) be the least power of two that is at least 128 m / e 128m/e 128 m / e , and for label l l l on battlefield j j j let
s j l = ⌊ S v ^ j ( l + 1 ) K ⌋ . s_{jl} = \left\lfloor\frac{S\hat v_j(l + 1)}{K} \right\rfloor. s j l = ⌊ K S v ^ j ( l + 1 ) ⌋ .
A bid above the anchors of labels 0 , … , l 0,\ldots,l 0 , … , l on battlefield j j j wins the value v ^ j \hat v_j v ^ j with probability at least ( l + 1 ) / K (l + 1)/K ( l + 1 ) / K , and s j l / S s_{jl}/S s j l / S rounds this payoff down. A tuple ( l 1 , … , l m ) (l_1,\ldots,l_m) ( l 1 , … , l m ) with one label per battlefield has score ∑ j s j l j \sum_j s_{jl_j} ∑ j s j l j and anchor sum ∑ j u j l j \sum_j u_{jl_j} ∑ j u j l j . Let h ∗ h_* h ∗ be the largest score of a tuple whose anchor sum is strictly less than β 0 \beta_0 β 0 . For such a tuple, the opponent can bid slightly more than u j l j u_{jl_j} u j l j on every battlefield j j j within the budget β 0 \beta_0 β 0 . This deviation beats every bid with label 0 , … , l j 0,\ldots,l_j 0 , … , l j on battlefield j j j , even if some of their anchors coincide. Its payoff is therefore at least ∑ j v ^ j ( l j + 1 ) / K ≥ ∑ j s j l j / S \sum_j \hat v_j(l_j + 1)/K \ge\sum_j s_{jl_j}/S ∑ j v ^ j ( l j + 1 ) / K ≥ ∑ j s j l j / S . Hence
h ∗ / S ≤ U v ^ ( u ; β 0 ) . (27) h_*/S \le U_{\hat v}(u;\beta_0). \tag*{(27)} h ∗ / S ≤ U v ^ ( u ; β 0 ) . (27)
A dynamic program over the battlefields computes, for each attainable score, the least anchor sum of a tuple with that score, and hence h ∗ h_* h ∗ (Appendix § 11 .§ 4 ).
The new anchor table u ′ u' u ′ should keep every allocation specified by the label table within the budget and make every tuple with score greater than h ∗ h_* h ∗ unaffordable for the opponent’s budget β \beta β . For γ ∈ R \gamma\in\mathbb{R} γ ∈ R , let P ( γ ) \mathcal{P}(\gamma) P ( γ ) be the set of anchor tables u ′ u' u ′ satisfying the following constraints:
on each battlefield j j j , u j 0 ′ = 0 u'_{j0} = 0 u j 0 ′ = 0 and u j l ′ ≤ u j , l + 1 ′ ≤ 1 u'_{jl} \le u'_{j,l+1} \le1 u j l ′ ≤ u j , l + 1 ′ ≤ 1 for 0 ≤ l < K − 1 0 \le l < K - 1 0 ≤ l < K − 1 ;
every row i i i of the label table satisfies ∑ j u j , l i j ′ ≤ 1 \sum_j u'_{j,l_{ij}} \le1 ∑ j u j , l ij ′ ≤ 1 ;
every tuple with score greater than h ∗ h_* h ∗ has anchor sum at least γ \gamma γ .
Each P ( γ ) \mathcal{P}(\gamma) P ( γ ) is a polytope in the d = m ( K − 1 ) d = m(K - 1) d = m ( K − 1 ) anchors of nonzero labels. The current table u u u lies in P ( β 0 ) \mathcal{P}(\beta_0) P ( β 0 ) , since by the definition of h ∗ h_* h ∗ , every tuple with score greater than h ∗ h_* h ∗ has anchor sum at least β 0 \beta_0 β 0 . We want a table in P ( γ ) \mathcal{P}(\gamma) P ( γ ) for some γ > β \gamma> \beta γ > β .
Lemma E.1. Let u ′ u' u ′ be an anchor table in P ( γ ) \mathcal{P}(\gamma) P ( γ ) for some γ > β \gamma> \beta γ > β , or the all-zero table if no tuple has score greater than h ∗ h_* h ∗ . Then every allocation specified by the label table spends at most one under u ′ u' u ′ , and
U v ^ ( u ′ ; β ) ≤ U v ^ ( u ; β 0 ) + m / S . U_{\hat v}(u';\beta) \le U_{\hat v}(u;\beta_0) + m/S. U v ^ ( u ′ ; β ) ≤ U v ^ ( u ; β 0 ) + m / S .
Proof. The second constraint keeps every allocation within the budget, and the all-zero table does so trivially. Suppose first that u ′ ∈ P ( γ ) u' \in P(\gamma) u ′ ∈ P ( γ ) with γ > β \gamma> \beta γ > β , and fix a deviation y y y with ∑ j y j ≤ β \sum_j y_j \le\beta ∑ j y j ≤ β . On battlefield j j j , let l j l_j l j be the largest label whose new anchor is at most y j y_j y j . Such a label exists because label zero has anchor zero. Since the new anchors are nondecreasing in the label, the player’s bid on battlefield j j j is at most y j y_j y j exactly when its label is at most l j l_j l j , which has probability ( l j + 1 ) / K (l_j+1)/K ( l j + 1 ) / K . The opponent’s share of battlefield j j j is at most this probability. The tuple ( l 1 , … , l m ) (l_1,\ldots,l_m) ( l 1 , … , l m ) has anchor sum at most ∑ j y j ≤ β < γ \sum_j y_j \le\beta< \gamma ∑ j y j ≤ β < γ , so by the third constraint its score is at most h ∗ h_* h ∗ . Since v ^ j ( l j + 1 ) / K < ( s j l j + 1 ) / S \hat{v}_j(l_j+1)/K < (s_{jl_j}+1)/S v ^ j ( l j + 1 ) / K < ( s j l j + 1 ) / S for every j j j , the payoff of y y y is at most
∑ j v ^ j l j + 1 K < h ∗ + m S ≤ U v ^ ( u ; β 0 ) + m S . \sum_j \hat{v}_j \frac{l_j+1}{K} < \frac{h_*+m}{S} \le U_{\hat{v}}(u;\beta_0)+\frac{m}{S}. j ∑ v ^ j K l j + 1 < S h ∗ + m ≤ U v ^ ( u ; β 0 ) + S m .
where the last inequality is (27) . This holds for every feasible deviation, including deviations that tie with some anchors, and hence for the supremum. If no tuple has score greater than h ∗ h_* h ∗ , then h ∗ = ∑ j s j , K − 1 > S − m h_*=\sum_j s_{j,K-1}>S-m h ∗ = ∑ j s j , K − 1 > S − m , since s j , K − 1 > S v ^ j − 1 s_{j,K-1}>S\hat{v}_j-1 s j , K − 1 > S v ^ j − 1 . Thus ( h ∗ + m ) / S > 1 (h_*+m)/S>1 ( h ∗ + m ) / S > 1 , and the bound holds because every payoff is at most one.
We call the third family of inequalities defining P ( γ ) P(\gamma) P ( γ ) the score constraints . The order and row-budget inequalities are the static constraints , since they do not depend on γ \gamma γ . There may be exponentially many score constraints. A dynamic program tests all of them by finding, for each attainable score, the least anchor sum of a tuple with that score.
The following lemma supplies both the choice of ρ \rho ρ and the required anchor table. Its ratio is chosen before the lists of allocations are computed; the subsequent anchor adjustment uses those lists.
Lemma E.2. Using only b b b , m m m and e e e , the algorithm selects a rational ρ ∈ ( 0 , 1 ) \rho\in(0,1) ρ ∈ ( 0 , 1 ) with denominator at most q ˉ = 2 2 ⌈ 4 H 2 ⌉ \bar{q}=2^{2\lceil4H^2\rceil} q ˉ = 2 2 ⌈ 4 H 2 ⌉ , and determines which anchor table, if any, must change. In particular, log q ˉ = O ( d log ( m + 3 ) ) = O ( ( m / e ) log ( m + 2 ) ) \log\bar{q}=O(d\log(m+3))=O((m/e)\log(m+2)) log q ˉ = O ( d log ( m + 3 )) = O (( m / e ) log ( m + 2 )) . If a table must change, then for the rows and scores later obtained at this ρ \rho ρ , the algorithm either finds that no tuple has score greater than h ∗ h_* h ∗ or computes an anchor table in P ( γ ) P(\gamma) P ( γ ) for some γ > β \gamma>\beta γ > β , whose entries have O ( log H ) O(\log H) O ( log H ) bits.
A uniform bound on changes of feasibility
Write every constraint as a i u ′ ≤ b i 0 + γ b i 1 a_i u' \le b_i^0+\gamma b_i^1 a i u ′ ≤ b i 0 + γ b i 1 , where u ′ u' u ′ is the vector of the d d d variable anchors. Its coefficient row a i a_i a i is integral with ∥ a i ∥ 1 ≤ max { m , 2 } \lVert a_i\rVert_1\le\max\{m,2\} ∥ a i ∥ 1 ≤ max { m , 2 } , and b i 0 , b i 1 ∈ { − 1 , 0 , 1 } b_i^0,b_i^1\in\{-1,0,1\} b i 0 , b i 1 ∈ { − 1 , 0 , 1 } . For any d d d constraints whose coefficient rows form a nonsingular matrix M M M , solving them with equality gives the table
u M ( γ ) = M − 1 ( b M 0 + γ b M 1 ) . u_M(\gamma)=M^{-1}(b_M^0+\gamma b_M^1). u M ( γ ) = M − 1 ( b M 0 + γ b M 1 ) .
The slack of constraint i i i at this table is b i 0 + γ b i 1 − a i u M ( γ ) b_i^0+\gamma b_i^1-a_i u_M(\gamma) b i 0 + γ b i 1 − a i u M ( γ ) . Multiplying it by det M \det M det M gives an affine function c i 0 + c i 1 γ c_i^0+c_i^1\gamma c i 0 + c i 1 γ , whose coefficients are, up to sign, integer determinants of order d + 1 d+1 d + 1 formed from M M M , the row a i a_i a i , and the right-hand sides. The rows of these determinants have norms at most m + 2 m+2 m + 2 , so Hadamard’s inequality gives
∣ c i 0 ∣ , ∣ c i 1 ∣ < ( m + 2 ) d + 1 < H . |c_i^0|,|c_i^1|<(m+2)^{d+1}<H. ∣ c i 0 ∣ , ∣ c i 1 ∣ < ( m + 2 ) d + 1 < H .
The same bound covers the minors and cofactors of these constraint matrices. A slack that is not identically zero can vanish only at a rational γ \gamma γ whose numerator and denominator have absolute value less than H H H . We call such roots critical values of the opposing budget. For player A, where γ = t \gamma=t γ = t is the budget ratio, a slack that is not constant in t t t vanishes only at t = − c i 0 / c i 1 t=-c_i^0/c_i^1 t = − c i 0 / c i 1 . For player B, substituting γ = 1 / t \gamma= 1/t γ = 1/ t and multiplying by t > 0 t > 0 t > 0 gives the root t = − c i 1 / c i 0 t = -c_i^1/c_i^0 t = − c i 1 / c i 0 . Both roots have reduced denominator at most H H H ; we call them the critical ratios . If the relevant coefficient is zero, the slack has no positive root unless it is identically zero, and no division is needed. These bounds hold for every label table and score threshold, so they are available before either distribution is computed.
The root bound lets us continue a feasible vertex as the opposing budget changes. Suppose u M ( γ 0 ) u_M(\gamma_0) u M ( γ 0 ) is feasible and γ 0 \gamma_0 γ 0 is not critical. Every constraint slack is affine in γ \gamma γ , so it is either identically zero or strictly positive at γ 0 \gamma_0 γ 0 . If no critical value lies strictly between γ 0 \gamma_0 γ 0 and γ 1 \gamma_1 γ 1 , no positive slack can become negative before γ 1 \gamma_1 γ 1 . By continuity, every slack is nonnegative at γ 1 \gamma_1 γ 1 , even if γ 1 \gamma_1 γ 1 itself is critical. Thus u M ( γ 1 ) u_M(\gamma_1) u M ( γ 1 ) is feasible. The remaining construction selects such an interval and finds a defining matrix M M M without enumerating the score constraints.
Choosing the auxiliary budget ratio
Construct the integer j = ⌊ Q g b ⌋ j = \lfloor Q_g b \rfloor j = ⌊ Q g b ⌋ and the rationals
b − = j / Q g , b + = ( j + 1 ) / Q g , b ∘ = ( 2 j + 1 ) / ( 2 Q g ) . b_- = j/Q_g,\qquad b_+ = (j+1)/Q_g,\qquad b_\circ= (2j+1)/(2Q_g). b − = j / Q g , b + = ( j + 1 ) / Q g , b ∘ = ( 2 j + 1 ) / ( 2 Q g ) .
The closed interval [ b − , b + ] [b_-, b_+] [ b − , b + ] contains b b b , has width 1 / Q g ≤ 1 / ( 4 H 2 ) 1/Q_g \le1/(4H^2) 1/ Q g ≤ 1/ ( 4 H 2 ) , and therefore contains at most one rational with denominator at most H H H . Call it ζ \zeta ζ if it exists. The midpoint b ∘ b_\circ b ∘ has reduced denominator 2 Q g > H 2Q_g > H 2 Q g > H . If ζ \zeta ζ exists, its distance from b ∘ b_\circ b ∘ is less than 1 / ( 2 denom ( ζ ) 2 ) 1/(2\operatorname{denom}(\zeta)^2) 1/ ( 2 denom ( ζ ) 2 ) , so by Legendre’s theorem it is a convergent of the continued fraction of b ∘ b_\circ b ∘ . A later convergent with denominator at most H H H would be closer to b ∘ b_\circ b ∘ and hence also in [ b − , b + ] [b_-, b_+] [ b − , b + ] , contradicting uniqueness. Thus compute the last convergent of b ∘ b_\circ b ∘ with denominator at most H H H and test its membership in the closed interval.
The rule below selects ρ \rho ρ and, when an anchor table must change, a target ratio t t t on the other side of b b b . We will continue the anchors from ρ \rho ρ to t t t , so that the resulting opposing budget exceeds the one required at b b b . After normalizing the player’s budget to one, the opposing budget at t t t is t t t for player A A A and 1 / t 1/t 1/ t for player B B B when t > 0 t > 0 t > 0 . Apply the following cases in their displayed order.
Table 7.
Every auxiliary budget ratio selected by this rule lies strictly between zero and one. For example, b < ζ b < \zeta b < ζ cannot have b − = 0 b_- = 0 b − = 0 , since zero and ζ \zeta ζ would be two rationals with denominator at most H H H in [ b − , b + ] [b_-, b_+] [ b − , b + ] ; the same argument excludes b + = 1 b_+ = 1 b + = 1 when b > ζ b > \zeta b > ζ . If ζ \zeta ζ is absent, neither endpoint of the interval is zero or one. The selected ratio is represented as ρ = p / q \rho= p/q ρ = p / q with known integers 0 < p < q ≤ q ˉ 0 < p < q \le\bar{q} 0 < p < q ≤ q ˉ , which need not be relatively prime. In a case that changes a table, the reduced denominator of ρ \rho ρ is greater than H H H , so the opponent’s budget β 0 \beta_0 β 0 , which is ρ \rho ρ for player A A A and 1 / ρ 1/\rho 1/ ρ for player B B B , is not critical. No critical ratio lies strictly between this ρ \rho ρ and t t t . The ratio t t t gives γ = t > b \gamma= t > b γ = t > b when A A A ’s anchor table changes and γ = 1 / t > 1 / b \gamma= 1/t > 1/b γ = 1/ t > 1/ b when B B B ’s anchor table changes, provided t > 0 t > 0 t > 0 in the latter case. The case t = 0 t = 0 t = 0 , which can occur only for player B B B , is handled in Appendix § 11 .§ 4 before a reciprocal is formed.
The input b b b is used only in the initial quotient and in a constant number of comparisons with constructed rationals of O ( log H ) O(\log H) O ( log H ) bits. The continued-fraction computation uses O ( log H ) O(\log H) O ( log H ) real-RAM operations and O ~ ( log 2 H ) \widetilde{O}(\log^2 H) O ( log 2 H ) bit operations on integers of that length.
Computing the score threshold and a feasible starting point
The score dynamic program processes the battlefields in order and stores, for every attainable partial score, the least partial anchor sum under the normalized anchor table u u u , together with the label that attains it. After the last battlefield, h ∗ h_* h ∗ is the largest score whose least anchor sum is strictly less than β 0 \beta_0 β 0 ; it exists because the tuple of zero labels has anchor sum 0 < β 0 0 < \beta_0 0 < β 0 . This takes O ( m K S ′ ) O(mKS') O ( m K S ′ ) arithmetic operations on anchor sums of up to O ( m Λ ) O(m\Lambda) O ( m Λ ) bits. By the definition of h ∗ h_* h ∗ , the table u u u lies in P ( β 0 ) \mathcal{P}(\beta_0) P ( β 0 ) .
Let s max = ∑ j s j , K − 1 s_{\max} = \sum_j s_{j,K-1} s m a x = ∑ j s j , K − 1 . If h ∗ = s max h_* = s_{\max} h ∗ = s m a x , no tuple has score greater than h ∗ h_* h ∗ , and the algorithm returns the all-zero anchor table, as allowed by Lemma E.1. In particular, this case occurs whenever the table of player B B B changes with t = 0 t = 0 t = 0 . Indeed, the selection rule then chooses ρ = 1 / Q g \rho= 1/Q_g ρ = 1/ Q g , every bid of player B B B before normalization is at most ρ \rho ρ , and any choice of one unnormalized anchor per battlefield sums to at most m ρ < 1 m\rho< 1 m ρ < 1 , below player A A A ’s budget. All tuples are therefore strictly affordable, and h ∗ = s max h_* = s_{\max} h ∗ = s m a x . Thus, if a tuple has score greater than h ∗ h_* h ∗ when B B B ’s table changes, then t > 0 t > 0 t > 0 .
In the remaining case, set
N = 4 m H p q , τ = m / N , γ 0 = β 0 − τ , u j l 0 = ⌊ N u j l ⌋ / N . (28) N = 4mHpq,\qquad\tau= m/N,\qquad\gamma_0 = \beta_0 - \tau,\qquad u^0_{jl} = \lfloor Nu_{jl}\rfloor/N. \tag*{(28)} N = 4 m H pq , τ = m / N , γ 0 = β 0 − τ , u j l 0 = ⌊ N u j l ⌋ / N . (28)
Both N ρ = 4 m H p 2 N\rho= 4mHp^2 N ρ = 4 m H p 2 and N / ρ = 4 m H q 2 N/\rho= 4mHq^2 N / ρ = 4 m H q 2 are integers, even when p p p and q q q are not relatively prime. Rounding down preserves the zero anchors, the nondecreasing order of the anchors, the bounds 0 ≤ u j l 0 ≤ 1 0 \le u^0_{jl} \le1 0 ≤ u j l 0 ≤ 1 , and the budget of every row. The anchor sum of a tuple with score greater than h ∗ h_* h ∗ decreases by less than m / N = τ m/N = \tau m / N = τ , so it stays above γ 0 \gamma_0 γ 0 . Hence u 0 ∈ P ( γ 0 ) u^0 \in\mathcal{P}(\gamma_0) u 0 ∈ P ( γ 0 ) .
By Appendix § 11 .§ 2 , every critical value of γ \gamma γ is a rational whose numerator and denominator have absolute value less than H H H . Write β 0 = p β / q β \beta_0 = p_\beta/q_\beta β 0 = p β / q β , using ( p , q ) (p,q) ( p , q ) or ( q , p ) (q,p) ( q , p ) as appropriate. For every critical value p ′ / q ′ p'/q' p ′ / q ′ different from β 0 \beta_0 β 0 ,
∣ β 0 − p ′ / q ′ ∣ ≥ 1 / ( q β H ) ≥ 4 τ . \lvert\beta_0 - p'/q' \rvert\ge1/(q_\beta H) \ge4\tau. ∣ β 0 − p ′ / q ′ ∣ ≥ 1/ ( q β H ) ≥ 4 τ .
Since β 0 \beta_0 β 0 is not critical, no value in [ γ 0 , β 0 ] [\gamma_0,\beta_0] [ γ 0 , β 0 ] is critical; moreover, γ 0 > 0 \gamma_0 > 0 γ 0 > 0 . This small decrease of the threshold lets the computation start from anchors with the common denominator N N N while keeping all static and score constraints.
Finding a defining constraint basis
We now find a vertex of P ( γ 0 ) \mathcal{P}(\gamma_0) P ( γ 0 ) , starting from u 0 u^0 u 0 . Number the d d d variable anchors as coordinates 1 , … , d 1,\ldots,d 1 , … , d . At stage j j j , the algorithm retains j j j linearly independent constraints that are tight at the current point and whose coefficient columns 1 , … , j 1,\ldots,j 1 , … , j form an invertible matrix M j M_j M j . The current point keeps the coordinates after j j j at their values in u 0 u^0 u 0 and solves the retained equations for the first j j j coordinates; at stage zero it is u 0 u^0 u 0 . The algorithm moves from this point in the direction in which coordinate j + 1 j+1 j + 1 has velocity one, the later coordinates have velocity zero, and the first j j j velocities keep the retained constraints tight. Every slack is affine along this ray, and the feasible part of the ray is a closed interval of length at most one, because coordinate j + 1 j+1 j + 1 is at most one. At its right endpoint, some constraint whose slack decreases along the ray is tight; otherwise a further step would be feasible. The derivative of this slack is, up to sign, the Schur complement of the new constraint row in column j + 1 j+1 j + 1 , so it is nonzero, and appending the row keeps the retained rows independent, even if the step length is zero. After d d d stages, d d d independent constraints are tight at a feasible point, which is therefore a vertex. No full-dimensionality assumption is used.
To find the endpoint of a ray, first scan the static constraints once. This scan costs C s = O ( d + m T ) C_s = O(d+mT) C s = O ( d + m T ) and gives the largest step λ s \lambda_s λ s that these constraints allow, together with a static constraint that is tight there. At λ s \lambda_s λ s , test the score constraints with the score dynamic program over all scores 0 , … , S 0,\ldots,S 0 , … , S ; they hold exactly when the least anchor sum at each attainable score greater than h ∗ h_* h ∗ is at least γ 0 \gamma_0 γ 0 . This test at a fixed rational point costs C r = O ~ ( m K S ) C_r=\widetilde{O}(mKS) C r = O ( m K S ) arithmetic operations. If it passes, the static constraint found by the scan is the required tight constraint. Otherwise, keep the bracket [ 0 , λ s ] [0,\lambda_s] [ 0 , λ s ] : its left endpoint is feasible, while its right endpoint violates a score constraint. Every point in this bracket satisfies the static constraints, so later tests need only check the score constraints.
Within this bracket, each anchor is affine in the step length. Process the score dynamic program one battlefield at a time. Once the minimizing choices for the preceding battlefields are fixed on the current open bracket, each attainable target score has at most K K K candidate predecessors, each giving an affine function of the step length. Enumerate the pairwise crossings of these functions in the bracket, and sort and deduplicate them. A binary search through the sorted crossings and the bracket endpoints, using the feasibility test at each tested point, finds adjacent points of which the left is feasible and the right is not; the bracket shrinks to the open interval between them. On this interval no ordering of candidates changes, so evaluating at an interior point identifies each minimizing affine function and its predecessor. Proceed to the next battlefield. After all battlefields, apply the same procedure to the crossings of the least anchor sum at each attainable score greater than h ∗ h_* h ∗ with γ 0 \gamma_0 γ 0 .
On the final open interval, all predecessor choices and all comparisons with γ 0 \gamma_0 γ 0 are fixed. Its right endpoint is infeasible and its left endpoint is feasible, so by continuity the interval is infeasible and the endpoint of the ray is its left endpoint. The fixed predecessors give a tuple with score greater than h ∗ h_* h ∗ whose score constraint is violated on the interval. This constraint is tight at the left endpoint, and its slack decreases along the ray, so it is the required tight constraint. Ties between identical affine functions are broken by a fixed order; equality in a score constraint is feasible. This procedure also covers repeated crossings and a step length of zero. Each battlefield uses O ( S K 2 ) O(SK^2) O ( S K 2 ) crossings and O ( log ( m S K + 2 ) ) O(\log(mSK+2)) O ( log ( m S K + 2 )) feasibility tests. Thus finding one ray endpoint costs
O ~ ( C s + m C r + m S K 2 ) . (29) \widetilde{O}(C_s+mC_r+mSK^2). \tag*{(29)} O ( C s + m C r + m S K 2 ) . (29)
Only one batch of crossings and one dynamic-programming table need to be stored at a time.
To avoid recomputing an inverse at each stage, the algorithm maintains det M j \det M_j det M j and the adjugate adj M j \operatorname{adj} M_j adj M j . When M j + 1 M_{j+1} M j + 1 is obtained from M j M_j M j by appending a column g \mathbf{g} g , a row h T \mathbf{h}^{\mathsf{T}} h T and a corner entry κ \kappa κ ,
det M j + 1 = κ det M j − h T ( adj M j ) g , \det M_{j+1}=\kappa\det M_j-\mathbf{h}^{\mathsf{T}}(\operatorname{adj} M_j)\mathbf{g}, det M j + 1 = κ det M j − h T ( adj M j ) g ,
adj M j + 1 = ( ( det M j + 1 adj M j + ( adj M j g ) ( h T adj M j ) ) / det M j − adj M j g − h T adj M j det M j ) . \operatorname{adj} M_{j+1}=
\begin{pmatrix}
(\det M_{j+1}\operatorname{adj} M_j+(\operatorname{adj} M_j\mathbf{g})(\mathbf{h}^{\mathsf{T}}\operatorname{adj} M_j))/\det M_j & -\operatorname{adj} M_j\mathbf{g}\\
-\mathbf{h}^{\mathsf{T}}\operatorname{adj} M_j & \det M_j
\end{pmatrix}. adj M j + 1 = ( ( det M j + 1 adj M j + ( adj M j g ) ( h T adj M j )) / det M j − h T adj M j − adj M j g det M j ) .
These divisions are exact integer divisions, and det M 0 = 1 \det M_0=1 det M 0 = 1 for the empty matrix. The matrix-vector products, these updates, and the right-hand sides of the retained constraints cost O ( j 2 + j d ) O(j^2+jd) O ( j 2 + j d ) operations at stage j j j , O ( d 3 ) O(d^3) O ( d 3 ) in total, with O ( d 2 ) O(d^2) O ( d 2 ) storage for the matrices. The current point at stage j j j has denominator dividing N det M j N\det M_j N det M j , and the velocities have denominator dividing det M j \det M_j det M j . After clearing common denominators, crossing points are ratios of integer coefficients of the affine differences being compared. The bounds on minors and on the number of terms in each affine sum control the bit lengths of these coefficients, and the tested midpoints combine two such crossing points. Thus all operands have bit length
Ω = O ( log N + d log ( m + 2 ) + log ( d + m + K + S + T + 2 ) ) = O ( Λ ) . \Omega=O(\log N+d\log(m+2)+\log(d+m+K+S+T+2))=O(\Lambda). Ω = O ( log N + d log ( m + 2 ) + log ( d + m + K + S + T + 2 )) = O ( Λ ) .
Temporary points are discarded after testing, and the current point of each new stage is solved afresh from the original constraint rows and u 0 \mathbf{u}^0 u 0 , so denominators do not accumulate across stages.
Evaluating the basis at the endpoint
The final basis gives the table u M ( γ ) = M − 1 ( b M 0 + γ b M 1 ) u_M(\gamma)=M^{-1}(b_M^0+\gamma b_M^1) u M ( γ ) = M − 1 ( b M 0 + γ b M 1 ) , which is feasible at γ = γ 0 \gamma=\gamma_0 γ = γ 0 . No value in [ γ 0 , β 0 ] [\gamma_0,\beta_0] [ γ 0 , β 0 ] is critical (Appendix § 11 .§ 4 ), and no value strictly between β 0 \beta_0 β 0 and the value of γ \gamma γ corresponding to t t t is critical (Appendix § 11 .§ 3 ). By the continuation argument in Appendix § 11 .§ 2 , every slack is nonnegative at the target threshold. The table evaluated there therefore satisfies every static and score constraint. The algorithm also verifies these constraints at the vertex and at the endpoint, with one static scan and one evaluation of the score dynamic program each.
For A A A ’s anchor table the resulting threshold is γ = t > b \gamma=t>b γ = t > b , and for B B B ’s anchor table it is γ = 1 / t > 1 / b \gamma=1/t>1/b γ = 1/ t > 1/ b . This strict inequality is the hypothesis of Lemma E.1, even if some anchors coincide at the endpoint. Each entry’s denominator divides denom ( t ) det M \operatorname{denom}(t)\det M denom ( t ) det M for A A A and numer ( t ) det M \operatorname{numer}(t)\det M numer ( t ) det M for B B B . The scale N N N does not appear in this expression, because the right-hand sides of the constraints contain only constants and the threshold. Each entry of the new anchor table therefore has bit length O ( log H + log q ˉ + log ( d + m + K + S ) ) = O ( log H ) O(\log H+\log\bar{q}+\log(d+m+K+S))=O(\log H) O ( log H + log q ˉ + log ( d + m + K + S )) = O ( log H ) . This proves Lemma E.2 ; every row still uses the same label on each battlefield.
Output, sampling, and complete complexity
Proof of Lemma 5.8
Proof. Fix an allocation x x x on the reduced battlefields, and let W W W be uniform on [ 0 , 1 ) [0,1) [ 0 , 1 ) , so that Z ( W ) Z(W) Z ( W ) equals k x a kx_a k x a for a uniformly random index a a a . We first compare X j / p j X_j/p_j X j / p j with Z ( W ) Z(W) Z ( W ) . For a threshold θ \theta θ , the set { t : Z ( t ) < θ } \{t:Z(t)<\theta\} { t : Z ( t ) < θ } is an interval [ 0 , F ) [0,F) [ 0 , F ) , since Z Z Z is nondecreasing, and F = P ( Z ( W ) < θ ) F=\mathbb{P}(Z(W)<\theta) F = P ( Z ( W ) < θ ) . The same holds for the set { t : Z ( t ) ≤ θ } \{t:Z(t)\le\theta\} { t : Z ( t ) ≤ θ } , with P ( Z ( W ) ≤ θ ) \mathbb{P}(Z(W)\le\theta) P ( Z ( W ) ≤ θ ) in place of F F F . The essential infimum of Z Z Z over an arc is less than θ \theta θ exactly when the arc overlaps [ 0 , F ) [0,F) [ 0 , F ) in positive length. As ω \omega ω is uniform, the starting point of the arc is uniform on the circle, so this event has probability min { 1 , F + p j } \min\{1,F+p_j\} min { 1 , F + p j } if F > 0 F>0 F > 0 and probability zero otherwise. Thus, for both strict and weak thresholds, the CDF of X j / p j X_j/p_j X j / p j exceeds that of Z ( W ) Z(W) Z ( W ) by at most p j p_j p j . By (5) , replacing each bid X j X_j X j by p j Z ( W ) = k p j x a p_jZ(W)=kp_jx_a p j Z ( W ) = k p j x a , with an independent uniform index for each light battlefield, changes the opponent’s expected payoff by at most ∑ j l i g h t v j ′ p j = ∑ j l i g h t ( v j ′ ) 2 / V \sum_{j\ \mathrm{light}}v'_jp_j=\sum_{j\ \mathrm{light}}(v'_j)^2/V ∑ j light v j ′ p j = ∑ j light ( v j ′ ) 2 / V .
Now fix a deviation y y y on the original battlefields with ∑ j y j ≤ c \sum_j y_j\le c ∑ j y j ≤ c . Against the bids k p j x a kp_jx_a k p j x a , the opponent’s expected payoff on the light battlefields is
∑ j l i g h t v j ′ ⋅ 1 k ∑ a = 0 k − 1 h ( y j , k p j x a ) = V ∑ j l i g h t p j ⋅ 1 k ∑ a = 0 k − 1 h ( y j / p j , k x a ) , \sum_{j\ \mathrm{light}} v'_j\cdot\frac{1}{k}\sum_{a=0}^{k-1}h(y_j,kp_jx_a)=V\sum_{j\ \mathrm{light}}p_j\cdot\frac{1}{k}\sum_{a=0}^{k-1}h(y_j/p_j,kx_a), j light ∑ v j ′ ⋅ k 1 a = 0 ∑ k − 1 h ( y j , k p j x a ) = V j light ∑ p j ⋅ k 1 a = 0 ∑ k − 1 h ( y j / p j , k x a ) ,
since v j ′ = V p j v'_j=Vp_j v j ′ = V p j and dividing both bids by p j p_j p j preserves their comparison. Define a random bid Y Y Y by choosing light battlefield j j j with probability p j p_j p j and returning y j / p j y_j/p_j y j / p j . The right-hand side is V V V times the expected share of Y Y Y against k x a kx_a k x a for an independent uniformly random index a a a . The mean of Y Y Y is ∑ j l i g h t y j \sum_{j\ \mathrm{light}}y_j ∑ j light y j . Let q 0 = 0 q_0=0 q 0 = 0 and, for 1 ≤ l < k 1\le l<k 1 ≤ l < k , let q l = inf { t : P ( Y ≤ t ) ≥ l / k } q_l=\inf\{t:\mathbb{P}(Y\le t)\ge l/k\} q l = inf { t : P ( Y ≤ t ) ≥ l / k } be the quantile of Y Y Y at level l / k l/k l / k . Their average is a lower Riemann sum for the mean of Y Y Y , so 1 k ∑ l q l ≤ ∑ j l i g h t y j \frac{1}{k}\sum_lq_l\le\sum_{j\ \mathrm{light}}y_j k 1 ∑ l q l ≤ ∑ j light y j . The CDF of the uniform distribution on q 0 , … , q k − 1 q_0,\ldots,q_{k-1} q 0 , … , q k − 1 differs from that of Y Y Y by at most 1 / k 1/k 1/ k , for both strict and weak thresholds. Replacing Y Y Y by a uniformly random q l q_l q l therefore changes the payoff above by at most V / k V/k V / k .
It remains to realize the resulting payoff by deviations in the reduced game. For each s ∈ { 0 , … , k − 1 } s\in\{0,\ldots,k-1\} s ∈ { 0 , … , k − 1 } , consider the reduced deviation that bids q ( a + s ) m o d k / k q_{(a+s)\bmod k}/k q ( a + s ) mod k / k on representative battlefield a a a and y j y_j y j on each battlefield kept individually. Its total bid is at most ∑ j y j ≤ c \sum_j y_j\le c ∑ j y j ≤ c , so it is feasible, and it does not depend on the player’s allocation. Each representative battlefield has value V / k V/k V / k , so the average payoff of these k k k deviations on the representative battlefields is
1 k ∑ s = 0 k − 1 V k ∑ a = 0 k − 1 h ( q ( a + s ) m o d k / k , x a ) = V k 2 ∑ a = 0 k − 1 ∑ l = 0 k − 1 h ( q l , k x a ) \frac{1}{k}\sum_{s=0}^{k-1}\frac{V}{k}\sum_{a=0}^{k-1}h(q_{(a+s)\bmod k/k},x_a)=\frac{V}{k^2}\sum_{a=0}^{k-1}\sum_{l=0}^{k-1}h(q_l,kx_a) k 1 s = 0 ∑ k − 1 k V a = 0 ∑ k − 1 h ( q ( a + s ) mod k / k , x a ) = k 2 V a = 0 ∑ k − 1 l = 0 ∑ k − 1 h ( q l , k x a )
which is exactly the payoff above after replacing Y Y Y by a uniformly random q l q_l q l . On the battlefields kept individually, y y y and these deviations have the same payoff. Averaging over x ∼ P x\sim P x ∼ P , the expected payoff of y y y against L ( P ) \mathcal{L}(P) L ( P ) is therefore at most the average payoff of the k k k reduced deviations against P P P , plus ∑ j light ( v j ′ ) 2 / V + V / k \sum_j \operatorname{light}(v'_j)^2/V+V/k ∑ j light ( v j ′ ) 2 / V + V / k . Since each of the k k k reduced deviations is feasible, their average payoff against P P P is at most U r e d v ( P ; c ) U_{\mathrm{red}}^{v}(P;c) U red v ( P ; c ) . Taking the supremum over y y y proves the first inequality. The second follows from ∑ j light ( v j ′ ) 2 / V ≤ max j light v j ′ ≤ e / 10 \sum_j \operatorname{light}(v'_j)^2/V\leq\max_j \operatorname{light}v'_j\leq e/10 ∑ j light ( v j ′ ) 2 / V ≤ max j light v j ′ ≤ e /10 and V / k ≤ 1 / k = e / 8 V/k\leq1/k=e/8 V / k ≤ 1/ k = e /8 .
Finite shifts and evaluation of allocations
The shifts defined in § 5.4 are computed exactly by
t ℓ = ⌊ ( 2 ℓ + 1 ) D s h 2 S o u t ⌋ , ω ℓ = t ℓ + 1 / 2 D s h , 0 ≤ ℓ < S o u t . (30) t_\ell=\left\lfloor\frac{(2\ell+1)D_{\mathrm{sh}}}{2S_{\mathrm{out}}}\right\rfloor,\qquad\omega_\ell=\frac{t_\ell+1/2}{D_{\mathrm{sh}}},\qquad0\leq\ell<S_{\mathrm{out}}. \tag*{(30)} t ℓ = ⌊ 2 S out ( 2 ℓ + 1 ) D sh ⌋ , ω ℓ = D sh t ℓ + 1/2 , 0 ≤ ℓ < S out . (30)
Here t ℓ t_\ell t ℓ is the index of the cell containing ( ℓ + 1 / 2 ) / S o u t (\ell+1/2)/S_{\mathrm{out}} ( ℓ + 1/2 ) / S out , and ω ℓ \omega_\ell ω ℓ is its midpoint.
Proof of Lemma 5.9. Fix a reduced allocation, a light battlefield and a threshold. The shifts for which the reconstructed bid is below (or at most) the threshold form an empty, full, or cyclic interval whose endpoints are multiples of 1 / D s h 1/D_{\mathrm{sh}} 1/ D sh . Replace this event by the union of the half-open intervals [ a / D s h , ( a + 1 ) / D s h ) [a/D_{\mathrm{sh}},(a+1)/D_{\mathrm{sh}}) [ a / D sh , ( a + 1 ) / D sh ) whose interiors lie in it. The union is again an empty, full, or half-open cyclic interval, and it differs from the event only at interval boundaries. Under a continuous uniform shift, the event therefore has probability equal to the length of the union. The selected shifts ω ℓ \omega_\ell ω ℓ are midpoints of the half-open intervals, so they lie in the event exactly when they lie in the union. Moreover, ω ℓ \omega_\ell ω ℓ lies in the union exactly when the evenly spaced point ( ℓ + 1 / 2 ) / S o u t (\ell+1/2)/S_{\mathrm{out}} ( ℓ + 1/2 ) / S out does, since both lie in the same half-open interval, even when the point is an interval boundary. Under the finite shifts, the event therefore has probability equal to the fraction of evenly spaced points in the union. We finish by showing that this fraction differs from the length of the union by at most 1 / S o u t 1/S_{\mathrm{out}} 1/ S out .
Recall that the light battlefields have proportions p j = w j ′ / W G p_j=w'_j/W_G p j = w j ′ / W G and that D s h = k W G D_{\mathrm{sh}}=kW_G D sh = k W G . For an integer a ∈ [ 0 , D s h ] a\in[0,D_{\mathrm{sh}}] a ∈ [ 0 , D sh ] ,
t ℓ < a ⟺ ℓ + 1 / 2 < S o u t a / D s h . t_\ell<a\quad\Longleftrightarrow\quad\ell+1/2<S_{\mathrm{out}}a/D_{\mathrm{sh}}. t ℓ < a ⟺ ℓ + 1/2 < S out a / D sh .
For any r ∈ [ 0 , S o u t ] r\in[0,S_{\mathrm{out}}] r ∈ [ 0 , S out ] , the number of indices ℓ \ell ℓ with ℓ + 1 / 2 < r \ell+1/2<r ℓ + 1/2 < r differs from r r r by at most one half. Subtracting two such counts shows that, for integers 0 ≤ a ≤ a ′ ≤ D s h 0\leq a\leq a'\leq D_{\mathrm{sh}} 0 ≤ a ≤ a ′ ≤ D sh , the fraction of indices ℓ \ell ℓ with a ≤ t ℓ < a ′ a\leq t_\ell<a' a ≤ t ℓ < a ′ differs from ( a ′ − a ) / D s h (a'-a)/D_{\mathrm{sh}} ( a ′ − a ) / D sh by at most 1 / S o u t 1/S_{\mathrm{out}} 1/ S out . A cyclic interval that wraps around zero is the complement of an ordinary one and satisfies the same bound. Since ω ℓ ∈ [ a / D s h , a ′ / D s h ) \omega_\ell\in[a/D_{\mathrm{sh}},a'/D_{\mathrm{sh}}) ω ℓ ∈ [ a / D sh , a ′ / D sh ) exactly when a ≤ t ℓ < a ′ a\leq t_\ell<a' a ≤ t ℓ < a ′ , this gives the required bound for the half-open union. It holds regardless of repeated shifts, zero bids, or equal representative bids, and averaging over rows preserves it.
After the transfer, the algorithm sorts the bids on the representative battlefields separately in every row, keeping references to their battlefields and breaking ties by battlefield index. Sorting the labels alone would not suffice, since the same label may denote different anchors on different battlefields. For each row, the stored order of the representative bids and the bids on the battlefields kept individually come from the same allocation. The arc minima can be evaluated in one ordered sweep. Multiply positions on the circle by 2 D s h 2D_{\mathrm{sh}} 2 D sh , and store the cumulative arc boundaries
σ 0 = 0 , σ j = 2 k ∑ h ≤ j w h ′ , σ g = 2 D s h , \sigma_0 = 0,\qquad\sigma_j = 2k\sum_{h\le j} w'_h,\qquad\sigma_g = 2D_{\mathrm{sh}}, σ 0 = 0 , σ j = 2 k h ≤ j ∑ w h ′ , σ g = 2 D sh ,
where the light battlefields are numbered 1 , … , g 1,\ldots,g 1 , … , g in their original order. For a selected shift, compute t ℓ t_\ell t ℓ once and set o = 2 t ℓ + 1 o=2t_\ell+1 o = 2 t ℓ + 1 , which is the position of ω ℓ \omega_\ell ω ℓ in these units. Before reduction modulo 2 D s h 2D_{\mathrm{sh}} 2 D sh , the arc of light battlefield j j j has endpoints L j = o + σ j − 1 L_j=o+\sigma_{j-1} L j = o + σ j − 1 and R j = o + σ j R_j=o+\sigma_j R j = o + σ j . These endpoints are odd integers, whereas the boundaries of the intervals on which Z Z Z is constant are multiples of 2 W G 2W_G 2 W G and hence even. These k k k intervals become bins of width 2 W G 2W_G 2 W G in the new units. Maintain a bin counter a a a and the next bin boundary, initially a = 0 a=0 a = 0 and 2 W G 2W_G 2 W G , and advance them while L j L_j L j exceeds the next boundary. Across the whole draw there are fewer than 2 k 2k 2 k advances. If L j < 2 D s h < R j L_j<2D_{\mathrm{sh}}<R_j L j < 2 D sh < R j , the arc wraps around zero and contains the smallest representative bid x ( 0 ) x_{(0)} x ( 0 ) , so use it; otherwise use the bid x ( a ) x_{(a)} x ( a ) of bin a a a if a < k a<k a < k and x ( a − k ) x_{(a-k)} x ( a − k ) otherwise. Multiply this bid by k w j ′ / W G = k p j kw'_j/W_G=kp_j k w j ′ / W G = k p j . Since Z Z Z is nondecreasing, a nonwrapping arc attains its minimum in the leftmost bin it touches. This evaluates (19) exactly for each selected row i i i and shift ω ℓ \omega_\ell ω ℓ , using only the stored order and one scan through the bins. Finally, multiply all coordinates by the original budget of this player.
There are T T T rows and S o u t S_{\mathrm{out}} S out shifts, both powers of two, so exactly log 2 ( T S o u t ) \log_2(TS_{\mathrm{out}}) log 2 ( T S out ) independent random bits choose a row and a shift independently and uniformly. In the real-RAM model, each random bit is obtained by comparing a fresh uniform sample with 1 / 2 1/2 1/2 . The two players use independent random bits. Since k < n k<n k < n whenever representative battlefields are used and D s h = O ( n / e 2 ) D_{\mathrm{sh}}=O(n/e^2) D sh = O ( n / e 2 ) , computing the shift, choosing the row, sweeping through the bins, and evaluating the coordinates cost
O ( n + k + log ( D s h + 1 ) + log T + log S o u t ) = O ( n + log ( 1 / e ) ) . O(n+k+\log(D_{\mathrm{sh}}+1)+\log T+\log S_{\mathrm{out}})=O(n+\log(1/e)). O ( n + k + log ( D sh + 1 ) + log T + log S out ) = O ( n + log ( 1/ e )) .
Without representative battlefields, S o u t = 1 S_{\mathrm{out}}=1 S out = 1 , and the shift computation and the sweep are omitted.
One battlefield and equal budgets
For one battlefield, both players spend their full budgets there, giving an exact equilibrium. For equal budgets and n > 1 n>1 n > 1 , choose e = 2 − a e=2^{-a} e = 2 − a with ε / 2 < e ≤ ε \varepsilon/2<e\le\varepsilon ε /2 < e ≤ ε as in § 5.1 , and normalize the common budget to one. Round the values with the first rounding of § 5.1 , obtaining positive values v j ′ v'_j v j ′ with common denominator O ( n / e ) O(n/e) O ( n / e ) and Δ e q = ∑ j ∣ v j ′ − v j ∣ ≤ e / 128 \Delta_{\mathrm{eq}}=\sum_j\lvert v'_j-v_j\rvert\le e/128 Δ eq = ∑ j ∣ v j ′ − v j ∣ ≤ e /128 . If the largest rounded value is at least 1 / 2 1/2 1/2 , both players bid one on that battlefield and zero elsewhere, and each receives payoff 1 / 2 1/2 1/2 . A deviation that bids less than one on that battlefield loses it and wins at most the remaining value, which is at most 1 / 2 1/2 1/2 ; a deviation that bids one there has no budget left and coincides with the equilibrium allocation. Thus this is an exact equilibrium of the game with values v ′ v' v ′ .
Otherwise, every rounded value is less than 1 / 2 1/2 1/2 , so condition (6) holds with b = 1 b=1 b = 1 , and the General Lotto marginals of both players are Unif [ 0 , 2 v j ′ ] \operatorname{Unif}[0,2v'_j] Unif [ 0 , 2 v j ′ ] . Apply the grouping construction of § 4.1.2 to the lengths 2 v j ′ < 1 2v'_j<1 2 v j ′ < 1 , whose sum is two. It gives two or three groups, each of length at most one. For two groups, both lengths are one, and we use ( U , 1 − U ) (U,1-U) ( U , 1 − U ) with U ∼ Unif [ 0 , 1 ] U\sim\operatorname{Unif}[0,1] U ∼ Unif [ 0 , 1 ] ; for three groups, we use Lemma 4.2 with p = 1 p=1 p = 1 . The result is a mixture of at most seven line segments with rational mixture probabilities, and every allocation on these segments spends exactly one. Splitting each group proportionally gives the uniform marginals on [ 0 , 2 v j ′ ] [0,2v'_j] [ 0 , 2 v j ′ ] , so both players using this distribution form an exact equilibrium by § 4.1.1 . Now replace the uniform parameter on each segment by a uniform choice among the N m i d = 32 / e N_{\mathrm{mid}}=32/e N mid = 32/ e midpoints ( i + 1 / 2 ) / N m i d (i+1/2)/N_{\mathrm{mid}} ( i + 1/2 ) / N mid , 0 ≤ i < N m i d 0\le i<N_{\mathrm{mid}} 0 ≤ i < N mid . For a nonconstant coordinate, the set of parameters at which the coordinate is at most a threshold is an interval, so its CDF changes by at most 1 / N m i d 1/N_{\mathrm{mid}} 1/ N mid ; a constant coordinate is unchanged. After mixing the segments, each marginal CDF has the same error bound. Both players still use the same distribution, so by symmetry each expected payoff is 1 / 2 1/2 1/2 , and by Lemma 2.1 no deviation obtains more than 1 / 2 + 1 / N m i d 1/2 + 1/N_{\mathrm{mid}} 1/2 + 1/ N mid . Thus each regret in the game with values v ′ v' v ′ is at most 1 / N m i d = ϵ / 32 1/N_{\mathrm{mid}} = \epsilon/32 1/ N mid = ϵ /32 , and restoring the original values gives regret at most ϵ / 32 + 2 Δ e q ≤ 3 ϵ / 64 < ϵ \epsilon/32 + 2\Delta_{\mathrm{eq}} \le3\epsilon/64 < \epsilon ϵ /32 + 2 Δ eq ≤ 3 ϵ /64 < ϵ .
Store the group labels and proportional coefficients, the at most seven segment endpoints and mixture probabilities, the number of midpoints, and the original common budget. The rational entries other than the original budget have O ( log ( n / ϵ ) ) O(\log(n/\epsilon)) O ( log ( n / ϵ )) bits: the rounded values and group lengths have that encoding length, and each segment formula uses only a constant number of arithmetic operations. No table of n N m i d nN_{\mathrm{mid}} n N mid coordinates is expanded. The mixture probabilities have a common denominator of O ( log ( n / ϵ ) ) O(\log(n/\epsilon)) O ( log ( n / ϵ )) bits. In the real-RAM model, a uniform sample and a constant number of comparisons with the cumulative mixture probabilities choose the segment, after which random bits choose the midpoint uniformly. In the bit model, draw a binary integer with the bit length of the common denominator, and reject it if it is not smaller than the denominator. Each trial succeeds with probability at least 1 / 2 1/2 1/2 , so choosing a segment with exactly its prescribed probability uses expected O ( log ( n / ϵ ) ) O(\log(n/\epsilon)) O ( log ( n / ϵ )) bits and bit operations. Every completed draw is feasible, and computing and writing its coordinates costs O ~ ( n Rat ( L 0 + log ( n / ϵ ) ) ) \widetilde{O}(n\operatorname{Rat}(L_0 + \log(n/\epsilon))) O ( n Rat ( L 0 + log ( n / ϵ ))) bit operations.
Implementing arithmetic in the stated models
We implement the operations used above from the real-RAM primitives of § 2.2 , together with indexed storage and control. In particular, integer quotients and continued fractions are computed by arithmetic and comparisons; logarithms and exponentials in the regret proof are not evaluated by the algorithm. To construct ⌊ x / a ⌋ \lfloor x/a \rfloor ⌊ x / a ⌋ for x ≥ 0 x \ge0 x ≥ 0 , a > 0 a > 0 a > 0 , repeatedly double the pair ( a , 1 ) (a,1) ( a , 1 ) until its first entry exceeds x x x . Starting with remainder x x x and quotient zero, traverse the pairs backwards: whenever the first entry is at most the current remainder, subtract it from the remainder and add the second entry to the quotient. After each pair is processed, the remainder is smaller than its first entry. This gives the quotient and remainder in O ( 1 + log ( ⌊ x / a ⌋ + 1 ) ) O(1 + \log(\lfloor x/a \rfloor+ 1)) O ( 1 + log (⌊ x / a ⌋ + 1 )) operations without reading the binary encoding of x x x . Powers of two, exponent indices and loop guards are constructed by doubling or repeated squaring.
For the Euclidean algorithm on constructed integers of O ( Λ ) O(\Lambda) O ( Λ ) bits, there are O ( Λ ) O(\Lambda) O ( Λ ) quotients because the convergent denominators grow at least as fast as the Fibonacci sequence. The product of the positive quotients is at most 2 O ( Λ ) 2^{O(\Lambda)} 2 O ( Λ ) , so computing them by the preceding doubling procedure costs O ( Λ ) O(\Lambda) O ( Λ ) operations in total. Convergent updates have the same real-RAM bound. Their operands have O ( Λ ) O(\Lambda) O ( Λ ) bits, yielding O ~ ( Λ 2 ) \widetilde{O}(\Lambda^2) O ( Λ 2 ) bit operations and O ~ ( Λ ) \widetilde{O}(\Lambda) O ( Λ ) temporary bits under the arithmetic convention of Appendix § 8 . These integers are constructed by the algorithm; this procedure does not require recovering the binary encoding of the original ratio b b b in the real-RAM model.
To implement the rounded arithmetic of Appendix § 10 .§ 3 , multiply the p m a n t p_{\mathrm{mant}} p mant -bit mantissas and normalize by constructed powers of two. For addition compare the encoded exponents; if their gap exceeds p m a n t + 2 p_{\mathrm{mant}} + 2 p mant + 2 , dropping the smaller term meets the relative rounding bound, and otherwise align only O ( p m a n t ) O(p_{\mathrm{mant}}) O ( p mant ) positions. Quotients recover at most p m a n t p_{\mathrm{mant}} p mant significant digits. Comparisons first use the encoded exponents and then align the mantissas when necessary, without expanding a small weight into a rational with a large denominator. Each such arithmetic operation costs O ~ ( 1 ) \widetilde{O}(1) O ( 1 ) real-RAM operations at the chosen precision and O ~ ( p m a n t ) \widetilde{O}(p_{\mathrm{mant}}) O ( p mant ) bit operations. Each power evaluation uses O ( log ( G + 1 ) ) O(\log(G + 1)) O ( log ( G + 1 )) of these operations. A signed exponent of magnitude at most Λ + G + p m a n t + 8 \Lambda+ G + p_{\mathrm{mant}} + 8 Λ + G + p mant + 8 suffices, and its encoding has logarithmic length.
In the bit model all exact integer and rational operations are charged at the actual operand lengths using Rat ( w ) = O ~ ( w ) \operatorname{Rat}(w) = \widetilde{O}(w) Rat ( w ) = O ( w ) . Input rounding computes each ⌈ M v j ⌉ \lceil Mv_j \rceil ⌈ M v j ⌉ independently. Balanced rational summation combines disjoint input subsets at each level; the sum of operand lengths at a level is O ( L 0 + n log ( n / ϵ ) ) O(L_0+n\log(n/\epsilon)) O ( L 0 + n log ( n / ϵ )) . Thus original value processing costs O ~ ( L 0 + E + n ) \widetilde{O}(L_0+E+n) O ( L 0 + E + n ) bit operations, rather than repeatedly charging the longest input rational in every battlefield. Selecting the auxiliary budget ratio uses the original ratio b b b in one quotient and a constant number of comparisons with constructed rationals of O ( log H ) O(\log H) O ( log H ) bits. Computing the dyadic ϵ \epsilon ϵ uses its binary input in the bit model, or repeated comparisons in the real-RAM model. The original budgets are retained as shared exact scales until output.
Computation and simultaneous storage
We first account for the stages using the bid encoding length Λ \Lambda Λ , then substitute Λ = O ~ ( m / z ) \Lambda=\widetilde{O}(m/z) Λ = O ( m / z ) to obtain the theorem’s bounds. All bounds include the sequential computations for both budgets c ∈ { 1 , ρ } c\in\{1,\rho\} c ∈ { 1 , ρ } . We write R R R , B B B , and W W W for real-RAM operations, bit operations, and simultaneously stored bits, with subscripts indicating the stage. The number of epochs is Θ ( Λ / z ) \Theta(\Lambda/z) Θ ( Λ/ z ) , the epoch length and summary size are Θ ( 1 / z ) \Theta(1/z) Θ ( 1/ z ) , and T = Θ ( Λ / z 2 ) T=\Theta(\Lambda/z^2) T = Θ ( Λ/ z 2 ) . Fresh local powers, exact summary sums and rounded losses cost O ~ ( m Λ / z 3 ) \widetilde{O}(m\Lambda/z^3) O ( m Λ/ z 3 ) real-RAM operations and O ~ ( m Λ 2 / z 3 ) \widetilde{O}(m\Lambda^2/z^3) O ( m Λ 2 / z 3 ) bit operations. Over all T T T iterations, the two optimizations performed in each iteration cost O ~ ( m Λ / z 4 ) \widetilde{O}(m\Lambda/z^4) O ( m Λ/ z 4 ) real-RAM operations and O ~ ( m Λ 2 / z 4 ) \widetilde{O}(m\Lambda^2/z^4) O ( m Λ 2 / z 4 ) bit operations, using the balanced tree and the resource bit lengths at each level from Appendix § 10 .§ 2 .
Quantile queries, valid-code queries, and the interval updates at epoch boundaries cost O ~ ( m Λ 2 / z 2 ) \widetilde{O}(m\Lambda^2/z^2) O ( m Λ 2 / z 2 ) real-RAM operations and O ~ ( m Λ 3 / z 2 ) \widetilde{O}(m\Lambda^3/z^2) O ( m Λ 3 / z 2 ) bit operations. The additional factor in the number of bit operations accounts for arithmetic on Λ \Lambda Λ -bit codes and for continued-fraction queries using the Euclidean algorithm. The sparse trees use O ~ ( m Λ 2 / z 2 ) \widetilde{O}(m\Lambda^2/z^2) O ( m Λ 2 / z 2 ) bits; each traversal’s endpoint stack uses O ( Λ 2 ) O(\Lambda^2) O ( Λ 2 ) temporary bits. The T T T closed candidate rows use O ( m T Λ ) O(mT\Lambda) O ( m T Λ ) bits. Response coordinates after adding the open-bid increment can have O ( m Λ ) O(m\Lambda) O ( m Λ ) bits; checking the sum of the bids against the budget contributes O ~ ( m 2 T Λ ) \widetilde{O}(m^2T\Lambda) O ( m 2 T Λ ) bit operations and O ( m 2 Λ ) O(m^2\Lambda) O ( m 2 Λ ) temporary bits. Decoding candidate coordinates contributes O ~ ( m T Λ 2 ) \widetilde{O}(mT\Lambda^2) O ( m T Λ 2 ) bit operations. Using Λ ≥ m \Lambda\ge m Λ ≥ m absorbs both terms into
R s r c = O ~ ( m Λ 2 / z 2 + m Λ / z 4 ) , B s r c = O ~ ( m Λ 3 / z 2 + m Λ 2 / z 4 ) , W s r c = O ~ ( m Λ 2 / z 2 ) . (31) \begin{aligned}
R_{\mathrm{src}}&=\widetilde{O}(m\Lambda^2/z^2+m\Lambda/z^4),\\
B_{\mathrm{src}}&=\widetilde{O}(m\Lambda^3/z^2+m\Lambda^2/z^4),\\
W_{\mathrm{src}}&=\widetilde{O}(m\Lambda^2/z^2). \tag*{(31)}
\end{aligned} R src B src W src = O ( m Λ 2 / z 2 + m Λ/ z 4 ) , = O ( m Λ 3 / z 2 + m Λ 2 / z 4 ) , = O ( m Λ 2 / z 2 ) . (31)
Next decode and sort every bid on each battlefield to form the K K K quantile blocks, retain the complete rows of labels, and check every stored row’s budget. The trees used during the iterative computation can be discarded before this step; the bounds below include decoding the stored bids again. Normalize the m K mK m K anchors and compute the score threshold h ∗ h_* h ∗ using the strict budget test, before rounding anchors down to multiples of 1 / N 1/N 1/ N . With λ N = O ( log N ) = O ( Λ ) \lambda_N=O(\log N)=O(\Lambda) λ N = O ( log N ) = O ( Λ ) , the decoding, quantization, and initialization costs satisfy
R r e c = O ~ ( m T Λ + m K S + m T + d λ N + 1 ) , B r e c = O ~ ( m T Λ 2 + m 2 K S Λ + m 2 T Λ + d ( Λ + λ N ) λ N + λ N ) , W r e c = O ~ ( m T Λ + S m Λ + m S log ( K + 1 ) + m K Λ + d λ N + Λ ) . \begin{aligned}
R_{\mathrm{rec}}&=\widetilde{O}(mT\Lambda+mKS+mT+d\lambda_N+1),\\
B_{\mathrm{rec}}&=\widetilde{O}(mT\Lambda^2+m^2KS\Lambda+m^2T\Lambda+d(\Lambda+\lambda_N)\lambda_N+\lambda_N),\\
W_{\mathrm{rec}}&=\widetilde{O}(mT\Lambda+Sm\Lambda+mS\log(K+1)+mK\Lambda+d\lambda_N+\Lambda).
\end{aligned} R rec B rec W rec = O ( m T Λ + m K S + m T + d λ N + 1 ) , = O ( m T Λ 2 + m 2 K S Λ + m 2 T Λ + d ( Λ + λ N ) λ N + λ N ) , = O ( m T Λ + S m Λ + m S log ( K + 1 ) + m K Λ + d λ N + Λ ) .
The anchor sums in the computation of h ∗ h_* h ∗ have O ( m Λ ) O(m\Lambda) O ( m Λ ) bits. For an anchor u j l = P / Q u_{jl}=P/Q u j l = P / Q , rounding it to a multiple of 1 / N 1/N 1/ N computes ⌊ N P / Q ⌋ \lfloor NP/Q\rfloor ⌊ N P / Q ⌋ using operands of bit length O ( Λ + λ N ) O(\Lambda+\lambda_N) O ( Λ + λ N ) . Using K = O ( 1 / z ) K=O(1/z) K = O ( 1/ z ) , S = O ( m / z ) S=O(m/z) S = O ( m / z ) , d = O ( m / z ) d=O(m/z) d = O ( m / z ) , T = Θ ( Λ / z 2 ) T=\Theta(\Lambda/z^2) T = Θ ( Λ/ z 2 ) and Λ ≥ m \Lambda\ge m Λ ≥ m gives
R r e c = O ~ ( m Λ 2 / z 2 ) , B r e c = O ~ ( m Λ 3 / z 2 ) , W r e c = O ~ ( m Λ 2 / z 2 ) . R_{\mathrm{rec}}=\widetilde{O}(m\Lambda^2/z^2),\qquad
B_{\mathrm{rec}}=\widetilde{O}(m\Lambda^3/z^2),\qquad
W_{\mathrm{rec}}=\widetilde{O}(m\Lambda^2/z^2). R rec = O ( m Λ 2 / z 2 ) , B rec = O ( m Λ 3 / z 2 ) , W rec = O ( m Λ 2 / z 2 ) .
For the endpoint, use C s = O ( d + m T ) C_s = O(d + mT) C s = O ( d + m T ) and C r = O ~ ( m K S ) C_r = \widetilde{O}(mKS) C r = O ( m K S ) from Appendix § 11 .§ 5 . The complete arithmetic count, including all static scans and final checks of the defining inequalities, is bounded up to logarithms by
F e n d = d 3 + d C s + d m C r + d m S K 2 + ( C s + C r ) . F_{\mathrm{end}} = d^3 + dC_s + dmC_r + dmSK^2 + (C_s + C_r). F end = d 3 + d C s + d m C r + d m S K 2 + ( C s + C r ) .
These computations take O ~ ( F e n d Ω ) \widetilde{O}(F_{\mathrm{end}}\Omega) O ( F end Ω ) bit operations. The simultaneous storage required is
O ~ ( ( d 2 + C r + S K 2 ) Ω + m T log ( K + 1 ) + m K Λ ) . \widetilde{O}((d^2 + C_r + SK^2)\Omega+ mT\log(K + 1) + mK\Lambda). O (( d 2 + C r + S K 2 ) Ω + m T log ( K + 1 ) + m K Λ ) .
There are d d d rays, with one full static scan and O ( m ) O(m) O ( m ) crossing batches per ray, and the basis computations use O ( d 3 ) O(d^3) O ( d 3 ) arithmetic operations in total. With Ω = O ( Λ ) \Omega= O(\Lambda) Ω = O ( Λ ) this becomes
R e n d = O ~ ( m 2 Λ / z 3 + m 4 / z 3 + m 3 / z 4 ) , R_{\mathrm{end}} = \widetilde{O}(m^2\Lambda/z^3 + m^4/z^3 + m^3/z^4), R end = O ( m 2 Λ/ z 3 + m 4 / z 3 + m 3 / z 4 ) ,
B e n d = O ~ ( ( m 2 Λ / z 3 + m 4 / z 3 + m 3 / z 4 ) Λ ) , B_{\mathrm{end}} = \widetilde{O}((m^2\Lambda/z^3 + m^4/z^3 + m^3/z^4)\Lambda), B end = O (( m 2 Λ/ z 3 + m 4 / z 3 + m 3 / z 4 ) Λ ) ,
W e n d = O ~ ( ( m 2 / z 2 + m / z 3 ) Λ + m Λ / z 2 ) . W_{\mathrm{end}} = \widetilde{O}((m^2/z^2 + m/z^3)\Lambda+ m\Lambda/z^2). W end = O (( m 2 / z 2 + m / z 3 ) Λ + m Λ/ z 2 ) .
Constructing the parameters and selecting ρ \rho ρ cost O ~ ( n + Λ + m / z ) \widetilde{O}(n + \Lambda+ m/z) O ( n + Λ + m / z ) real-RAM operations and O ~ ( L 0 + E + n + Λ 2 + m Λ + 1 / z ) \widetilde{O}(L_0 + E + n + \Lambda^2 + m\Lambda+ 1/z) O ( L 0 + E + n + Λ 2 + m Λ + 1/ z ) bit operations. Computing the final anchor tables and battlefield maps and sorting the representative bids costs O ~ ( n + m T + m K ) \widetilde{O}(n + mT + mK) O ( n + m T + m K ) real-RAM operations and
O ~ ( n log ( n / e ) + m T log ( m K + 1 ) + ( T k + m K ) Λ ) \widetilde{O}(n\log(n/e) + mT\log(mK + 1) + (Tk + mK)\Lambda) O ( n log ( n / e ) + m T log ( m K + 1 ) + ( T k + m K ) Λ )
bit operations, where the T k Tk T k term is omitted if no representative battlefields are used. The sorting compares the final bids and stores battlefield references rather than copies of their rational coordinates.
The following table substitutes Λ = O ~ ( m / z ) \Lambda= \widetilde{O}(m/z) Λ = O ( m / z ) into the same construction’s component bounds. Input work is listed separately and all entries suppress logarithms.
Table 1 (PDF p. 74).
Since m z < 1 mz < 1 m z < 1 , the total is
O ~ ( n + m 2 / z 5 ) , O ~ ( L 0 + E + m 3 / z 6 ) , O ~ ( L 0 + E + m 3 / z 4 ) \widetilde{O}(n + m^2/z^5), \qquad\widetilde{O}(L_0 + E + m^3/z^6), \qquad\widetilde{O}(L_0 + E + m^3/z^4) O ( n + m 2 / z 5 ) , O ( L 0 + E + m 3 / z 6 ) , O ( L 0 + E + m 3 / z 4 )
for real-RAM operations, bit operations, and working bits, respectively. Since ε / 2 < e ≤ ε \varepsilon/2 < e \le\varepsilon ε /2 < e ≤ ε , we have z = Θ ( ε ) z = \Theta(\varepsilon) z = Θ ( ε ) and m ≤ min { n , 18 / e } ≤ 36 n ∗ m \le\min\{n, 18/e\} \le36n_* m ≤ min { n , 18/ e } ≤ 36 n ∗ ; substituting gives the computation and space bounds in Theorem 5.1 .
For the storage bound, retain the input and first table of candidate allocations while computing the other player’s distribution, releasing the trees and epoch arrays of each computation after use. During quantization, stored coordinates, sort indices, both label tables and anchor tables coexist; finish the checks on the unrounded coordinates before releasing the stored coordinates. The endpoint computation retains both label tables and the unchanged anchor tables, storage for one constraint basis, and one score dynamic-programming table and batch of crossings. Release these workspaces before sorting the final representative bids. The stored strategy description is included throughout, and no table enumerating all T S o u t T_{\mathrm{Sout}} T Sout allocations is constructed. The largest simultaneous storage requirement in this schedule gives the claimed working-space bound.
Description length and rational output
For each player, the output stores a table of m T mT m T labels specifying the retained allocation rows and an anchor table containing the K K K anchors for each of the m m m battlefields, with the player’s budget normalized to one. Each row specifies its bid on a battlefield by a label in that battlefield’s anchor table, so the anchor is stored once even when several rows use it. When representative battlefields are used, the output also stores T k Tk T k references specifying the order of their bids in each row. For the original battlefields, it records which were kept individually and which were replaced, together with the positive integer weights used in their reconstruction. Finally, it stores the finite-shift rule and the original budget scales. Its size is
O ( L 0 + E + n log ( n / e ) + m T log ( K + 1 ) + T k log ( m K + 1 ) + m K Λ ) = O ~ ( L 0 + E + n + n ∗ 2 / ε 3 ) . \begin{aligned}
O(&L_0 + E + n\log(n/e) + mT\log(K+1)\\
&+ Tk\log(mK+1) + mK\Lambda)
= \widetilde{O}(L_0 + E + n + n_*^2/\varepsilon^3).
\end{aligned} O ( L 0 + E + n log ( n / e ) + m T log ( K + 1 ) + T k log ( m K + 1 ) + m K Λ ) = O ( L 0 + E + n + n ∗ 2 / ε 3 ) .
The term involving k k k is absent if no representative battlefields are used. The description defines an allocation for each of the T S o u t TS_{\mathrm{out}} T S out pairs consisting of a row index i i i and a shift index ℓ \ell ℓ ; different pairs may give the same allocation. Enumerating these allocations must evaluate and write n T S o u t nTS_{\mathrm{out}} n T S out rational coordinates per player, and is a separate operation.
A coordinate computed from one selected row combines an anchor of O ( Λ ) O(\Lambda) O ( Λ ) bits, a light battlefield’s proportion of O ( log ( n / e ) ) O(\log(n/e)) O ( log ( n / e )) bits if needed, and the player’s original budget of at most L 0 L_0 L 0 bits. The bit length of each operand and output coordinate is at most
W e m i t = O ( L 0 + Λ + log ( n / e ) ) . W_{\mathrm{emit}} = O(L_0 + \Lambda+ \log(n/e)). W emit = O ( L 0 + Λ + log ( n / e )) .
Thus a complete draw costs
O ~ ( n Rat ( W e m i t ) + log 2 ( D s h + 1 ) + log ( 1 / e ) ) \widetilde{O}\bigl(n\,\operatorname{Rat}(W_{\mathrm{emit}}) + \log^2(D_{\mathrm{sh}}+1) + \log(1/e)\bigr) O ( n Rat ( W emit ) + log 2 ( D sh + 1 ) + log ( 1/ e ) )
bit operations, including writing every coordinate and generating the prescribed bits. The shift term is omitted if no representative battlefields are used. The description stores each original budget once; the sampling bound charges its use in every emitted coordinate. The cases of one battlefield or equal budgets have the separate output and randomness bounds in Appendix § 12 .§ 3 .