Question 1.1
ZD0FCan the optimal objective value of (?) ever be strictly greater than the expected revenue of the firm’s best past assortment?
We study a class of robust assortment optimization problems that was proposed by Farias, Jagabathula, and Shah (2013). The goal in these problems is to find an assortment that maximizes a firm’s worst-case expected revenue under all ranking-based choice models that are consistent with the historical sales data generated by the firm’s past assortments. We establish for various settings that these robust optimization problems can either be solved in polynomial-time or can be reformulated as compact mixed-integer optimization problems. To establish our results, we prove that optimal assortments for these robust optimization problems have a simple structure that is closely related to the structure of revenue-ordered assortments. We use our results to show how robust optimization can be used to overcome the risks of estimate-then-optimize and the need for experimentation with ranking-based choice models in the overparameterized regime.
Can the optimal objective value of (?) ever be strictly greater than the expected revenue of the firm’s best past assortment?
If the answer to Question 1.1 is yes, then what structural properties of a firm’s past assortments are necessary for the optimal objective value of (?) to be strictly greater than the expected revenue of the firm’s best past assortment?=-1
What structural properties of a firm’s past assortments are sufficient for designing efficient algorithms for solving the robust optimization problem (?)?
If the optimal objective value of (?) is not strictly greater than the expected revenue of the firm’s best past assortment for a particular problem instance, then what assortment should the firm offer to its customers?
There exists an assortment S \in \widehat{\mathcal{S}} that is optimal for (?).
If \mathscr{M} = \bar{\mathcal{S}}, then \widehat{\mathcal{S}} = \mathscr{M}.
If \mathscr{M} = \bar{\mathcal{S}} and \eta = 0, then \max \limits_{S \in \mathcal{S}} \min \limits_{\lambda \in \mathcal{U}} \mathscr{R}^{\lambda}(S) = \max \limits_{m \in \mathcal{M}} r^\intercal v_m.
If M = 2, then
| \widehat{\mathcal{S}} | \le (n+2)^{2^M}.
The collection of assortments \widehat{\mathcal{S}} can be constructed in \mathcal{O}(n^{2} (M+| \widehat{\mathcal{S}}|)) time.
We say that the firm’s past assortments are reverse revenue-ordered if S_1 \triangleq \{0,n\}, S_m \triangleq \left \{ 0,1,\ldots,m-1,n \right \} for each m \in \{2,\ldots,n\}, and \mathscr{M} = \tilde{\mathcal{S}} \triangleq \left \{S_1,\ldots,S_n\right \}.
If \mathscr{M} = \tilde{\mathcal{S}}, then \widehat{\mathcal{S}} = \left \{ S \subseteq \mathcal{N}_0: \{0,n\} \subseteq S \right \}.
Suppose that \mathscr{M} = \tilde{\mathcal{S}}, that \eta = 0, and that the revenues r_1 < \cdots < r_n are fixed. Then for every assortment \bar{S} \in \widehat{\mathcal{S}}, there exists a realization of the historical data v \equiv (v_{m,i}: m \in \mathcal{M}, i \in S_m) such that \bar{S} is the unique optimal solution of the robust optimization problem (?).
\mathcal{D}_i(S) \triangleq \left \{ \sigma \in \Sigma: \; i = \mathop{\SFrm arg\,min}_{j \in S} \sigma (j) \right \}.
\mathcal{L} \triangleq \left \{(i_1,\ldots,i_M) \in S_1 \times \cdots \times S_M: \; \bigcap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) \neq \emptyset \right \}.
\rho_{i_1 \cdots i_M}(S) \triangleq \min \limits_{i \in S: \; \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) \cap \mathcal{D}_i(S) \neq \emptyset} r_i.
For each S \in \mathcal{S}, \min_{\lambda \in \mathcal{U}} \mathscr{R}^\lambda(S) is equal to the optimal objective value of the following linear optimization problem:
The assortment S does not appear in any of the constraints of (4.13).
(4.13) has | \mathcal{L}| = \mathcal{O}(n^M) decision variables and \mathcal{O}(nM) constraints.
Let S \in \mathcal{S} and i \notin S. If there exists i^* \in S that satisfies r_{i^*} < r_i and \mathcal{M}_{i^*} \subseteq \mathcal{M}_i, then \rho_{i_1 \cdots i_M}(S) \le \rho_{i_1 \cdots i_M}(S \cup \{i\}) for each (i_1,\ldots,i_M) \in \mathcal{L}.
We assume throughout §? that every product i \in \mathcal{N}_0 has been offered by the firm to its customers in at least one of the past assortments, that is, \cup_{m \in \mathcal{M}} S_m = \mathcal{N}_0. This assumption simplifies our notation and can always be satisfied by redefining \mathcal{N}_0 to be equal to \cup_{m \in \mathcal{M}} S_m. Such a redefining of \mathcal{N}_0 does not impact the optimal objective value of the robust optimization problem (?); see Appendix ? for further details.
If M = 2 and \eta = 0, then (?) can be solved in \mathcal{O}(n^5 \log (n r_n)) time.
If M = 2, then \mathcal{L} = \left((S_1 \setminus S_2) \times S_2 \right) \cup \left( S_1 \times (S_2 \setminus S_1) \right) \cup \left\{(i,i): i \in S_1 \cap S_2 \right \}.
If M = 2 and \eta = 0, then \min_{\lambda \in \mathcal{U}} \mathscr{R}^\lambda(S) can be evaluated for each assortment S \in \mathcal{S} by solving a minimum-cost network flow problem in a directed acyclic graph with \mathcal{O}(n) vertices and \mathcal{O}(n^2) directed edges.
(?) can be solved in weakly \mathcal{O}(\textnormal{poly}(n)) time for every fixed M.
|\mathcal{L}| = \mathcal{O}(n^M), and \mathcal{L} can be constructed in \mathcal{O}(Mn^{M+1}) time.
For each assortment S \in \widehat{\mathcal{S}} and each tuple of products (i_1,\ldots,i_M) \in \mathcal{L}, the quantity \rho_{i_1 \cdots i_M}(S) can be computed in \mathcal{O}(M^2 n) time.
The past assortments \mathscr{M} \equiv \{S_1,\ldots,S_M\} \subseteq \mathcal{N}_0 satisfy S_1 \subset \cdots \subset S_M.
If Assumption Assumption holds, then
If Assumption Assumption holds, then |\mathcal{L}| \ge 2^{M-1}.
If Assumption Assumption holds and the assortment S \subseteq \mathcal{N}_0 satisfies S \cap S_1 \neq \emptyset,(The condition that S \cap S_1 \neq \emptyset in Lemma 5.10 is satisfied, for example, when S, S_1 \in \mathcal{S}.) then the following equality holds for each tuple (i_1,\ldots,i_M) \in \mathcal{L} and m \in \mathcal{M}:
Let Assumption Assumption hold. Then for each S \subseteq \mathcal{N}_0 that satisfies S \cap S_1 \neq \emptyset, \min_{\lambda \in \mathcal{U}} \mathscr{R}^\lambda(S) is equal to the optimal objective value of the following linear optimization problem: 911 0.8em 0.3em 0.5em 0.3em 0.6em 0.3em 0.3em 0.5em 1em 0 2 11pt plus 0.5pt minus 0.35pt =11pt=9pt
Let Assumption Assumption hold and S_1,\ldots,S_M \in \mathcal{S}. Then the robust optimization problem (?) can be reformulated as a mixed-integer linear optimization problem with \mathcal{O}(n) binary decision variables, \mathcal{O}(\textnormal{poly}(n,M)) continuous decision variables, and \mathcal{O}(\textnormal{poly}(n,M)) constraints.
The reformulation in Appendix ? is presented for cases in which the firm does not have any business constraints on the assortments S \in \mathcal{S}. In many applications of assortment optimization, firms have additional business constraints (e.g., due to limited shelf space or bundling requirements) that limit the space of possible new assortments; see [mivsic2016data, p.113]. Because our algorithm from Theorem 5.12 consists of solving a mixed-integer optimization problem with a binary decision variable x_i \in \{0,1\} for each product i \in \mathcal{N}_0 that satisfies x_i = 1 if and only if product i is included in the assortment S, such business constraints can be easily integrated directly into our mixed-integer optimization problem. In particular, as long as the number of such business constraints is not exponential in n or M, the size of our mixed-integer optimization reformulation of (?) will remain polynomial in the number of products and the number of past assortments.
(?) can be solved in weakly \mathcal{O}(\textnormal{poly}(n)) time for every fixed M.
If Assumption Assumption holds and S_1,\ldots,S_M \in \mathcal{S}, then (?) can be reformulated as a mixed-integer linear optimization problem with \mathcal{O}(n) binary decision variables, \mathcal{O}(\textnormal{poly}(n,M)) continuous decision variables, and \mathcal{O}(\textnormal{poly}(n,M)) constraints.
Let Assumption Assumption hold and S_1,\ldots,S_M \in \mathcal{S}. Then the optimization problem (?) can be reformulated as a mixed-integer linear optimization problem with \mathcal{O}(n) binary decision variables, \mathcal{O}(\textnormal{poly}(n,M)) continuous decision variables, and \mathcal{O}(\textnormal{poly}(n,M)) constraints.
(i_1,\ldots,i_M) \in \mathcal{L} if and only if \mathcal{G}_{i_1 \cdots i_M} is acyclic.
Proof. Consider any tuple of products (i_1,\ldots,i_M) \in S_1 \times \cdots \times S_M. First, we recall the fundamental result in graph theory that a directed graph is acyclic if and only if there exists a ranking \sigma \in \Sigma that satisfies \sigma(i) < \sigma(j) for every directed edge (j,i) in the graph [ahuja1988network, p. 77]. Second, we recall from our construction of \mathcal{G}_{i_1 \cdots i_M} that the directed edges in \mathcal{G}_{i_1 \cdots i_M} are exactly those of the form (j,i_m) for each past assortment m \in \mathcal{M} and product j \in S_m \setminus \{i_m\}. Combining these two recollections, we see that the directed graph \mathcal{G}_{i_1 \cdots i_M} is acyclic if and only if there exists a ranking \sigma \in \Sigma that satisfies \sigma(i_m) < \sigma(j) for each m \in \mathcal{M} and j \in S_m \setminus \{i_m\}. Since
we conclude that \mathcal{G}_{i_1 \cdots i_M} is acyclic if and only if (i_1,\ldots,i_M) \in \mathcal{L}. \square
Let (i_1,\ldots,i_M) \in S_1 \times \cdots \times S_M and i, j \in \mathcal{N}_0. We say that vertex j is reachable from vertex i, denoted by j \prec_{i_1 \cdots i_M} i, if there exists a directed path in \mathcal{G}_{i_1 \cdots i_M} from i to j.
Let (i_1,\ldots,i_M) \in \mathcal{L} and i,j \in \mathcal{N}_0. If j \prec_{i_1 \cdots i_M} i, then there exists a past assortment m \in \mathcal{M} that satisfies j = i_m.
Proof. Consider any tuple of products (i_1,\ldots,i_M) \in \mathcal{L}. We recall from our construction of \mathcal{G}_{i_1 \cdots i_M} that i_1,\ldots,i_M are the only vertices in \mathcal{G}_{i_1 \cdots i_M} that have incoming edges. Since Lemma B.1 implies that \mathcal{G}_{i_1 \cdots i_M} is acyclic, we conclude that i_1,\ldots,i_M are the only vertices in \mathcal{G}_{i_1 \cdots i_M} that can be reachable from other vertices. \square
Let (i_1,\ldots,i_M) \in \mathcal{L} and i,j \in \mathcal{N}_0. Then, there exists a ranking \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) that satisfies \sigma(i) < \sigma(j) if and only if j \nprec_{i_1 \cdots i_M} i.
Proof. Let i,j \in \mathcal{N}_0 and (i_1,\ldots,i_M) \in \mathcal{L}, in which case it follows from Lemma B.1 that the directed graph {\mathcal{G}}_{i_1 \cdots i_M} is acyclic.
To show the first direction of the desired result, let us suppose that j \nprec_{i_1 \cdots i_M} i. In this case, we observe that the directed edge (j,i) can be added to \mathcal{G}_{i_1 \cdots i_M} without inducing any cycles. For notational convenience, let this augmented graph with the directed edge (j,i) be denoted by \tilde{\mathcal{G}}_{i_1 \cdots i_M}. Since the augmented graph \tilde{\mathcal{G}}_{i_1 \cdots i_M} is acyclic, it follows from [ahuja1988network, p. 77] that there exists a ranking \sigma \in \Sigma that satisfies \sigma(j') < \sigma(i') for all directed edges (i',j') in the augmented graph. Moreover, since the set of directed edges in the augmented graph \tilde{\mathcal{G}}_{i_1 \cdots i_M} is a superset of the set of directed edges in the original graph \mathcal{G}_{i_1 \cdots i_M}, it follows from the construction of the original graph that this ranking satisfies \sigma(i_m) < \sigma(i') for all m \in \mathcal{M} and all i' \in S_m \setminus \{i_m\}, which implies that \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m). Since the augmented graph has the directed edge (j,i), we observe that this ranking satisfies \sigma(i) < \sigma(j). In summary, we have shown that if j \nprec_{i_1 \cdots i_M} i, then there exists a ranking \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) that satisfies \sigma(i) < \sigma(j). This concludes our proof of the first direction of Lemma B.6.
To show the other direction, let us suppose that j \prec_{i_1 \cdots i_M} i. In this case, consider any arbitrary ranking \sigma \in \Sigma that satisfies \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m). It follows from the fact that \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) and from the construction of \mathcal{G}_{i_1 \cdots i_M} that the inequality \sigma(j') < \sigma(i') holds for each directed edge (i',j') in this graph. Moreover, without loss of generality, let the directed path from vertex i to vertex j be denoted by the sequence of vertices i,j_1,\ldots,j_\nu,j which satisfies the property that (i,j_1),(j_1,j_2),\ldots,(j_{\nu-1},j_\nu),(j_\nu,j) are directed edges in \mathcal{G}_{i_1 \cdots i_M}. It then follows from our earlier reasoning that \sigma(i) > \sigma(j_1) > \cdots > \sigma(j_\nu) > \sigma(j). Since the ranking \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) was chosen arbitrarily, our proof of the other direction is complete. \square
Let (i_1,\ldots,i_M) \in \mathcal{L}, S \in \mathcal{S}, and i \in S. Then, there exists a ranking \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) that satisfies i = \mathop{\SFrm arg\,min}_{j \in S} \sigma(j) if and only if j \nprec_{i_1 \cdots i_M} i for all j \in S.
Proof. Consider any tuple of products (i_1,\ldots,i_M) \in \mathcal{L}, assortment S \in \mathcal{S}, and product i \in S.
To prove the first direction of Lemma B.8, suppose there exists a product j \in S that satisfies j \prec_{i_1 \cdots i_M} i. In this case, it follows immediately from Lemma B.4 that there exists a past assortment m \in \mathcal{M} that satisfies i_m \in S and i_m \prec_{i_1 \cdots i_M} i. Therefore, for each ranking \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m), it follows from Lemma B.6 that \sigma(i_m) < \sigma(i), which combined with the fact that i_m \in S implies that i \neq \mathop{\SFrm arg\,min}_{j \in S} \sigma(j). That concludes our proof of the first direction.
To prove the other direction, suppose that i \neq \mathop{\SFrm arg\,min}_{j \in S} \sigma(j) for all rankings \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m). In this case, it follows immediately from Definition 4.10 that \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) \cap \mathcal{D}_i(S) = \emptyset. Moreover, it follows from the fact that (i_1,\ldots,i_M) \in \mathcal{L} and from Lemma B.1 that the directed graph \mathcal{G}_{i_1 \cdots i_M} is acyclic. Therefore, we observe from the fact that \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) \cap \mathcal{D}_i(S) = \emptyset and from Lemma B.1 that adding the directed edges \{(j, i): j \in S \setminus \{i\} \} to the directed acyclic graph \mathcal{G}_{i_1 \cdots i_M} would result in a directed cycle. Since a cycle visits every vertex at most once, there must exist a single vertex j \in S \setminus \{i\} such that adding only the directed edge (j,i) to \mathcal{G}_{i_1 \cdots i_M} would result in a directed cycle, which implies that j \prec_{i_1 \cdots i_M} i. This concludes our proof of the other direction. \square
\mathcal{I}_{i_1 \cdots i_M}(S) \triangleq \left \{ i \in \mathcal{N}_0:\; \textnormal{for all } m \in \mathcal{M}, \; \textnormal{if } i_m \in S, \text{ then } i_m \nprec_{i_1 \cdots i_M} i \right \}.
For all S \in \mathcal{S} and (i_1,\ldots,i_M) \in \mathcal{L}, \rho_{i_1 \cdots i_M}(S) = \min_{i \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S)} r_i.
For all S \in \mathcal{S}, (i_1,\ldots,i_M) \in \mathcal{L}, and i \notin S,
Proof of Claim 1. Consider any assortment S \in \mathcal{S}, tuple of products (i_1,\ldots,i_M) \in \mathcal{L}, and product i \notin S. We first observe that
Indeed, the first and third equalities follow from Definition B.10. The second and fourth equalities follow from algebra. The final equality follows from the fact that if i \notin \{i_1,\ldots,i_M\}, then it follows from the construction of \mathcal{G}_{i_1 \cdots i_M} that there are no incoming edges to vertex i, which implies that \left \{ j \in \mathcal{N}_0: i \nprec_{i_1 \cdots i_M} j \right \} = \mathcal{N}_0.
Therefore, it follows from line (Proof) and Proposition B.11 that
where the first equality follows from Proposition B.11, the second equality follows from line (Proof), and the last equality follows from algebra and the fact that i \nprec_{i_1 \cdots i_M} i.
We conclude the proof of Claim 1 by considering the case where i \notin \mathcal{I}_{i_1 \cdots i_M}(S). For this case, suppose for the sake of developing a contradiction that there exists j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S) which satisfies i \prec_{i_1 \cdots i_M} j. Under that supposition, it would follow from the fact that i \notin \mathcal{I}_{i_1 \cdots i_M}(S) and Definition B.10 that there would exist a past assortment m \in \mathcal{M} that satisfies i_m \in S and i_m \prec_{i_1 \cdots i_M} i. Thus, by the transitive property, we have i_m \prec_{i_1 \cdots i_M} i \prec_{i_1 \cdots i_M} j, which contradicts the supposition that j \in \mathcal{I}_{i_1 \cdots i_M}(S). Because we have a contradiction, we have shown that i \nprec_{i_1 \cdots i_M} j for all j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S), and so the desired result follows immediately from line (?) and Definition 4.12. \square
Initialize the vertex set \mathscr{V} \leftarrow \emptyset and edge set \mathscr{E} \leftarrow \emptyset.
For each product i \in \mathcal{N}_0:
Update \mathscr{V} \leftarrow \mathscr{V} \cup \{i \}.
Construct the set \mathcal{M}_i of past assortments which offered product i.
For each pair of products (i^*,i) \in \mathcal{N}_0 \times \mathcal{N}_0:
If r_{i^*} < r_{i} and \mathcal{M}_{i^*} \subseteq \mathcal{M}_i:
Update \mathscr{E} \leftarrow \mathscr{E} \cup \{(i^*,i) \}
Output \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) and terminate.
A procedure for constructing the directed acyclic graph \mathscr{G}.
Construct the directed acyclic graph \mathscr{G} \leftarrow \textsc{Construct-G(M,r)}.
Compute the collection of assortments \widehat{\mathcal{S}} \leftarrow \textsc{RecursiveStep(G)}.
For each S \in \widehat{\mathcal{S}}:
If 0 \notin S:
Update \widehat{\mathcal{S}} \leftarrow \widehat{\mathcal{S}} \setminus \{ S \}.
Output \widehat{\mathcal{S}} and terminate.
If \mathscr{V} = \emptyset:
Output the collection \mathscr{A} \equiv\{ \emptyset \} and terminate.
Otherwise:
Let \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) be a directed acyclic graph that is a transitive closure. For notational convenience, let \mathscr{E}_i denote the set of incoming and outgoing edges from each vertex i \in \mathscr{V}. Then for each vertex i \in \mathscr{V}, we have that \tilde{\mathscr{G}} \equiv (\mathscr{V} \setminus \{i \}, \mathscr{E} \setminus \mathscr{E}_i) is a directed acyclic graph that is a transitive closure.
Proof of Claim 2. Let \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) be a directed acyclic graph that is a transitive closure, and let i \in \mathscr{V} be any chosen vertex. It is clear that removing a vertex and its associated incoming and outgoing edges from a directed acyclic graph will not induce any cycles. Therefore, it follows from the fact that the original graph \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) is a directed acyclic graph that the new graph \tilde{\mathscr{G}} \equiv (\mathscr{V} \setminus \{i\}, \mathscr{E} \setminus \mathscr{E}_i) is also a directed acyclic graph. Moreover, consider any two arbitrary vertices j,k \in \mathscr{V} \setminus \{i\} which satisfy the property that vertex k is reachable from vertex j in the new graph \tilde{\mathscr{G}} \equiv (\mathscr{V} \setminus \{i\}, \mathscr{E} \setminus \mathscr{E}_i). Then it follows immediately from the construction of the new graph that vertex k is reachable from vertex j in the original graph \mathscr{G} \equiv (\mathscr{V},\mathscr{E}). Since the original graph \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) is a transitive closure, there must exist a directed edge from vertex j to vertex k in the original graph. Since neither j nor k are equal to i, we have thus shown that there is a directed edge (j,k) \in \mathscr{E} \setminus \mathscr{E}_i. Since the two vertices j,k \in \mathscr{V} \setminus \{i\} were chosen arbitrarily, we have shown that the new graph is also a transitive closure. Our proof of Claim 2 is thus complete. \square
Let \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) be a directed acyclic graph that is a transitive closure. For notational convenience, let \mathscr{E}_i denote the set of incoming and outgoing edges from each vertex i \in \mathscr{V}. Then for each subset of vertices \mathscr{B} \subseteq \mathscr{V}, we have that \tilde{\mathscr{G}} \equiv (\mathscr{V} \setminus \mathscr{B}, \mathscr{E} \setminus (\cup_{i \in \mathscr{B}} \mathscr{E}_i)) is a directed acyclic graph that is a transitive closure.
Proof of Claim 3. Let \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) be a directed acyclic graph that is a transitive closure, let \mathscr{B} \subseteq \mathscr{V} be a subset of vertices, and define the directed graph \tilde{\mathscr{G}} \equiv (\mathscr{V} \setminus \mathscr{B}, \mathscr{E} \setminus (\cup_{i \in \mathscr{B}} \mathscr{E}_i)). The rest of the proof follows a straightforward induction argument. Indeed, let the vertices of \mathscr{B} be indexed by \mathscr{B} \equiv \{i^{\mathscr{B}}_1,\ldots,i^{\mathscr{B}}_{|\mathscr{B}|} \}. For each j \in \{0,1,\ldots,| \mathscr{B}|\}, we define the following directed graph:
We readily observe from the above definition that {\mathscr{G}}^{\mathscr{B}}_0 = \mathscr{G} and that {\mathscr{G}}^{\mathscr{B}}_{| \mathscr{B}|} = \tilde{\mathscr{G}}. In the remainder, we will prove by induction that each \tilde{\mathscr{G}}^{\mathscr{B}}_0,\ldots,\tilde{\mathscr{G}}^{\mathscr{B}}_{| \mathscr{B}|} is a directed acyclic graph that is a transitive closure. Our induction proof proceeds as follows. In the base case, it follows from the equality {\mathscr{G}}^{\mathscr{B}}_0 = \mathscr{G} that {\mathscr{G}}^{\mathscr{B}}_0 is a directed acyclic graph that is a transitive closure. Next, assume by induction that \tilde{\mathscr{G}}^{\mathscr{B}}_0,\ldots,\tilde{\mathscr{G}}^{\mathscr{B}}_{j-1} are directed acyclic graphs that are transitive closures for any j \in \{1,\ldots,| \mathscr{B}| \}. Then we readily observe from the definition of the directed graph \mathscr{G}^{\mathscr{B}}_j \equiv (\mathscr{V}^{\mathscr{B}}_j, \mathscr{E}^{\mathscr{B}}_j) that the following equalities hold:
Using the above equalities, it follows immediately from Claim 2 and the induction hypothesis that \mathscr{G}^{\mathscr{B}}_j is a directed acyclic graph that is a transitive closure. This concludes our induction proof, and since the equality {\mathscr{G}}^{\mathscr{B}}_{| \mathscr{B}|} = \tilde{\mathscr{G}} holds, our proof of Claim 3 is complete. \square
Let \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) be a directed acyclic graph that is a transitive closure. For notational convenience, let \mathscr{E}_i denote the set of incoming and outgoing edges from each vertex i \in \mathscr{V}. For each vertex i \in \mathscr{V},
Proof of Claim 4. Let \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) be a directed acyclic graph that is a transitive closure, and let i \in \mathscr{V} be any chosen vertex from this graph. We first observe that
where the above equality follows from the fact that any subset of vertices S from the collection on line (Proof) must not contain any vertices in the graph that have an outgoing edge to vertex i. For notational convenience, let the collection of subsets of vertices on line (4) be denoted by \tilde{\mathscr{A}}, and let the collection of subsets of vertices on line (Proof) be denoted by \tilde{\mathscr{A}}'. In other words, let
In the remainder of the proof, we will show that \tilde{\mathscr{A}} = \tilde{\mathscr{A}}'.
To show the first direction, consider any arbitrary subset of vertices S \in \tilde{\mathscr{A}}'. For this subset of vertices, consider any two arbitrary vertices k, j \in \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}) which satisfy the conditions [k \in S] and [(k,j) \in \mathscr{E} \setminus ( \mathscr{E}_i \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}} \mathscr{E}_\ell )]. In this case, it follows immediately from the fact that \mathscr{E} \setminus ( \mathscr{E}_i \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}} \mathscr{E}_\ell ) \subseteq \mathscr{E} that the condition [(k,j) \in \mathscr{E}] holds. Therefore, it follows immediately from the definition of \tilde{\mathscr{A}}' that j \in S. Since the two vertices k, j \in \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}) which satisfy the conditions [k \in S] and [(k,j) \in \mathscr{E} \setminus ( \mathscr{E}_i \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}} \mathscr{E}_\ell )] were chosen arbitrarily, we have shown that S \in \tilde{\mathscr{A}}, and since the subset of vertices S \in \tilde{\mathscr{A}}' was chosen arbitrarily, we have shown that \tilde{\mathscr{A}}' \subseteq \tilde{\mathscr{A}}. Our proof of the first direction is thus complete.
To show the other direction, consider any arbitrary subset of vertices S \in \tilde{\mathscr{A}}. For this subset of vertices, consider any two arbitrary vertices k, j \in \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}) which satisfy the conditions [k \in S] and [(k,j) \in \mathscr{E}]. We now suppose, for the sake of developing a contradiction, that the directed edge from vertex k to vertex j satisfies (k,j) \in \mathscr{E}_i \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}} \mathscr{E}_\ell. Under this supposition, we have two cases to consider. In the first case, the directed edge satisfies (k,j) \in \mathscr{E}_i. However, that would imply that either j = i or k = i, and those equalities contradict the facts that k \in S and S \subseteq \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}). In the second case, the directed edge satisfies (k,j) \in \bigcup_{\ell: (\ell,i) \in \mathscr{E}} \mathscr{E}_\ell, which implies that there are directed edges (k,j) \in \mathscr{E} and (j,i) \in \mathscr{E} in the graph \mathscr{G}. Since the graph is a transitive closure, the existence of directed edges (k,j) \in \mathscr{E} and (j,i) \in \mathscr{E} implies that there must exist a directed edge (k,i) \in \mathscr{E}. However, the existence of a directed edge (k,i) \in \mathscr{E} contradicts the facts that k \in S and S \subseteq \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}). In all cases, we have proved by contradiction that the vertices k and j must satisfy the condition [(k,j) \in \mathscr{E} \setminus ( \mathscr{E}_i \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}} \mathscr{E}_\ell )]. Since the two vertices k, j \in \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}) which satisfy the conditions [k \in S] and [(k,j) \in \mathscr{E}] were chosen arbitrarily, we have shown that S \in \tilde{\mathscr{A}}', and since the subset of vertices S \in \tilde{\mathscr{A}} was chosen arbitrarily, we have shown that \tilde{\mathscr{A}} \subseteq \tilde{\mathscr{A}}'. Our proof of the second direction is thus complete.
We have thus shown that \tilde{\mathscr{A}} = \tilde{\mathscr{A}}', which concludes our proof of Claim 4. \square
Let \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) be a directed acyclic graph that is a transitive closure. For notational convenience, let \mathscr{E}_i denote the set of incoming and outgoing edges from each vertex i \in \mathscr{V}. For each vertex i \in \mathscr{V},
Proof of Claim 5. Let \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) be a directed acyclic graph that is a transitive closure, and let i \in \mathscr{V} be any chosen vertex from this graph. Then we observe that
Indeed, the equality of the collections of subsets of vertices on lines (Proof) and (Proof) follows from the fact that any subset of vertices S in the collection on line (Proof) satisfies i \in S, and so it must contain all of the vertices in the graph which have an incoming edge from vertex i. For notational convenience, let the collections of subsets of vertices on lines (Proof) and (Proof) be denoted by \bar{\mathscr{A}}' and \bar{\mathscr{A}}, respectively. To show that line (Proof) is equal to line (Proof), we first observe that the inclusion \bar{\mathscr{A}}' \subseteq \bar{\mathscr{A}} follows immediately from the definitions of the collections \bar{\mathscr{A}}' and \bar{\mathscr{A}}. To show the other direction, consider any subset of vertices S \in \bar{\mathscr{A}} and consider any vertex k \in S. If there exists a directed edge (k,j) \in \mathscr{E} which satisfies (k,j) \in \mathscr{E}_i \cup \bigcup_{\ell: (i,\ell) \in \mathscr{E}} \mathscr{E}_\ell, then we observe that the vertex j must satisfy j \in \{i \} \cup \{ \ell: (i,\ell) \in \mathscr{E} \}. Since it follows from S \in \bar{\mathscr{A}} that the inclusion \{i\} \cup \{\ell: (i,\ell) \in \mathscr{E} \} \subseteq S holds, we conclude that S \in \bar{\mathscr{A}}'. We have thus shown that line (Proof) is equal to line (Proof). Since the equivalence of lines (Proof) and (?) follows readily from algebra, our proof of Claim 5 is complete. \square
If \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) is a directed acyclic graph that is a transitive closure with | \mathscr{V}| \ge 1, then lines (?), (?), (?), and (?) of Algorithm ? can be performed in \mathcal{O}\left(| \mathscr{V}| \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right| \right) time.
Proof. We observe that the set of vertices \{i \} \cup \{ \ell: (\ell, i) \in \mathscr{E} \} in line (?) of Algorithm ? can be queried and stored as a hash table in \mathcal{O}(|\{i \} \cup \{ \ell: (\ell, i) \in \mathscr{E} \}|) = \mathcal{O}(| \mathscr{V}|) computation time. Therefore, the directed graph \mathscr{G}' \equiv (\mathscr{V}',\mathscr{E}') in line (?) of Algorithm ? can be constructed from scratch in \mathcal{O}(| \mathscr{V}| + | \mathscr{E}|) computation time. By identical reasoning, we observe that the directed graph \mathscr{G}'' \equiv (\mathscr{V}'',\mathscr{E}'') in line (?) of Algorithm ? can be constructed in \mathcal{O}(| \mathscr{V}| + | \mathscr{E}|) computation time. It is easy to see for each S \in \mathscr{A}'' that S \cup \{i \} \cup \{ \ell: (i,\ell) \in \mathscr{E} \} is the union of three disjoint sets, which implies that the collection on line (?) of Algorithm ? can be constructed in a total of \mathcal{O}\left(\sum_{S \in \mathscr{A}''} ( | S| + | \{ \ell: (i,\ell) \in \mathscr{E} \}|) \right) = \mathcal{O} \left(\sum_{S \in \mathscr{A}'''} |S| \right) computation time. It is similarly easy to see that \mathscr{A} \equiv \mathscr{A}' \cup \mathscr{A}''' is the union of two disjoint collections, which implies that line (?) of Algorithm ? can be performed in \mathcal{O}\left( \sum_{S \in \mathscr{A}'} |S| + \sum_{S \in \mathscr{A}'''} |S| \right) = \mathcal{O} \left( \sum_{S \in \mathscr{A}} | S| \right) computation time. All combined, we have shown that the computation time required for lines (?), (?), (?), and (?) of Algorithm ? is
Using the fact that graphs always satisfy the inequality | \mathscr{E} | \le | \mathscr{V}|^2 and the fact that |S| \le | \mathscr{V}| for all S \in \mathscr{A}, the above computation time simplifies to \mathcal{O}\left(| \mathscr{V}|^2 + \left| \mathscr{V} \right| \times \left| \mathscr{A} \right| \right). Since \mathscr{A} \equiv \textsc{RecursiveStep}(\mathscr{G}) is the output of Algorithm ?, and since it is easy to see that | \mathscr{A}| \ge | \mathscr{V}|, our proof of Claim 6 is complete. \square
If \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) is a directed acyclic graph that is a transitive closure with | \mathscr{V}| \ge 1, then the computation time for Algorithm ? is \mathcal{O}(|\mathscr{V}|^2 \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right| ).
Proof. Let T(\mathscr{G}) denote the computation time required to run Algorithm ? for any valid input \mathscr{G} \equiv (\mathscr{V},\mathscr{E}). It follows from Claim 6 that T(\mathscr{G}) can be represented by an asymptotic recurrence of the form
where \mathscr{G}' and \mathscr{G}'' are the subgraphs constructed in Algorithm ? on lines (?) and (?). We will now prove that the above recurrence satisfies the following inequality:
Indeed, the above inequality clearly holds in the base case. Now assume by induction that the above inequality holds for all valid inputs graphs to Algorithm ? with up to p-1 vertices, and consider any valid input \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) to Algorithm ? for which the number of vertices is |\mathscr{V}| = p. For this input, we have
where the first line follows from (Proof) and from the fact that \mathscr{V} \neq \emptyset, the second line follows from the induction hypothesis, the third line follows from the facts that | \mathscr{V}'| < | \mathscr{V}| and | \mathscr{V}''| < | \mathscr{V}|, the fourth line follows from the fact that \left|\textsc{RecursiveStep}(\mathscr{G}) \right| = \left|\textsc{RecursiveStep}(\mathscr{G}') \right| + \left|\textsc{RecursiveStep}(\mathscr{G}'') \right|, and the final line follows from algebra. This concludes our proof of Claim 7. \square
The system (?) is nonempty and has a unique solution \lambda which satisfies the following equality for each (i_1,\ldots,i_n) \in \mathcal{L}:
Suppose that \lambda is a feasible solution of the system (?), and let (i_1,\ldots,i_n) \in \mathcal{L}. If \lambda_{i_1 \cdots i_n} > 0, then either (i_1,\ldots,i_n) = (n,\ldots,n) or there exists j \in \{1,\ldots,n-1\} such that i_{j+1} = j.
Proof of Claim 8. Suppose that \lambda is a solution of the system (?), and let (i_1,\ldots,i_n) \in \mathcal{L}.
We begin by showing that if \lambda_{i_1 \cdots i_n} > 0, then either (i_1,\ldots,i_n) = (n,\ldots,n) or there exists m \in \{1,\ldots,n\} such that i_m \notin \{0,n\}. We will show this claim by proving its contraposition. Indeed,
suppose that i_m \in \{0,n\} for all m \in \{1,\ldots,n\} and that there exists \bar{m} \in \{1,\ldots,n\} such that i_{\bar{m}} = 0. In this case, it follows from (?) and from the fact that i_m \in \{0,n\} for all m \in \{1,\ldots,n\} that i_1 = \cdots = i_n = 0. If i_1 = \cdots = i_n = 0, then
where the first equality follows from (?), the second equality follows from the fact that \lambda is a feasible solution of the system (?), and the third equality follows from (?). We have thus shown that if i_m \in \{0,n\} for all m \in \{1,\ldots,n\} and if there exists m \in \{1,\ldots,n\} such that i_m = 0, then \lambda_{i_1 \cdots i_n} = 0. Note that the contrapositive of this statement is that if \lambda_{i_1 \cdots i_n} > 0, then either (i_1,\ldots,i_n) = (n,\ldots,n) or there exists m \in \{1,\ldots,n\} such that i_m \notin \{0,n\}.
We conclude the proof of Claim 8 by showing that if there exists m \in \{1,\ldots,n\} such that i_m \notin \{0,n\}, then there exists j \in \{1,\ldots,n-1\} such that i_{j+1} = j. Indeed, suppose there exists m \in \{1,\ldots,n\} such that i_m \notin \{0,n\}. Since the inclusion i_1 \in \{0,n\} always holds, the existence of m \in \{1,\ldots,n\} satisfying i_m \notin \{0,n\} implies that there must exist j \in \{1,\ldots,n-1\} such that i_j \neq i_{j+1}. Since we have assumed that the inclusion (i_1,\ldots,i_n) \in \mathcal{L} holds, it follows from (?) and from the fact that i_j \neq i_{j+1} that i_{j+1} must be equal to j. Our proof of Claim 8 is thus complete. \square
Suppose that \lambda is a feasible solution of the system (?), and let (i_1,\ldots,i_n) \in \mathcal{L}. If \lambda_{i_1 \cdots i_n} > 0 and if (i_1,\ldots,i_n) \neq (n,\ldots,n), then there exists j \in \{1,\ldots,n-1\} and \dagger \in \{0,n\} such that i_1 = \cdots = i_j = \dagger and i_{j+1} = \cdots = i_n = j.
Proof of Claim 9.
Suppose that \lambda is a feasible solution of the system (?), and suppose that the inequality \lambda_{i_1 \cdots i_n} > 0 holds for a given tuple (i_1,\ldots,i_n) \in \mathcal{L} with (i_1,\ldots,i_n) \neq (n,\ldots,n). Then it follows from Claim 8 that there exists a product j' \in \{1,\ldots,n-1\} such that i_{j'+1} = j'. From this point onward, we let the product j' \in \{1,\ldots,n-1\} with the smallest index that satisfies i_{j'+1} = j' be denoted by
where the last equality follows from (?).
For the product j defined in (?), it follows from the fact that \lambda is a feasible solution of the system (?) that the following two equalities must hold:
We observe from (?) and from the inclusion j \in \{1,\ldots,n-1\} that the equality v_{j+1,j} = v_{n,j} also holds. Therefore, (?) implies that
Moreover, we observe from (?) and from the inclusion j \in \{1,\ldots,n-1\} that a tuple (i_1',\ldots,i_n') \in \mathcal{L} satisfies the equality i_n' = j if and only if i_{j+1}' = \cdots = i_n' = j. Therefore, (?) implies that
Since \lambda is a feasible solution of the system (?), and since (?) implies that the inequality \lambda_{i_1' \cdots i_n'} \ge 0 holds for all (i_1',\ldots,i_n') \in \mathcal{L}, it follows from (?) that
Since we supposed that \lambda_{i_1 \cdots i_n} > 0, and since the tuple (i_1,\ldots,i_n) \in \mathcal{L} satisfied the equality i_{j+1} = j, (?) proves that the equalities i_{j+1} = \cdots = i_n = j must hold. Moreover, it follows from the right-most equality in (?) that i_1,\ldots,i_j \in \{0,n\}, which together with (?) implies that i_1 = \cdots = i_j. Since (?) implies that i_1 \in \{0,n\}, our proof of Claim 9 is complete. \square
Proof of Lemma E.1.
We begin by showing that if \lambda is a feasible solution of the system (?), then \lambda must satisfy the equality on line (?) for all (i_1,\ldots,i_n) \in \mathcal{L}. Indeed, suppose that \lambda is a feasible solution of the system (?). In Claim 9, we showed that if \lambda is a feasible solution of the system (?) and if \lambda_{i_1 \cdots i_n} > 0 for some tuple (i_1,\ldots,i_n) \in \mathcal{L} where (i_1,\ldots,i_n) \neq (n,\ldots,n), then the tuple (i_1,\ldots,i_n) must be contained in
where the notation \left(\text{\b{i}}^j_1,\ldots,\text{\b{i}}^j_n \right) \triangleq (0,\ldots,0,j,\ldots,j) and \left(\bar{i}^j_1,\ldots,\bar{i}^j_n \right) \triangleq (n,\ldots,n,j,\ldots,j) for each j \in \{1,\ldots,n-1\} is defined in Appendix ?.
In view of the above notation, we now consider any arbitrary j \in \{1,\ldots,n-1\} and \dagger \in \{0,n\}. We first observe that
where the first equality follows from the fact that \lambda is a feasible solution of the system (?), the second equality holds because \lambda_{i_1'\cdots i_n'} > 0 only if (i_1',\ldots,i_n') \in \mathcal{L}^* \cup \{(n,\ldots,n)\}, and the third equality holds because a tuple (i_1',\ldots,i_n') \in \mathcal{L}^* \cup \{(n,\ldots,n)\} satisfies the equality i_j' = \dagger if and only if [(i_1',\ldots,i_n') = (n,\ldots,n) \text{ and } \dagger = n] or [ \dagger = 0 \textnormal{ and there existsj’ {j,…,n}such that }(i_1',\ldots,i_n') = (\text{\b{i}}_1^{j'},\ldots,\text{\b{i}}_n^{j'}) ] or [ \dagger = n \textnormal{ and there existsj’ {j,…,n}such that }(i_1',\ldots,i_n') = (\bar{i}_1^{j'},\ldots,\bar{i}_n^{j'}) ]. Using identical reasoning as above, we also observe that
Combining lines (?) and (?), we have shown that
We also recall from (?) that
Therefore, combining lines (?) and (?), we have shown that the following equalities hold for all j \in \{1,\ldots,n-1\}:
Moreover, it follows from the fact that \lambda is a feasible solution of the system (?) that
where the first equality follows from the fact that \lambda is a feasible solution of the system (?), the second equality follows from the fact that \lambda_{i_1' \cdots i_n'} > 0 for a tuple (i_1',\ldots,i_n') \in \mathcal{L} \setminus \{ (n,\ldots,n)\} if and only if (i_1',\ldots,i_n') \in \mathcal{L}^*, the third and fourth equalities follow from (?), and the fourth and fifth equalities follow from algebra.
Combining the above analysis, we conclude that any feasible solution \lambda of the system (?) must satisfy the following equality must hold for all (i_1,\ldots,i_n) \in \mathcal{L}:
We conclude the proof of Lemma E.1 by showing, for the sake of completeness, that if \lambda satisfies the equality on line (?) for all (i_1,\ldots,i_n) \in \mathcal{L}, then \lambda is a feasible solution of the system (?). Indeed, let \lambda satisfy the equality on line (?) for all (i_1,\ldots,i_n) \in \mathcal{L}. For each assortment m \in \mathcal{M} and product i \in S_m, we observe that
where the first equality follows from the fact that \lambda satisfies the equality on line (?) for all (i_1,\ldots,i_n) \in \mathcal{L}, the second equality follows from algebra, and the third equality follows from line (?). Furthermore, we observe that
where the first equality follows from the fact that \lambda satisfies the equality on line (?) for all (i_1,\ldots,i_n) \in \mathcal{L}, and the second and third equalities follows from algebra. Finally, we observe from line (?) that \lambda_{i_1 \cdots i_n} \ge 0 for all (i_1,\ldots,i_n) \in \mathcal{L}. We have thus proven that \lambda is a feasible solution of the system (?), which concludes our proof of Lemma E.1. \square
\max \limits_{S \in \mathcal{S}} \min \limits_{\lambda \in \mathcal{U}}\mathscr{R}^{\lambda}(S) = \max \limits_{S \in \mathcal{S}} \min \limits_{\lambda \in \mathcal{U}}\mathscr{R}^{\lambda}\left(S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \right).
Proof of Proposition F.1. We first observe that
where the equality follows from the fact that \mathcal{S} \triangleq \{S \subseteq \mathcal{N}_0: 0 \in S \}, and the inequality follows from algebra. To show the other direction, consider any arbitrary assortment S \in \mathcal{S}. We recall from Proposition 4.13 that the worst-case expected revenue \min_{\lambda \in \mathcal{U}}\mathscr{R}^{\lambda}\left(S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \right) is equal to the optimal objective value of the following linear optimization problem:
Moreover, we recall from Proposition B.11 in Appendix ? that the following equality holds for each (i_1,\ldots,i_M) \in \mathcal{L}:
In particular, we observe for each (i_1,\ldots,i_M) \in \mathcal{L} that
where the first equality follows from Definition B.10, the second equality follows from the fact that i_1,\ldots,i_M \in \cup_{m \in \mathcal{M}} S_m, and the third equality follows from Definition B.10. Therefore, for every feasible solution (\lambda,\epsilon) for the linear optimization problem (4.13), we observe that
where the first equality follows from (Proof), the second equality follows from (Proof), the inequality follows from algebra, and the third equality follows from Proposition B.11. Since the above analysis holds for every feasible solution (\lambda,\epsilon) for the linear optimization problem (4.13), and since the assortment S \in \mathcal{S} was chosen arbitrarily, we conclude that
The proof of Proposition F.1 is thus complete. \square
The inequality of the form \sum_{i_1 \in S_1 \setminus S_2} \lambda_{i_1 i} \le v_{2,i} for each vertex i \in S_1 \cap S_2 can be interpreted as an upper bound on the incoming flow entering into vertex i. These inequalities can be converted into edge capacities by splitting each vertex i \in S_1 \cap S_2 into two vertices, i^{\text{in}} and i^{\text{out}}, where the incoming edges to vertex i^{\text{in}} are from the vertices in S_1 \setminus S_2, the outgoing edges from i^{\text{out}} are to the vertices in S_2 \setminus S_1, the only outgoing edge from vertex i^{\text{in}} is the only incoming edge to vertex i^{\text{out}}, the flow through the edge from vertex i^{\text{in}} to vertex i^{\text{out}} must satisfy the constraints 0 \le g_{i^{\text{in}} i^{\text{out}}} \le v_{2,i}, and the supplies on the vertices i^{\text{in}} and i^{\text{out}} are 0 and v_{1,i} - v_{2,i}, respectively.
Construct the directed acyclic graph \mathcal{G}_{i_1 \cdots i_M}.
For each past assortment m \in \mathcal{M}:
If i_m \in S:
Mark each unmarked vertex in \mathcal{G}_{i_1 \cdots i_M} that has a directed path to vertex i_m.
Output the minimum r_i among all unmarked vertices i in \mathcal{G}_{i_1 \cdots i_M} and terminate.
Consider any i \in S \cap \mathcal{B}_m and m' \in \{1,\ldots,m-1\}. If i_{m'} \in S, then i_{m'} \nprec_{i_1 \cdots i_M} i.
Proof of Claim 10. Consider any i \in S \cap \mathcal{B}_m, and consider any m' \in \{1,\ldots,m-1\} that satisfies the inclusion i_{m'} \in S.
We first show that i_{m''} \prec_{i_1 \cdots i_M} i_{m'} for all m'' \in \{m,\ldots,M\}. Indeed, consider any arbitrary m'' \in \{m,\ldots,M\}. We readily observe from Assumption Assumption that i_{m'} \in S_{m'} \subseteq S_{m''}. Moreover, it follows from the fact that i_{m'} \in S and from the fact that i_m \notin S that the expression i_{m'} \neq i_m must hold. Combining the expression i_{m'} \neq i_m with Lemma 5.8, we observe that the expression i_{m'} \neq i_{m''} must hold. Combining the expression i_{m'} \neq i_{m''} with the fact that i_{m'},i_{m''} \in S_{m''}, we conclude that the graph \mathcal{G}_{i_1 \cdots i_M} must have a directed edge from vertex i_{m'} to vertex i_{m''}. Because m'' \in \{m,\ldots,M\} was chosen arbitrarily, we conclude that i_{m''} \prec_{i_1 \cdots i_M} i_{m'} for all m'' \in \{m,\ldots,M\}.
We next show that the vertex i in the graph \mathcal{G}_{i_1 \cdots i_M} has an outgoing edge to vertex j only if there exists m'' \in \{m,\ldots,M\} such that j = i_{m''}. Indeed, we observe from the fact that i \in S \cap \mathcal{B}_m \subseteq \mathcal{B}_m and from Assumption Assumption that the inclusion i \in S_{m''} holds if and only if m'' \in \{m,\ldots,M\}. Therefore, it follows from the construction of the directed graph \mathcal{G}_{i_1 \cdots i_M} that (i,j) is a directed edge in \mathcal{G}_{i_1 \cdots i_M} only if j = i_{m''} for some m'' \in \{m,\ldots,M\}.
We now combine the above steps to conclude the proof of Claim 10. Indeed, suppose for the sake of developing a contradiction that i_{m'} \prec_{i_1 \cdots i_M} i. We showed previously that the only outgoing edges from the vertex i in the directed graph \mathcal{G}_{i_1 \cdots i_M} are to vertices j that satisfy the equality j = i_{m''} for some m'' \in \{m,\ldots,M\}. Therefore, it follows from the supposition that i_{m'} \prec_{i_1 \cdots i_M} i that there must exist a m'' \in \{m,\ldots,M\} such that i_{m'} \prec_{i_1 \cdots i_M} i_{m''}. Because we showed previously that i_{m''} \prec_{i_1 \cdots i_M} i_{m'}, we conclude that the directed graph \mathcal{G}_{i_1 \cdots i_M} must have a cycle. However, we recall from Lemma B.1 from Appendix ? and from the fact that (i_1,\ldots,i_M) \in \mathcal{L} that \mathcal{G}_{i_1 \cdots i_M} is acyclic. Because we have a contradiction, we conclude that i_{m'} \nprec_{i_1 \cdots i_M} i, which completes our proof of Claim 10. \square
Let Assumption Assumption hold, let S \subseteq \mathcal{N}_0 satisfy S \cap S_1 \neq \emptyset, and let (\lambda,\epsilon) be a feasible solution for the linear optimization problem (4.13). For each vertex (m,i,\kappa) \in \mathfrak{V}, let
and for each directed edge ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}, let
Then (f,g,\epsilon) is a feasible solution for the linear optimization problem (5.11), and the objective value associated with (f,g,\epsilon) in the linear optimization problem (5.11) is equal to the objective value associated with (\lambda,\epsilon) in the linear optimization problem (4.13).
Proof. Let Assumption Assumption hold, let S \subseteq \mathcal{N}_0 satisfy S \cap S_1 \neq \emptyset, and let (\lambda,\epsilon) be a feasible solution for the linear optimization problem (4.13). For each vertex (m,i,\kappa) \in \mathfrak{V}, let
and for each edge ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}, let
We begin by presenting an intermediary claim, denoted below by Claim ?, which will provide the key ingredient in the proof of Lemma I.2. The purpose of this intermediary claim is to show that every tuple (i_1,\ldots,i_M) \in \mathcal{L} can be converted into a path (1,i_1,\kappa_1),\ldots,(M,i_M,\kappa_M) in which none of the vertices are elements of \mathfrak{N}(S).
For each (i_1,\ldots,i_M) \in \mathcal{L}, we have that ((1,i_1,\rho_{i_1 \cdots i_M}(S \cap S_1)),\ldots, (M,i_M,\rho_{i_1 \cdots i_M}(S \cap S_M))) \in \mathscr{P} and that (m,i_m,\rho_{i_1,\ldots,i_M}(S \cap S_m)) \notin \mathfrak{N}(S) for all m \in \mathcal{M}.
Proof of Claim ?. Consider any tuple (i_1,\ldots,i_M) \in \mathcal{L}. It follows readily from Definition 4.12 that the inclusion \rho_{i_1 \cdots i_M}(S \cap S_m) \in \{r_j: j \in S \cap S_m \} holds for each m \in \mathcal{M}, and so it follows from the definition of \mathfrak{V} that the inclusion (m,i_m,\rho_{i_1 \cdots i_M}(S \cap S_m)) \in \mathfrak{V} holds for each m \in \mathcal{M}. Moreover, for every arbitrary m \in \{1,\ldots,M-1\}, we observe from Lemma 5.8 that i_{m+1} \in \{i_m \} \cup \mathcal{B}_{m+1}, and we observe from Lemma 5.10 and from the fact that (i_1,\ldots,i_M) \in \mathcal{L} that \rho_{i_1 \cdots i_M}(S \cap S_{m+1}) \in \{ \rho_{i_1 \cdots i_M}(S \cap S_{m}) \} \cup \{r_j: j \in \mathcal{B}_m \}. Combining those two observations, we have shown that ((m,i_m,\rho_{i_1 \cdots i_M}(S \cap S_m)), (m+1,i_{m+1},\rho_{i_1 \cdots i_M}(S \cap S_{m+1}))) \in \mathfrak{E}. Since m \in \{1,\ldots,M-1\} was chosen arbitrarily, we conclude that ((1,i_1,\rho_{i_1 \cdots i_M}(S \cap S_1)),\ldots, (M,i_M,\rho_{i_1 \cdots i_M}(S \cap S_M))) \in \mathscr{P}.
To conclude the proof of Claim ?, it remains for us to show that (m,i_m,\rho_{i_1,\ldots,i_M}(S \cap S_m)) \notin \mathfrak{N}(S) for all m \in \mathcal{M}. Indeed, for each m \in \mathcal{M}, we consider the following three cases:
If i_m \in S and i_m \in\mathcal{B}_m, then it follows from Lemma 5.10 that \rho_{i_1 \cdots i_M}(S \cap S_m) = r_{i_m}.
If i_m \in S and i_m \notin \mathcal{B}_m, then it follows from Lemma 5.10 that \rho_{i_1 \cdots i_M}(S \cap S_m) = r_{i_m} \notin \{r_j: j \in \mathcal{B}_m\}.
If \rho_{i_1 \cdots i_M}(S \cap S_m) \in\{ r_j:j \in \mathcal{B}_m \}, then it follows from Lemma 5.10 that \rho_{i_1 \cdots i_M}(S \cap S_m) \in\{ r_j:j \in S \cap \mathcal{B}_m \}.
Combining the above cases with the definition of \mathfrak{N}(S) on line (?), we conclude that (m,i_m,\rho_{i_1 \cdots i_M}(S \cap S_m)) \notin \mathfrak{N}(S) for each m \in \mathcal{M}. Our proof of Claim ? is thus complete. \square
Using Claim ?, we show in the following bullet points that the solution (f,g,\epsilon) is a feasible solution for the linear optimization problem (5.11); that is, we show that (f,g,\epsilon) satisfies each of the constraints in the linear optimization problem (5.11).
For all m \in \mathcal{M} and i \in {S}_m, we observe that
Indeed, the first equality follows from our construction of g. The second and third equalities follow from algebra. The fourth equality follows from Claim ?, which implies that (m,i_m,\rho_{i_1 \cdots i_M}(S \cap S_m)) \in \mathfrak{V} for all (i_1,\ldots,i_M) \in \mathcal{L}. The fifth equality follows from the fact that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (4.13).
For all (m,i,\kappa) \in \mathfrak{V} such that m \in \{1,\ldots,M-1\}, we observe that
Indeed, the first equality follows from our construction of f. The second and third equalities follow from algebra. The fourth equality follows from Claim ?, which implies that ((m,i_m,\rho_{i_1 \cdots i_M}(S \cap S_m)),(m+1,i_{m+1},\rho_{i_1 \cdots i_M}(S \cap S_{m+1}))) \in \mathfrak{E} for all (i_1,\ldots,i_M) \in \mathcal{L}. The fifth equality follows from our construction of g.
For all (m,i,\kappa) \in \mathfrak{V} such that m \in \{2,\ldots,M\}, we observe that
Indeed, the first equality follows from our construction of f. The second and third equalities follow from algebra. The fourth equality follows from Claim ?, which implies that ((m-1,i_{m-1}, \rho_{i_1 \cdots i_M}(S \cap S_{m-1}) ),(m,i_{m}, \rho_{i_1 \cdots i_M}(S \cap S_{m}))) \in \mathfrak{E} for all (i_1,\ldots,i_M) \in \mathcal{L}. The fifth equality follows from our construction of g.
Consider any vertex (m,i,\kappa) \in \mathfrak{V} that satisfies g_{m,i,\kappa} > 0. Because g_{m,i,\kappa} > 0, it follows from our construction of g that there must exist a tuple (i_1,\ldots,i_M) \in \mathcal{L} that satisfies i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa, and \lambda_{i_1 \cdots i_M} > 0. Since Claim ? implies that (m,i_m,\rho_{i_1,\ldots,i_M}(S \cap S_m)) \notin \mathfrak{N}(S) for all m \in \mathcal{M} and all (i_1,\ldots,i_M) \in \mathcal{L}, we conclude that
We observe that
Indeed, the first equality follows from our construction of g. The second equality follows from Claim ?, which implies that (M,i_M,\rho_{i_1 \cdots i_M}(S \cap S_M)) \in \mathfrak{V} for all (i_1,\ldots,i_M) \in \mathcal{L}. The third equality follows from the fact that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (4.13).
Since f,g are clearly nonnegative, the above bullet points show that (f,g,\epsilon) satisfies each of the constraints in the linear optimization problem (5.11).
It remains for us to show that the objective value associated with (f,g,\epsilon) in the linear optimization problem (5.11) is equal to the objective value associated with (\lambda,\epsilon) in the linear optimization problem (4.13). Indeed, we observe that
The first equality follows from the construction of g. The second equality follows from Remark 5.1 and Assumption Assumption, which together imply that S \cap S_M = S \cap \mathcal{N}_0 = S. The third and fourth equalities follows from algebra. The fifth equality follows from Claim ?. Our proof of Lemma I.2 is thus complete. \square
Let Assumption Assumption hold, let S \subseteq \mathcal{N}_0 satisfy S \cap S_1 \neq \emptyset, and let (f,g,\epsilon) satisfy the following constraints:
Then there exists a vector \lambda such that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (5.11) and
Proof. Let Assumption Assumption hold, let S \subseteq \mathcal{N}_0 satisfy S \cap S_1 \neq \emptyset, and let (f,g,\epsilon) satisfy the following constraints:
We observe that f can be interpreted as a network flow through the directed acyclic graph \mathfrak{G} \equiv (\mathfrak{V},\mathfrak{E}), in the sense that f_{m,i,\kappa,i',\kappa'} \ge 0 is the units of flow from vertex (m,i,\kappa) \in \mathfrak{V} to vertex (m+1,i',\kappa') \in \mathfrak{V}, and the constraints of the form \sum_{i',\kappa': ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}} f_{m,i,\kappa,i',\kappa'} = g_{m,i,\kappa} and \sum_{i',\kappa': ((m-1,i',\kappa'),(m,i,\kappa)) \in \mathfrak{E}} f_{m-1,i',\kappa',i,\kappa} = g_{m,i,\kappa} ensure that flow is conserved through each vertex. Because f can be interpreted as a network flow in the directed acyclic graph \mathfrak{G} \equiv (\mathfrak{V},\mathfrak{E}), it follows from the flow decomposition theorem [ahuja1988network, Theorem 3.5] that there exists a nonnegative vector \pi \equiv (\pi_{i_1 \kappa_1 \cdots i_M \kappa_M}: ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} ) \ge 0 that satisfies the following equalities:
From this point onward, consider any fixed choice of the nonnegative vector \pi that satisfies the above equalities. Given that choice of \pi, let the vector \lambda \equiv (\pi_{i_1 \cdots i_M}: (i_1,\ldots,i_M) \in \mathcal{L}) be defined as follows:
Our first main step of the proof of Lemma I.5 consists of showing that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (4.13). To show that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (4.13), we will utilize the following property of \mathscr{P}:
If ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}, then (i_1,\ldots,i_M) \in \mathcal{L}.
Proof of Claim ?. Consider any path ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}. We readily observe from the construction of the graph \mathfrak{G} \equiv (\mathfrak{V},\mathfrak{E}) and from the fact that (1,i_1,\kappa_1) \in \mathfrak{V} that i_1 \in S_1. Next, choose any arbitrary m \in \{2,\ldots,M\}. Because (1,i_1,\kappa_1),\ldots,(M,i_M,\kappa_M) is a path, we observe that there must exist a directed edge in the graph \mathfrak{G} \equiv (\mathfrak{V},\mathfrak{E}) from vertex (m-1,i_{m-1},\kappa_{m-1}) \in \mathfrak{V} to vertex (m,i_{m},\kappa_{m}) \in \mathfrak{V}. Therefore, it follows from the definition of \mathfrak{E} that the inclusion i_{m} \in \{i_{m-1} \} \cup \mathcal{B}_{m} must hold. Because m \in \{2,\ldots,M\} was chosen arbitrarily, we conclude that i_1 \in S_1 and i_m \in \{i_{m-1} \} \cup \mathcal{B}_m for all m \in \{2,\ldots,M\}, and so Lemma 5.8 implies that (i_1,\ldots,i_M) \in \mathcal{L}. Our proof of Claim ? is thus complete. \square
Equipped with Claim ?, we now proceed to show that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (4.13). Indeed, for each m \in \mathcal{M} and i \in S_m, we observe that
where the first equality follows from the fact that (f,g,\epsilon) satisfies the constraints (Proof), the second equality follows from line (Proof), the third equality follows from algebra, the fourth equality follows from algebra and Claim ?, and the fifth equality follows from our construction of \lambda on line (?). Moreover, we observe that
where the first equality follows from the fact that (f,g,\epsilon) satisfies the constraints (Proof), the second equality follows from line (Proof), the third equality follows from algebra, the fourth equality follows from algebra and Claim ?, and the fifth equality follows from our construction of \lambda on line (?). Since \lambda is clearly nonnegative, our proof that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (4.13) is complete.
The remainder of the proof of Lemma I.5 consists of bounding the objective value associated with (\lambda,\epsilon) in the linear optimization problem (4.13). To develop our bound, we establish the following key property about directed acyclic graph \mathfrak{G} \equiv (\mathfrak{V},\mathfrak{E}).
If ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} and (m,i_m,\kappa_m) \notin \mathfrak{N}(S) for all m \in \mathcal{M}, then \kappa_m \ge \rho_{i_1 \cdots i_M}(S \cap S_m) for all m \in \mathcal{M}.
Proof of Claim ?. Consider any path ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} that satisfies (m,i_m,\kappa_m) \notin \mathfrak{N}(S) for all m \in \mathcal{M}. Our proof of Claim ? follows from an induction argument, and the induction argument proceeds as follows.
In the base case, we let m = 1. In this case, it follows from the fact that ((1,i_1,\kappa_1),\ldots,(M,i_M,\kappa_M)) \in \mathscr{P} that the inclusion (1,i_1,\kappa_1) \in \mathfrak{V} holds, and so it follows from the definition of \mathfrak{V} that \kappa_1 \in \{r_j: j \in \mathcal{B}_1 \}. Thus, it follows from the facts that \kappa_1 \in \{r_j: j \in \mathcal{B}_1 \} and (1,i_1,\kappa_1) \notin \mathfrak{N}(S) that
Therefore, we observe that
where the inequality follows from line (?) and the equality follows from Claim ? and Lemma 5.10. We have shown that \kappa_1 \ge \rho_{i_1 \cdots i_M}(S \cap S_1), which concludes our proof of the base case.
Now choose any arbitrary m \in \{2,\ldots,M\} and assume by induction that the inequality \kappa_{m'} \ge \rho_{i_1 \cdots i_M}(S \cap S_{m'}) holds for all m' \in \{1,\ldots,m-1\}. In this case, it follows from the fact that ((1,i_1,\kappa_1),\ldots,(M,i_M,\kappa_M)) \in \mathscr{P} that the inclusion ((m-1,i_{m-1},\kappa_{m-1}),(m,i_{m},\kappa_{m})) \in \mathfrak{E} holds, and so it follows from the definition of \mathfrak{E} that \kappa_m \in \left \{ \kappa_{m-1} \right \} \cup \left \{ r_j: j \in \mathcal{B}_{m} \right \}. Thus, it follows from the facts that \kappa_m \in \left \{ \kappa_{m-1} \right \} \cup \left \{ r_j: j \in \mathcal{B}_{m} \right \} and (m,i_m,\kappa_m) \notin \mathfrak{N}(S) that
Therefore,
where the first inequality follows from line (?), the second inequality follows from the induction hypothesis, and the equality follows from Claim ? and Lemma 5.10. We have thus shown that \kappa_m \ge \rho_{i_1 \cdots i_M}(S \cap S_m). This concludes our proof of the induction step, and thus our proof of Claim ? is complete. \square
Equipped with Claims ? and ?, we now develop the desired bound on the objective value associated with (\lambda,\epsilon) in the linear optimization problem (4.13):
Indeed, line (?) follows from our construction of \lambda on line (?). Line (?) follows from algebra and Claim ?. Line (?) follows from Assumption Assumption and Remark 5.1. Line (?) follows from algebra. Line (?) follows from Claim ?. Line (?) follows from the fact that \rho_{i_1 \cdots i_M}(S \cap S_M) \le r_n for all (i_1,\ldots,i_M) \in \mathcal{L}. Lines (?) and (?) follows from algebra. Line (?) follows from line (Proof). Lines (?) and (?) follow from algebra. Line (?) follows from line (Proof). Our proof of Lemma I.5 is thus complete. \square
Consider any assortment S \in \mathcal{S}, and let \mathfrak{M}(S) \in \mathbb{R}^{{\mathfrak{V}}} be any vector that satisfies the inequality \mathfrak{M}_{m,i,\kappa}(S) \ge r_n for all (m,i,\kappa) \in \mathfrak{N}(S) and satisfies the equality \mathfrak{M}_{m,i,\kappa}(S) = 0 for all (m,i,\kappa) \in {\mathfrak{V}} \setminus \mathfrak{N}(S). Then the optimal objective value of the linear optimization problem (5.11) is equal to the optimal objective value of the following linear optimization problem:
Proof of Claim 14. Consider any assortment S \in \mathcal{S}, and let \mathfrak{M}(S) \in \mathbb{R}^{{\mathfrak{V}}} be any vector that satisfies the inequality \mathfrak{M}_{m,i,\kappa}(S) \ge r_n for all (m,i,\kappa) \in \mathfrak{N}(S) and satisfies the equality \mathfrak{M}_{m,i,\kappa}(S) = 0 for all (m,i,\kappa) \in {\mathfrak{V}} \setminus \mathfrak{N}(S). We readily observe that the optimal objective value of the linear optimization problem (14) is a lower bound on the optimal objective value of the linear optimization problem (5.11), since the constraints of the form g_{m,i,\kappa} = 0\; \forall (m,i,\kappa) \in \mathfrak{N}(S) from the linear optimization problem (5.11) have been relaxed and since the equality \mathfrak{M}_{m,i,\kappa}(S) = 0 holds for all (m,i,\kappa) \in {\mathfrak{V}} \setminus \mathfrak{N}(S). To show the other direction, consider any arbitrary feasible solution (f,g,\epsilon) for the linear optimization problem (14). Because Assumption Assumption holds and S_1 \cap S \neq \emptyset, it follows from Lemma I.5 from Appendix ? that there exists a vector \lambda such that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (4.13) and
where the first inequality follows from Lemma I.5 and the second inequality follows from our construction of the vector \mathfrak{M}(S). Since (f,g,\epsilon) was chosen arbitrarily, we have shown that the optimal objective value of the linear optimization problem (4.13) is a lower bound on the optimal objective value of the linear optimization problem (14). Since we showed in Proposition 5.11 that the optimal objective value of the linear optimization problem (14) is equal to the optimal objective value of the linear optimization problem (5.11), we conclude that the optimal objective value of the linear optimization problem (5.11) is a lower bound on the optimal objective value of the linear optimization problem (14). Our proof of Claim 14 is thus complete. \square
\xi_{i_1 \cdots i_M}(S) \triangleq \max \limits_{i \in S: \; \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) \cap \mathcal{D}_i(S) \neq \emptyset} r_i.
For each S \in \mathcal{S}, \max_{\lambda \in \mathcal{U}} \mathscr{R}^\lambda(S) is equal to the optimal objective value of the following linear optimization problem:
For all S \in \mathcal{S} and (i_1,\ldots,i_M) \in \mathcal{L}, \xi_{i_1 \cdots i_M}(S) = \max_{i \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S)} r_i.
Let S \in \mathcal{S} and i \notin S. If there exists i^* \in \mathcal{S} that satisfies r_{i^*} > r_{i} and \mathcal{M}_{i^*} \subseteq \mathcal{M}_i, then \xi_{i_1 \cdots i_M}(S) \ge \xi_{i_1 \cdots i_M}(S \cup \{i \}) for each (i_1,\ldots,i_M) \in \mathcal{L}.
Proof. We begin our proof of Proposition J.4 by developing an intermediary result, denoted below by Claim Proof, that will allow us to compare the values of \xi_{i_1 \cdots i_M}(S) and \xi_{i_1 \cdots i_M}(S \cup \{i\}) for every assortment S \in \mathcal{S} and every product i which is not in the assortment. The proof of the following Claim Proof, which uses the graphical interpretation of the quantity \xi_{i_1 \cdots i_M}(S) from Proposition J.4, follows from identical reasoning as the proof of Claim 1 from Appendix ? and is thus omitted.
For all S \in \mathcal{S}, (i_1,\ldots,i_M) \in \mathcal{L}, and i \notin S,
Using the above intermediary result, we now complete the proof of Proposition J.4. Indeed, consider any assortment S\in \mathcal{S} and any product i \notin S. Suppose that there exists a product i^* \in S which satisfies r_{i^*} > r_i and \mathcal{M}_{i^*} \subseteq \mathcal{M}_i. For each tuple of products (i_1,\ldots,i_M) \in \mathcal{L}, we have two cases to consider:
Case 1: Suppose that i \notin \mathcal{I}_{i_1 \cdots i_M}(S). In this case, it follows immediately from Claim Proof that
and so the inequality \rho_{i_1 \cdots i_M}(S) \le \xi_{i_1 \cdots i_M}(S \cup \{i\}) holds when i \notin \mathcal{I}_{i_1 \cdots i_M}(S).
Case 2: Suppose that i \in \mathcal{I}_{i_1 \cdots i_M}(S).
In this case, we begin by showing that i_m \notin S for each m \in \mathcal{M}_i. Indeed, consider any past assortment m \in \mathcal{M}_i. On one hand, if i = i_m, then it follows immediately from the fact that i \notin S that i_m \notin S. On the other hand, if i \neq i_m, then it also must be the case that i_m \notin S, else we would have a contradiction with the fact that i \in \mathcal{I}_{i_1 \cdots i_M}(S) and the fact that there is, by our construction of \mathcal{G}_{i_1 \cdots i_M}, a directed edge from vertex i to vertex i_m. We have thus shown that i_m \notin S for all m \in \mathcal{M}_i.
We next show that i_m \in \mathcal{I}_{i_1 \cdots i_M}(S) for all m \in \mathcal{M}_i. Indeed, consider any arbitrary m \in \mathcal{M}_i. On one hand, if i_m = i, then the statement i_m \in \mathcal{I}_{i_1 \cdots i_M}(S) follows immediately from the fact that i \in \mathcal{I}_{i_1 \cdots i_M}(S). On the other hand, if i_m \neq i, then it follows from the fact that i \in \mathcal{I}_{i_1 \cdots i_M}(S) and the fact that there is a directed edge from vertex i to vertex i_m that there must not be a directed path from vertex i_m to a vertex i_{m'} that satisfies i_{m'} \in S for any m' \in \mathcal{M}. We have thus shown that i_m \in \mathcal{I}_{i_1 \cdots i_M}(S) for all m \in \mathcal{M}_i.
Using the above results, we now prove that i^* \in \mathcal{I}_{i_1 \cdots i_M}(S). Indeed, we have shown in the above results that i_m \notin S and i_m \in \mathcal{I}_{i_1 \cdots i_M}(S) for all m \in \mathcal{M}_{i}. Therefore, it follows from the supposition that \mathcal{M}_{i^*} \subseteq \mathcal{M}_i that i_m \notin S and i_m \in \mathcal{I}_{i_1 \cdots i_M}(S) for all m \in \mathcal{M}_{i^*}. Since we have supposed that i^* \in S, it follows from the fact that i_m \notin S for all m \in \mathcal{M}_{i^*} that i^* \neq i_m for all m \in \mathcal{M}_{i^*}. Moreover, it follows from the construction of \mathcal{G}_{i_1 \cdots i_M} that all of the outgoing edges from vertex i^* are incoming edges to vertices i_m for m \in \mathcal{M}_{i^*}. Therefore, it follows from the fact that i_m \in \mathcal{I}_{i_1 \cdots i_M}(S) for all m \in \mathcal{M}_{i^*} that i^* \in \mathcal{I}_{i_1 \cdots i_M}(S).
We now prove the desired result for Case 2. First, we observe that
where the equality follows from Proposition J.3 and the inequality follows from our supposition that i^* \in S and because we have shown that i^* \in \mathcal{I}_{i_1 \cdots i_M}(S). Therefore, we have that
where the first equality follows from Claim 1 and the supposition of Case 2 that i \in \mathcal{I}_{i_1 \cdots i_M}(S), the inequality follows algebra, the second equality follows from Proposition J.3, and the final equality holds because of our supposition that r_{i^*} > r_{i} and because of line (?), which showed that \xi_{i_1 \cdots i_M}(S) \ge r_{i^*}. This concludes the proof of Case 2.
In both of the above two cases, we showed that \xi_{i_1 \cdots i_M}(S) \ge \xi_{i_1 \cdots i_M}(S \cup \{i \}), and so our proof of Proposition J.4 is complete. \square
There exists an assortment S \in \widehat{\mathcal{S}}^{\textnormal{OO}} that is optimal for (?).
Proof. Consider any arbitrary assortment S \in \mathcal{S}. For this assortment, we define a new assortment as
We first show that this new assortment S' is an element of the collection \widehat{\mathcal{S}}^{\textnormal{OO}}. Indeed, it follows from the fact that S \in \mathcal{S} that 0 \in S', which implies that S' \in \mathcal{S}. Moreover, for every i^* \in S', it follows from the construction of S' that there does not exist i \in S \setminus \{0\} that satisfies r_i < r_{i^*} and \mathcal{M}_{i^*} \subseteq \mathcal{M}_i. We thus conclude that S' \in \widehat{\mathcal{S}}^{\textnormal{OO}}.
We next show for each product i \in S' \setminus S that there must exist a product i^* \in S' that satisfies r_i < r_{i^*} and \mathcal{M}_{i^*} \subseteq \mathcal{M}_i. Indeed, consider any product i \in S' \setminus S. It follows from the construction of S' that there exists a product i' \in S that satisfies \mathcal{M}_{i'} \subseteq \mathcal{M}_i and r_i < r_{i'}. Let i^* \triangleq \mathop{\SFrm arg\,max}_{i' \in S: \mathcal{M}_{i'} \subseteq \mathcal{M}_i \text{ and } r_i < r_{i'}} r_{i'} be the product with the highest revenue among all products i' that satisfy \mathcal{M}_{i'} \subseteq \mathcal{M}_i and r_i < r_{i'}. It follows from the definition of i^* that there does not exist any products i'' \in S that satisfy \mathcal{M}_{i''} \subseteq \mathcal{M}_{i^*} and r_{i''} > r_{i^*}. Therefore, we conclude that the product i^* is an element of S'.
Finally, let \{ j_1,\ldots,j_\nu \} \triangleq S \setminus S' denote the products that have been removed from the assortment S. We observe for each tuple of products (i_1,\ldots,i_M) \in \mathcal{L} that
Indeed, the equality follows from algebra. The inequality follows from Proposition J.4 together with the fact that for each \iota \in \{1,\ldots,\nu \}, there exists a product i^* \in S' that satisfies r_{j_\iota} < r_{i^*} and \mathcal{M}_{i^*} \subseteq \mathcal{M}_{j_\iota}. Since the assortment S \in \mathcal{S} was chosen arbitrarily, our proof of Theorem J.6 follows from Proposition J.2. \square
| \widehat{\mathcal{S}}^{\textnormal{OO}} | \le (n+1)^{2^M}.
Proof. We readily observe that the collection of assortments \widehat{\mathcal{S}}^{\textnormal{OO}} is a subset of
where we recall from the beginning of §? that \mathcal{M}_i is defined as the subset of the past assortments \mathcal{M} \equiv \{1,\ldots,M\} that offered product i. For each subset of past assortments \mathcal{C} \subseteq \mathcal{M}, let the products that are offered only in the assortments in \mathcal{C} (excluding the no-purchase option) be denoted by
Equipped with the above definitions, we observe that \{\mathcal{N}(\mathcal{C}): \mathcal{C} \subseteq \mathcal{M}\} is the collection of subsets of products that always appear together in the past assortments, and we readily observe that |\{\mathcal{N}(\mathcal{C}): \mathcal{C} \subseteq \mathcal{M}\}| = 2^M. Therefore,
Indeed, the first inequality on line (Proof) holds because the collection of assortments \widehat{\mathcal{S}}^{\textnormal{OO}} is a subset of the collection of assortments \widetilde{\mathcal{S}}^{\textnormal{OO}}. To see why the second inequality on line (Proof) holds, consider any arbitrary subset of past assortments \mathcal{C} \subseteq \mathcal{M}, and let the products in \mathcal{N}(\mathcal{C}) be indexed in ascending order by revenue; that is, let the products that comprise \mathcal{N}(\mathcal{C}) be denoted by i_1^{\mathcal{C}},\ldots,i_{|\mathcal{N}(\mathcal{C})|}^{\mathcal{C}}, where r_{i_1^{\mathcal{C}}} < \cdots < r_{i_{|\mathcal{N}(\mathcal{C})|}^{\mathcal{C}}}. Then, it follows from the definition of the collection \widetilde{\mathcal{S}}^{\textnormal{OO}} that every assortment S \in \widetilde{\mathcal{S}}^{\textnormal{OO}} must satisfy the condition \left| \left\{ i^{\mathcal{C}}_1,\ldots,i^{\mathcal{C}}_{| \mathcal{N}(\mathcal{C})|} \right \} \cap S \right| \le 1. Since \mathcal{C} \subseteq \mathcal{M} was chosen arbitrarily, we have shown that
which proves that the second inequality on line (Proof) holds. The third inequality on line (Proof) follows from the fact that |\{\mathcal{N}(\mathcal{C}): \mathcal{C} \subseteq \mathcal{M}\}| = 2^M and from the fact that |\mathcal{N}(\mathcal{C})| \le n for every \mathcal{C} \subseteq \mathcal{M}. We have thus proven that | \widehat{\mathcal{S}}^{\textnormal{OO}} | is at most (n+1)^{2^M}, which concludes our proof of Lemma J.8. \square
The collection of assortments \widehat{\mathcal{S}}^{\textnormal{OO}} can be constructed in \mathcal{O}(n^{2} (M+| \widehat{\mathcal{S}}^{\textnormal{OO}}|)) time.
Proof.
We begin by developing an algorithm for constructing a directed graph, denoted by \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}), in which the set of vertices in the directed graph is defined as \mathscr{V}^{\textnormal{OO}} \triangleq \mathcal{N} and the set of directed edges is defined as \mathscr{E}^{\textnormal{OO}} \triangleq \{ (i^*,i) \in \mathcal{N} \times \mathcal{N}: \; r_{i^*} > r_{i} \textnormal{ and } \mathcal{M}_{i^*} \subseteq \mathcal{M}_{i} \}. This directed graph has a natural correspondence with the collection of assortments \widehat{\mathcal{S}}^{\textnormal{OO}}, as we readily observe that an assortment satisfies S \in \widehat{\mathcal{S}}^{\textnormal{OO}} if and only if [0 \in S] and [we have that i \notin S whenever there exists a product i^* \in S \setminus \{0 \} and a directed edge (i^*,i) \in \mathscr{E}^{\textnormal{OO}}]. It is easy to see that this directed graph is acyclic and has the property that a vertex j \in \mathscr{V}^{\textnormal{OO}} is reachable from a vertex i \in \mathscr{V}^{\textnormal{OO}} if and only if there is a directed edge (i,j) \in \mathscr{E}^{\textnormal{OO}} from vertex i to vertex j. A directed acyclic graph which has the aforementioned property for each pair of vertices is referred to as a transitive closure.
Our algorithm for constructing the directed acyclic graph \mathscr{G}^{\textnormal{OO}} that is a transitive closure is presented in Algorithm ?. In the algorithm, we first iterate over each product i \in \mathcal{N} and construct the corresponding set \mathcal{M}_i of past assortments which offered that product. We then iterate over each pair of products (i,i^*) \in \mathcal{N} \times \mathcal{N} and check whether r_{i^*} > r_{i} and \mathcal{M}_{i^*} \subseteq \mathcal{M}_i. It follows from identical reasoning as that given for Algorithm Procedure in Appendix ? that Algorithm ? has a total computation time of \mathcal{O}(n^2 M).
We next describe our algorithm for constructing the collection of assortments \widehat{\mathcal{S}}^{\textnormal{OO}} from the directed graph \mathscr{G}^{\textnormal{OO}}. This algorithm is denoted by Construct-\widehat{\mathcal{S}}^{\textnormal{OO}}(\mathscr{M},r) and is found in Algorithm ?. In this algorithm, we first use Algorithm ? to construct the directed acyclic graph \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}), and then we invoke a recursive subroutine denoted by RecursiveStep-OO(\mathscr{G}^{\textnormal{OO}}) in Algorithm ?. The goal of the recursive subroutine is to take as an input a generic directed acyclic graph \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}}, \mathscr{E}^{\textnormal{OO}}), and for that graph, output the collection of subsets of vertices \mathscr{A}^{\textnormal{OO}} \equiv \{S \subseteq \mathscr{V}^{\textnormal{OO}}: \text{ ifi Sand(i,j) E^OO, thenj S}\}. Algorithm ? concludes by adding the no-purchase option 0 into each of the subsets of vertices from \mathscr{A}^{\textnormal{OO}}. The correctness of Algorithm ? follows immediately from our earlier observation that an assortment satisfies S \in \widehat{\mathcal{S}}^{\textnormal{OO}} if and only if [0 \in S] and [we have that i \notin S whenever there exists a product i^* \in S \setminus \{0 \} and a directed edge (i^*,i) \in \mathscr{E}^{\textnormal{OO}}].
At a high level, the recursive subroutine in Algorithm ? is comprised of two cases. The base case of the subroutine is when the graph has no vertices, in which case it is clear that \mathscr{A}^{\textnormal{OO}} =\{ \emptyset \}. If we are not in the base case, then the aim of the recursive subroutine is to construct the collections \left \{ S \in \mathscr{A}^{\textnormal{OO}}: i \notin S \right \} and \left \{ S \in \mathscr{A}^{\textnormal{OO}}: i \in S \right \} for a chosen vertex i \in \mathscr{V}^{\textnormal{OO}} and output the union of these two collections. The construction of the collection \left \{ S \in \mathscr{A}^{\textnormal{OO}}: i \notin S \right \} takes place on lines (?)-(?) of Algorithm ?, and the construction of the collection \left \{ S \in \mathscr{A}^{\textnormal{OO}}: i \in S \right \} takes place on lines (?)-(?) of Algorithm ?.
Up to this point, we have established that Algorithm ? is correct (that is, it delivers the desired output for any valid input), and we have established that Algorithm ? is correct under the assumption that Algorithm ? is correct. Therefore, it remains for us to prove that the recursive subroutine in Algorithm ? is correct. To prove the correctness of the recursive subroutine, we will make use of four intermediary claims, which are denoted below by Claims ?-?. The purpose of the first two intermediary claims, denoted by Claims ? and ?, is to show that the graphs \mathscr{G}^{\textnormal{OO}'} \equiv (\mathscr{V}^{\textnormal{OO}'}, \mathscr{E}^{\textnormal{OO}'}) and \mathscr{G}^{\textnormal{OO}''} \equiv (\mathscr{V}^{\textnormal{OO}''}, \mathscr{E}^{\textnormal{OO}''}) constructed on lines (?) and (?) of Algorithm ? are directed acyclic graphs that are transitive closures, which implies that \mathscr{G}^{\textnormal{OO}'} and \mathscr{G}^{\textnormal{OO}''} are valid inputs on lines (?) and (?) of Algorithm ?. The purpose of the second two intermediary claims, denoted by Claims ? and ?, is to show that the union of the two collections \mathscr{A}^{\textnormal{OO}'} and \mathscr{A}^{\textnormal{OO}'''} constructed on lines (?) and (?) of Algorithm ? provides the desired output on line (?) of Algorithm ?.
Let \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}) be a directed acyclic graph that is a transitive closure. For notational convenience, let \mathscr{E}_i^{\textnormal{OO}} denote the set of incoming and outgoing edges from each vertex i \in \mathscr{V}^{\textnormal{OO}}. Then for each vertex i \in \mathscr{V}^{\textnormal{OO}}, we have that \tilde{\mathscr{G}}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}} \setminus \{i \}, \mathscr{E}^{\textnormal{OO}} \setminus \mathscr{E}_i^{\textnormal{OO}}) is a directed acyclic graph that is a transitive closure.
Let \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}) be a directed acyclic graph that is a transitive closure. For notational convenience, let \mathscr{E}_i^{\textnormal{OO}} denote the set of incoming and outgoing edges from each vertex i \in \mathscr{V}^{\textnormal{OO}}. Then for each subset of vertices \mathscr{B}^{\textnormal{OO}} \subseteq \mathscr{V}^{\textnormal{OO}}, we have that \tilde{\mathscr{G}}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}} \setminus \mathscr{B}^{\textnormal{OO}}, \mathscr{E}^{\textnormal{OO}} \setminus (\cup_{i \in \mathscr{B}^{\textnormal{OO}}} \mathscr{E}_i^{\textnormal{OO}})) is a directed acyclic graph that is a transitive closure.
Let \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}) be a directed acyclic graph that is a transitive closure. For notational convenience, let \mathscr{E}_i^{\textnormal{OO}} denote the set of incoming and outgoing edges from each vertex i \in \mathscr{V}^{\textnormal{OO}}. For each vertex i \in \mathscr{V}^{\textnormal{OO}},
Let \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}) be a directed acyclic graph that is a transitive closure. For notational convenience, let \mathscr{E}_i^{\textnormal{OO}} denote the set of incoming and outgoing edges from each vertex i \in \mathscr{V}^{\textnormal{OO}}. For each vertex i \in \mathscr{V}^{\textnormal{OO}},
Proof. The proofs of Claims ?, ?, ?, and ? follows from identical reasoning as the proofs of Claims 2, 3, 4, and 5 from Appendix ? and are thus omitted. \square
Using the above intermediary claims, we now prove the correctness of the recursive subroutine in Algorithm ?. Indeed, it is clear that the recursive subroutine yields the correct output in the base case where \mathscr{V}^{\textnormal{OO}} = \emptyset. Next, let us assume by induction that the recursive subroutine yields the correct output for all valid input graphs with up to p-1 vertices, and consider any valid input \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}) for which the number of vertices is |\mathscr{V}^{\textnormal{OO}}| = p. Let i \in \mathscr{V}^{\textnormal{OO}} denote the vertex from this graph which is chosen in line (?) of Algorithm ?, where the existence of such a vertex follows from the fact that we are in the case where \mathscr{V}^{\textnormal{OO}} \neq \emptyset. It follows immediately from Claim 3 that the graphs \mathscr{G}^{\textnormal{OO}'} \equiv (\mathscr{V}^{\textnormal{OO}'}, \mathscr{E}^{\textnormal{OO}'}) and \mathscr{G}^{\textnormal{OO}''} \equiv (\mathscr{V}^{\textnormal{OO}''}, \mathscr{E}^{\textnormal{OO}''}) constructed on lines (?) and (?) of Algorithm ? are directed acyclic graphs which are transitive closures, which implies that these graphs are valid inputs to Algorithm ? in lines (?) and (?). Therefore, it follows from the induction hypothesis and lines (?), (?), and (?) of Algorithm ? that
where the induction hypothesis can be applied because \mathscr{G}^{\textnormal{OO}'} \equiv (\mathscr{V}^{\textnormal{OO}'}, \mathscr{E}^{\textnormal{OO}'}) and \mathscr{G}^{\textnormal{OO}''}\equiv (\mathscr{V}^{\textnormal{OO}''}, \mathscr{E}^{\textnormal{OO}''}) are valid inputs to Algorithm ? and because | \mathscr{V}^{\textnormal{OO}'}| \le p-1 and | \mathscr{V}^{\textnormal{OO}''}| \le p-1. Therefore, it follows from Claims ? and ? that
which proves that the output of Algorithm ? is
This completes our proof of the correctness of Algorithm ?.
We conclude Appendix ? by analyzing the computation time of Algorithm ?. Indeed, we recall that the computation time required for line (?) in Algorithm ? is \mathcal{O}(n^2M). In what follows, we assume that all directed graphs are stored as adjacency lists. Under this assumption, our analysis of the computation time for line (?) in Algorithm ? is split into the following two intermediary claims, denoted by Claim ? and ?. In our first intermediary claim, presented below as Claim ?, we establish the computation time required for lines (?), (?), (?), and (?) of Algorithm ?. The proof of the following Claim ? follows from similar reasoning as the proof of Claim 6 from Appendix ? and is thus omitted.
If \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}) is a directed acyclic graph that is a transitive closure with | \mathscr{V}^{\textnormal{OO}}| \ge 1, then lines (?), (?), (?), and (?) of Algorithm ? can be performed in \mathcal{O}\left(| \mathscr{V}^{\textnormal{OO}}| \times \left|\textsc{RecursiveStep-OO}(\mathscr{G}^{\textnormal{OO}}) \right| \right) time.
In our second intermediary claim, presented below as Claim ?, we use Claim ? to establish the computation time for Algorithm ? for any valid input. The proof of the following Claim ? follows from similar reasoning as the proof of Claim 7 from Appendix ? and is thus omitted.
If \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}},\mathscr{E}^{\textnormal{OO}}) is a directed acyclic graph that is a transitive closure with | \mathscr{V}^{\textnormal{OO}}| \ge 1, then the computation time for Algorithm ? is \mathcal{O}(|\mathscr{V}^{\textnormal{OO}}|^2 \times \left|\textsc{RecursiveStep-OO}(\mathscr{G}^{\textnormal{OO}}) \right| ).
Our analysis of the computation time for line (?) of Algorithm ? follows readily from Claim ?. Indeed, we observe that the graph \mathscr{G}^{\textnormal{OO}} \equiv (\mathscr{V}^{\textnormal{OO}}, \mathscr{E}^{\textnormal{OO}}) that was constructed on line (?) of Algorithm ? satisfies |\mathscr{V}^{\textnormal{OO}}| = n and | \mathscr{E}^{\textnormal{OO}}| \le n^2. Therefore, it follows from Claim ? that line (?) of Algorithm ? requires \mathcal{O}((n+1)^2 \times \left|\textsc{RecursiveStep-OO}(\mathscr{G}^{\textnormal{OO}}) \right|) = \mathcal{O}(n^2 | \widehat{\mathcal{S}}^{\textnormal{OO}}|) computation time. We have shown that the total computation time for Algorithm ? is
\square
For each S \subseteq \mathcal{N}_0 that satisfies S \cap S_1 \neq \emptyset, \max_{\lambda \in \mathcal{U}} \mathscr{R}^\lambda(S) is equal to the optimal objective value of the following linear optimization problem: 911 0.8em 0.3em 0.5em 0.3em 0.6em 0.3em 0.3em 0.5em 1em 0 2 11pt plus 0.5pt minus 0.35pt =11pt=9pt
Proof of Claim 22. Consider any assortment S \subseteq \mathcal{N}_0 that satisfies S \cap S_1 \neq \emptyset. For each i \in \mathcal{N}_0, let \bar{r}_i \triangleq r_n - r_i. We observe that
Indeed, the first equality follows from the definition of the predicted expected revenue function \mathscr{R}^\lambda(\cdot) from §?. The second equality follows from algebra and from the fact that \sum_{i \in \mathcal{N}_0} \mathscr{D}^\lambda_i(S) = 1 for all \lambda \in \Delta_{\Sigma}. The third equality follows from algebra. The fourth equality follows from the definition of the vector \bar{r}.
We observe that the optimization problem \min_{\lambda \in \mathcal{U}} \sum_{i \in \mathcal{N}_0} \bar{r}_{i} \mathscr{D}^\lambda_i(S) is the same as the optimization problem \min_{\lambda \in \mathcal{U}} \sum_{i \in \mathcal{N}_0} {r}_{i} \mathscr{D}^\lambda_i(S), except with the revenue r_i for each product i \in \mathcal{N}_0 having been changed to \bar{r}_i. In particular, we observe that the vector \bar{r} satisfies 0 = \bar{r}_n < \bar{r}_{n-1} < \cdots < \bar{r}_1 < \bar{r}_0. Thus, with a suitable reindexing of the products, it follows readily from Assumption Assumption, from the fact that S \cap S_1 \neq \emptyset, and from Proposition 5.11 that \min_{\lambda \in \mathcal{U}} \sum_{i \in \mathcal{N}_0} \bar{r}_{i} \mathscr{D}^\lambda_i(S) is equal to the optimal objective value of the following linear optimization problem: 911 0.8em 0.3em 0.5em 0.3em 0.6em 0.3em 0.3em 0.5em 1em 0 2 11pt plus 0.5pt minus 0.35pt =11pt=9pt
Combining the above analysis, we conclude that
where the first equality follows from line (Proof) and from the fact that \min_{\lambda \in \mathcal{U}} \sum_{i \in \mathcal{N}_0} \bar{r}_{i} \mathscr{D}^\lambda_i(S) is equal to the optimal objective value of the linear optimization problem (?), the second equality follows from algebra, and the third equality follows from the fact that \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} g_{m,i,\kappa} = 1 is one of the constraints in the linear optimization problem (5.11). Our proof of Claim 22 is thus complete. \square
The text on this page is from arXiv:2112.05010v4 by Bradley Sturt, under the licence CC BY 4.0. The corpus made these changes: it read the items out of the LaTeX source, it expanded the macros of the paper, it put each proof after its statement, and it converted the text to HTML. The formulas are the TeX of the paper, and KaTeX renders them. A formula or a reference can look different from the PDF. The page is published under CC BY 4.0.
The record of each item is in analysis/objects/2112/2112.05010.jsonl.