arXiv reader

The Value of Robust Assortment Optimization Under Ranking-based Choice Models

Bradley Sturt

arXiv
2112.05010v4 · PDF · 26 February 2024
Categories
math.OC
Licence
CC BY 4.0 The site shows the text.

Abstract

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.

Items 96

Question

Question 1.1

ZD0F

Can the optimal objective value of (?) ever be strictly greater than the expected revenue of the firm’s best past assortment?

Question

Question 1.2

DM5T

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

Question

Question 1.3

9WQJ

What structural properties of a firm’s past assortments are sufficient for designing efficient algorithms for solving the robust optimization problem (?)?

Question

Question 1.4

D9NN

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?

Theorem

Theorem 4.1

N6UY

There exists an assortment S \in \widehat{\mathcal{S}} that is optimal for (?).

Lemma

Lemma 4.2

XTF4

If \mathscr{M} = \bar{\mathcal{S}}, then \widehat{\mathcal{S}} = \mathscr{M}.

Corollary

Corollary 4.3

V83G

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.

Lemma

Lemma 4.4

ATPZ

If M = 2, then

\begin{aligned} \widehat{\mathcal{S}} = \left \{ S \in \mathcal{S}: \quad \begin{aligned} &\textnormal{there exists }i_1 \in S_1 \setminus S_2 \textnormal{ and } i_2 \in S_2 \setminus S_1 \textnormal{ such that}\\ &S = \left(S_1 \cap S_2 \right) \cup \left \{j \in S_1 \setminus S_2: j \ge i_1 \right \} \cup \left \{j \in S_2 \setminus S_1: j \ge i_2 \right \}\end{aligned} \right \}. \end{aligned}
Lemma

Lemma 4.5

I1F1

| \widehat{\mathcal{S}} | \le (n+2)^{2^M}.

Lemma

Lemma 4.6

STCH

The collection of assortments \widehat{\mathcal{S}} can be constructed in \mathcal{O}(n^{2} (M+| \widehat{\mathcal{S}}|)) time.

Definition

Definition 4.7

QO0A

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 \}.

Lemma

Lemma 4.8

M6JE

If \mathscr{M} = \tilde{\mathcal{S}}, then \widehat{\mathcal{S}} = \left \{ S \subseteq \mathcal{N}_0: \{0,n\} \subseteq S \right \}.

Theorem

Theorem 4.9

96JH

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 (?).

Definition

Definition 4.10

9QV2

\mathcal{D}_i(S) \triangleq \left \{ \sigma \in \Sigma: \; i = \mathop{\SFrm arg\,min}_{j \in S} \sigma (j) \right \}.

Used by Proof
Definition

Definition 4.11

U4UR

\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 \}.

Definition

Definition 4.12

F98K

\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.

Used by Proof
Proposition

Proposition 4.13

1F4C

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:

\begin{aligned} & \; \underset{\lambda, \epsilon}{\textnormal{minimize}} && \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \rho_{i_1 \cdots i_M}(S) \lambda_{i_1\cdots i_M}\\ &\textnormal{subject to}&& \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i} \lambda_{i_1 \cdots i_M} - \epsilon_{m,i}= v_{m,i} \quad \forall m \in \mathcal{M}, \; i \in S_m\\ &&& \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \lambda_{i_1 \cdots i_M} = 1 \\ &&& \| \epsilon \| \le \eta\\ &&& \lambda_{i_1 \cdots i_M} \ge 0 \quad \forall (i_1,\ldots,i_M) \in \mathcal{L}. \end{aligned}
Used by Proof, Proof, Proof, Proof
Remark

Remark 4.15

UUWL

(4.13) has | \mathcal{L}| = \mathcal{O}(n^M) decision variables and \mathcal{O}(nM) constraints.

Proposition

Proposition 4.16

PQT5

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}.

Remark

Remark 5.1

LS4T

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.

Used by Proof, Proof
Theorem

Theorem 5.2

XQ3K

If M = 2 and \eta = 0, then (?) can be solved in \mathcal{O}(n^5 \log (n r_n)) time.

Lemma

Lemma 5.3

CYSZ

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 \}.

Lemma

Lemma 5.4

VK17

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.

Theorem

Theorem 5.5

X53R

(?) can be solved in weakly \mathcal{O}(\textnormal{poly}(n)) time for every fixed M.

Lemma

Lemma 5.6

9KG1

|\mathcal{L}| = \mathcal{O}(n^M), and \mathcal{L} can be constructed in \mathcal{O}(Mn^{M+1}) time.

Lemma

Lemma 5.7

MYYY

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.

Lemma

Lemma 5.8

N9G1

If Assumption Assumption holds, then

\mathcal{L} = \left \{(i_1,\ldots,i_M) \in S_1 \times \cdots \times S_M:\textnormal{ for each }m \in \{1,\ldots,M-1\}, \; i_{m+1} \in \{i_m \} \cup \mathcal{B}_{m+1} \right \}.
Uses Assumption · Used by Proof
Lemma

Lemma 5.10

I1FH

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}:

\begin{aligned} \rho_{i_1 \cdots i_M}(S \cap S_m) &= \begin{cases} r_{i_m},&\textnormal{if } i_m \in S, \\ \min \limits_{i \in \mathcal{B}_m \cap S} r_i, &\textnormal{if } i_m \notin S \textnormal{ and } m = 1,\\ \min \left \{ \min \limits_{i \in \mathcal{B}_m \cap S} r_i ,\; \rho_{i_1 \cdots i_M} \left(S \cap S_{m-1} \right) \right \}, &\textnormal{if } i_m \notin S \textnormal{ and } m \ge 2. \end{cases} \end{aligned}
Proposition

Proposition 5.11

X13V

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

\begin{aligned} & \; \underset{f, g,\epsilon}{\textnormal{minimize}} && \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} \kappa g_{M,i,\kappa} \\ &\textnormal{subject to}&& \sum_{\kappa: (m,i,\kappa) \in \mathfrak{V}} g_{m,i,\kappa} - \epsilon_{m,i} = v_{m,i} && \forall m \in \mathcal{M}, \; i \in S_m \\ &&& \sum_{i',\kappa': ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}} f_{m,i,\kappa,i',\kappa'} = g_{m,i,\kappa} && \forall (m,i,\kappa) \in \mathfrak{V}: m \in \{1,\ldots,M-1\} \\ &&& \sum_{i',\kappa': ((m-1,i',\kappa'),(m,i,\kappa)) \in \mathfrak{E}} f_{m-1,i',\kappa',i,\kappa} = g_{m,i,\kappa} && \forall (m,i,\kappa) \in \mathfrak{V}: m \in \{2,\ldots,M\} \\ &&& g_{m,i,\kappa} = 0 && \forall (m,i,\kappa)\in \mathfrak{V}: i \in S,\; i \in \mathcal{B}_m, \; \kappa \neq r_i \\ &&& g_{m,i,\kappa} = 0 && \forall (m,i,\kappa)\in \mathfrak{V}: i \in S,\; i \notin \mathcal{B}_m, \; \kappa \in \{r_j: j \in \mathcal{B}_m \} \\ &&& g_{m,i,\kappa} = 0 && \forall (m,i,\kappa)\in \mathfrak{V}: \kappa \in \{ r_j: j \in \mathcal{B}_m \setminus S \} \\ &&& \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} g_{M,i,\kappa} = 1 \\ &&& \| \epsilon \| \le \eta \\ &&& f_{m,i,\kappa,i',\kappa'} \ge 0 && \forall ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E} \\ &&& g_{m,i,\kappa} \ge 0 && \forall (m,i,\kappa) \in \mathfrak{V}. \end{aligned}
Uses Assumption · Used by Proof, Proof, Proof
Theorem

Theorem 5.12

5TWF

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.

Uses Assumption · Used by Remark 5.13
Remark

Remark 5.13

QOXJ

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.

Theorem

Theorem 6.1

06EX

(?) can be solved in weakly \mathcal{O}(\textnormal{poly}(n)) time for every fixed M.

Theorem

Theorem 6.2

G0G2

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.

Theorem

Theorem 6.3

CC0U

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.

Lemma

Lemma B.1

Q39W

(i_1,\ldots,i_M) \in \mathcal{L} if and only if \mathcal{G}_{i_1 \cdots i_M} is acyclic.

Used by Proof, Proof, Proof, Proof
Proof of Lemma B.1

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

\begin{aligned} \left[ \sigma(i_m) < \sigma(j) \textnormal{ for all }m \in \mathcal{M} \textnormal{ and }j \in S_m \setminus \{i_m\}\right] &\iff \left[i_m = \mathop{\SFrm arg\,min}_{j \in S_m} \sigma(j) \textnormal{ for all }m \in \mathcal{M} \right]\\ &\iff \left[ \sigma \in \cap_{m \in \mathcal{M}} \mathcal{D}_{i_m}(S_m) \right], \end{aligned}

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

Definition

Definition B.3

47AI

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.

Lemma

Lemma B.4

ZDRW

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.

Used by Proof
Proof of Lemma B.4

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

Lemma

Lemma B.6

OWYJ

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.

Used by Proof
Proof of Lemma B.6

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

Lemma

Lemma B.8

ZYB6

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 of Lemma B.8

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

Definition

Definition B.10

HUEZ

\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 \}.

Used by Proof, Proof
Proposition

Proposition B.11

ZILL

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.

Used by Proof, Proof
Claim

Claim 1

LIEV

For all S \in \mathcal{S}, (i_1,\ldots,i_M) \in \mathcal{L}, and i \notin S,

\begin{aligned} &\rho_{i_1 \cdots i_M}(S \cup \{i\}) = \begin{cases} \rho_{i_1 \cdots i_M}(S),&\textnormal{if } i \notin \mathcal{I}_{i_1 \cdots i_M}(S),\\ \min \left \{ \min \limits_{j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S) \cap \left\{ j' \in \mathcal{N}_0: i \nprec_{i_1 \cdots i_M} j' \right\}} r_j, r_i \right \}, &\textnormal{if } i \in \mathcal{I}_{i_1 \cdots i_M}(S).\\ \end{cases} \end{aligned}
Used by Proof
Proof of Claim 1

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

\begin{aligned} \mathcal{I}_{i_1 \cdots i_M}(S \cup \{i\}) &= \left \{ j \in \mathcal{N}_0: \textnormal{for all } m \in \mathcal{M}, \; \textnormal{if } i_m \in S \cup \{i\}, \text{ then } i_m \nprec_{i_1 \cdots i_M} j \right \} \\ &= \left \{ j \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} j \right \} \\ &\quad \cap \left \{ j \in \mathcal{N}_0: \textnormal{if there exists } m \in \mathcal{M} \textnormal{ such that } i = i_m, \textnormal{ then }i \nprec_{i_1 \cdots i_M} j \right \} \\ &= \mathcal{I}_{i_1 \cdots i_M}(S) \cap \left \{ j \in \mathcal{N}_0: \textnormal{if there exists } m \in \mathcal{M} \textnormal{ such that } i = i_m, \textnormal{ then }i \nprec_{i_1 \cdots i_M} j \right \} \\ &=\begin{cases} \mathcal{I}_{i_1 \cdots i_M}(S),&\text{if }i \notin \{i_1,\ldots,i_M\},\\ \mathcal{I}_{i_1 \cdots i_M}(S) \cap \left \{ j \in \mathcal{N}_0: i \nprec_{i_1 \cdots i_M} j \right \},&\text{if }i \in \{i_1,\ldots,i_M\} \end{cases} \\ &= \mathcal{I}_{i_1 \cdots i_M}(S) \cap \left \{ j \in \mathcal{N}_0: i \nprec_{i_1 \cdots i_M} j \right \}. \end{aligned}

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

\begin{aligned} \rho_{i_1 \cdots i_M}(S \cup \{i \}) &= \min_{j \in (S \cup \{i\}) \cap \mathcal{I}_{i_1 \cdots i_M}(S \cup \{i\})} r_j \\ &= \min_{j \in (S \cup \{i\}) \cap \mathcal{I}_{i_1 \cdots i_M}(S) \cap \{j' \in \mathcal{N}_0: \; i \nprec_{i_1 \cdots i_M} j' \}} r_j \\ &= \begin{cases} \min \limits_{j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S) \cap \{ j' \in \mathcal{N}_0: i \nprec_{i_1 \cdots i_M} j' \}} r_j,&\text{if } i \notin \mathcal{I}_{i_1 \cdots i_M}(S),\\ \min \left \{ \min \limits_{j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S) \cap \{ j' \in \mathcal{N}_0: i \nprec_{i_1 \cdots i_M} j' \}} r_j, r_i \right \}, &\text{if } i \in \mathcal{I}_{i_1 \cdots i_M}(S), \end{cases} \end{aligned}

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

Procedure

Procedure

HT91
  1. Initialize the vertex set \mathscr{V} \leftarrow \emptyset and edge set \mathscr{E} \leftarrow \emptyset.

  2. For each product i \in \mathcal{N}_0:

    1. Update \mathscr{V} \leftarrow \mathscr{V} \cup \{i \}.

    2. Construct the set \mathcal{M}_i of past assortments which offered product i.

  3. For each pair of products (i^*,i) \in \mathcal{N}_0 \times \mathcal{N}_0:

    1. If r_{i^*} < r_{i} and \mathcal{M}_{i^*} \subseteq \mathcal{M}_i:

      1. Update \mathscr{E} \leftarrow \mathscr{E} \cup \{(i^*,i) \}

  4. Output \mathscr{G} \equiv (\mathscr{V},\mathscr{E}) and terminate.

A procedure for constructing the directed acyclic graph \mathscr{G}.

Used by Proof
Procedure

Procedure

6O3E
  1. Construct the directed acyclic graph \mathscr{G} \leftarrow \textsc{Construct-G(M,r)}.

  2. Compute the collection of assortments \widehat{\mathcal{S}} \leftarrow \textsc{RecursiveStep(G)}.

  3. For each S \in \widehat{\mathcal{S}}:

    1. If 0 \notin S:

      1. Update \widehat{\mathcal{S}} \leftarrow \widehat{\mathcal{S}} \setminus \{ S \}.

  4. Output \widehat{\mathcal{S}} and terminate.

Procedure

Procedure

SVZ7
  1. If \mathscr{V} = \emptyset:

    1. Output the collection \mathscr{A} \equiv\{ \emptyset \} and terminate.

  2. Otherwise:

    Claim

    Claim 2

    XPZD

    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.

    Used by Proof
    Proof of Claim 2

    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

    Claim

    Claim 3

    JZSP

    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.

    Used by Proof
    Proof of Claim 3

    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:

    \begin{aligned} {\mathscr{G}}^{\mathscr{B}}_j \equiv (\underbrace{\mathscr{V} \setminus \{i^{\mathscr{B}}_1,\ldots, i^{\mathscr{B}}_{j} \}}_{\mathscr{V}^{\mathscr{B}}_j}, \; \underbrace{\mathscr{E} \setminus \left \{ (k,\ell) \in \mathscr{E}: k \in \{i^{\mathscr{B}}_1,\ldots, i^{\mathscr{B}}_{j} \} \textnormal{ or } \ell \in \{i^{\mathscr{B}}_1,\ldots, i^{\mathscr{B}}_{j} \} \right \}}_{\mathscr{E}^{\mathscr{B}}_j} ). \end{aligned}

    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:

    \begin{aligned} \mathscr{V}^{\mathscr{B}}_j &= \mathscr{V}^{\mathscr{B}}_{j-1} \setminus \{i^{\mathscr{B}}_j\}; & \mathscr{E}^{\mathscr{B}}_j &= \mathscr{E}^{\mathscr{B}}_{j-1} \setminus \left \{(k,\ell) \in \mathscr{E}^{\mathscr{B}}_{j-1}: \; k = i^{\mathscr{B}}_j \textnormal{ or } \ell = i^{\mathscr{B}}_j \right \}. \end{aligned}

    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

    Uses Claim 2
    Claim

    Claim 4

    PTPI

    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},

    \begin{aligned} &\left \{S \subseteq \mathscr{V} \setminus \{i \}: \textnormal{ if $k \in S$ and $(k,j) \in \mathscr{E}$, then $j \in S$} \right\} \\ & = \left \{ S \subseteq \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}): \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E} \setminus \left( \mathscr{E}_i \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}} \mathscr{E}_\ell \right), \textnormal{ then } j \in S \right \}. \end{aligned}
    Proof of Claim 4

    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

    \begin{aligned} &\left \{S \subseteq \mathscr{V} \setminus \{i \}: \text{ if $k \in S$ and $(k,j) \in \mathscr{E}$, then $j \in S$} \right\} \\ &= \left \{ S \subseteq \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}): \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E}, \textnormal{ then } j \in S \right \}, \end{aligned}

    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

    \begin{aligned} \tilde{\mathscr{A}}' &\triangleq \left \{ S \subseteq \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}): \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E}, \textnormal{ then } j \in S \right \}\\ \tilde{\mathscr{A}} &\triangleq \left \{ S \subseteq \mathscr{V} \setminus (\{ i \} \cup \{\ell: (\ell,i) \in \mathscr{E} \}): \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E} \setminus \left( \mathscr{E}_i \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}} \mathscr{E}_\ell \right), \textnormal{ then } j \in S \right \}. \end{aligned}

    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

    Claim

    Claim 5

    IZ7D

    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},

    \begin{aligned} &\left \{S \subseteq \mathscr{V}: \left[ i \in S \right] \textnormal{ and } \left[ \textnormal{if $k \in S$ and $(k,j) \in \mathscr{E}$, then $j \in S$} \right] \right\} \\ & = \left \{ \begin{aligned} &S' \cup \{i \} \cup \left\{ \ell: (i,\ell) \in \mathscr{E} \right \} :\\ &\quad S' \in \left \{ S \subseteq \mathscr{V} \setminus \left( \{i \} \cup \left\{ \ell: (i,\ell) \in \mathscr{E} \right \} \right): \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E} \setminus \left( \mathscr{E}_i \cup \bigcup_{\ell: (i,\ell) \in \mathscr{E}} \mathscr{E}_\ell \right), \textnormal{ then } j \in S \right \} \end{aligned} \right \}. \end{aligned}
    Proof of Claim 5

    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

    \begin{aligned} &\left \{S \subseteq \mathscr{V}: \left[ i \in S \right] \textnormal{ and } \left[ \textnormal{if $k \in S$ and $(k,j) \in \mathscr{E}$, then $j \in S$} \right] \right\} \\ &= \left \{S \subseteq \mathscr{V}: \left[ \{i \} \cup \{\ell: (i,\ell) \in \mathscr{E} \} \subseteq S \right] \textnormal{ and } \left[ \textnormal{if $k \in S$ and $(k,j) \in \mathscr{E}$, then $j \in S$} \right] \right\} \\ & = \left \{ S \subseteq \mathscr{V}: \left[ \{i \} \cup \left\{ \ell: (i,\ell) \in \mathscr{E} \right \} \subseteq S\right] \textnormal{ and } \left[ \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E} \setminus \left( \mathscr{E}_i \cup \bigcup_{\ell: (i,\ell) \in \mathscr{E}} \mathscr{E}_\ell \right), \textnormal{ then } j \in S \right] \right \} . \end{aligned}

    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

    Claim

    Claim 6

    WIA2

    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.

    Used by Proof, Proof
    Proof of Claim 6

    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

    \begin{aligned} \underbrace{ \mathcal{O}(| \mathscr{V}| + |\mathscr{E}|)}_{\eqref{step:construct_A1:1}} + \underbrace{\mathcal{O}(| \mathscr{V}| + | \mathscr{E}|) }_{\eqref{step:construct_A2:1}}+ \underbrace{\mathcal{O} \left(\sum_{S \in \mathscr{A}'''} |S| \right)}_{\eqref{step:construct_A2:3}} + \underbrace{ \mathcal{O} \left( \sum_{S \in \mathscr{A}} | S| \right)}_{\eqref{step:construct_A}} = \mathcal{O}\left(| \mathscr{V}| + |\mathscr{E}| + \sum_{S \in \mathscr{A}} | S|\right). \end{aligned}

    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

    Claim

    Claim 7

    OBWZ

    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| ).

    Used by Proof
    Proof of Claim 7

    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

    \begin{aligned} T(\mathscr{G}) &= \begin{cases} | \mathscr{V}| \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right| + T(\mathscr{G}') + T(\mathscr{G}''),&\text{if } \mathscr{V} \neq \emptyset,\\ 1,&\text{if } \mathscr{V} = \emptyset, \end{cases} \end{aligned}

    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:

    \begin{aligned} T(\mathscr{G}) \le (|\mathscr{V}|+1)^2 \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right|. \end{aligned}

    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

    \begin{aligned} T(\mathscr{G}) &= | \mathscr{V}| \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right| + T(\mathscr{G}') + T(\mathscr{G}'')\\ &\le | \mathscr{V}| \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right| + (|\mathscr{V}'|+1)^2 \times \left|\textsc{RecursiveStep}(\mathscr{G}') \right| + (|\mathscr{V}''|+1)^2 \times \left|\textsc{RecursiveStep}(\mathscr{G}'') \right| \\ &\le | \mathscr{V}| \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right| + | \mathscr{V}|^2 \times \left|\textsc{RecursiveStep}(\mathscr{G}') \right| + | \mathscr{V}|^2 \times \left|\textsc{RecursiveStep}(\mathscr{G}'') \right| \\ &= | \mathscr{V}| \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right| + | \mathscr{V}|^2 \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right| \\ &\le (| \mathscr{V}|+1)^2 \times \left|\textsc{RecursiveStep}(\mathscr{G}) \right|, \end{aligned}

    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

    Uses Claim 6
    Lemma

    Lemma E.1

    FFNH

    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}:

    \begin{aligned} \lambda_{i_1 \cdots i_n} &= \begin{cases} \frac{1}{n},&\textnormal{if there exists } j \in \bar{S}\setminus \{0,n\} \textnormal{ such that } (i_1,\ldots,i_n) = \left(\text{\b{$i$}}^j_1,\ldots,\text{\b{$i$}}^j_n \right),\\ \frac{1}{n},&\textnormal{if there exists } j \in \mathcal{N} \setminus \bar{S} \textnormal{ such that }(i_1,\ldots,i_n) = \left(\bar{i}^j_1,\ldots,\bar{i}^j_n \right) ,\\ \frac{1}{n},&\textnormal{if } (i_{1}, \ldots, i_n) = (n,\ldots,n),\\ 0,&\textnormal{otherwise}. \end{cases} \end{aligned}
    Used by Proof
    Claim

    Claim 8

    X4GG

    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.

    Used by Proof
    Proof of Claim 8

    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

    \begin{aligned} \lambda_{i_1 \cdots i_n} = \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: i_{n}' = 0} \lambda_{i_1' \cdots i_n'} = v_{n,0} = 0, \end{aligned}

    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

    Claim

    Claim 9

    DWKC

    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.

    Used by Proof
    Proof of Claim 9

    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

    \begin{aligned} j \triangleq \min \left\{j' \in \{1,\ldots,n-1\}: i_{j' + 1} = j' \right \} = \min \left\{m \in \{1,\ldots,n-1\}: i_{m+1} \notin \{0,n\} \right \}, \end{aligned}

    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:

    \begin{aligned} \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: i_{j+1}' = j} \lambda_{i_1' \cdots i_n'} = v_{j+1,j}; \quad \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: i_n' = j} \lambda_{i_1' \cdots i_n'} = v_{n,j}. \end{aligned}

    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

    \begin{aligned} \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: i_{j+1}' = j} \lambda_{i_1' \cdots i_n'} - \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: i_n' = j} \lambda_{i_1' \cdots i_n'} = 0. \end{aligned}

    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

    \begin{aligned} \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: \; \substack{ i_{j+1}' = j \text{ and } i_{k}' \neq i_{k+1}' \text{ for }\\\text{some } k \in \{j+1,\ldots,n-1\} } } \lambda_{i_1' \cdots i_n'} = 0. \end{aligned}

    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

    \begin{aligned} \lambda_{i_1' \cdots i_n'} = 0 \quad \forall (i_1',\ldots,i_n') \in \mathcal{L} \textnormal{ such that } i_{j+1}' = j \text{ and } i_{k}' \neq i_{k+1}' \text{ for some } k \in \{j+1,\ldots,n-1\}. \end{aligned}

    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

    Uses Claim 8
    Proof

    Proof

    664Q

    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

    \begin{aligned} {\mathcal{L}}^* &\triangleq \left \{(i_1',\ldots,i_n'): \textnormal{ there exists } j \in \{1,\ldots,n-1\} \textnormal{ such that } i_1' = \cdots = i_{j}' = 0 \textnormal{ and } i_{j+1}' = \cdots = i_{n}' = j \right \} \\ &\quad \cup \left \{(i_1',\ldots,i_n'): \textnormal{ there exists } j \in \{1,\ldots,n-1\} \textnormal{ such that } i_1' = \cdots = i_{j}' = n \textnormal{ and } i_{j+1}' = \cdots = i_{n}' = j \right \}\\ &= \left \{ \left(\text{\b{$i$}}^1_1,\ldots,\text{\b{$i$}}^1_n \right), \ldots, \left(\text{\b{$i$}}^{n-1}_1,\ldots,\text{\b{$i$}}^{n-1}_1\right),\left(\bar{i}^1_1,\ldots,\bar{i}^1_n \right), \ldots, \left(\bar{i}^{n-1}_1,\ldots,\bar{i}^{n-1}_1\right) \right \}, \end{aligned}

    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

    \begin{aligned} v_{j,\dagger} = \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: i_{j}' = \dagger} \lambda_{i_1' \cdots i_n'} = \sum_{(i_1',\ldots,i_n') \in \mathcal{L}^*: i_{j}' = \dagger} \lambda_{ {i}_1' \cdots {i}_n'}= \begin{cases} \sum_{j'=j}^{n-1} \lambda_{ \text{\b{$i$}}_1^{j'} \cdots \text{\b{$i$}}_n^{j'}}, &\text{if } \dagger = 0,\\ \lambda_{n \cdots n } + \sum_{j'=j}^{n-1} \lambda_{ \bar{i}_1^{j'} \cdots \bar{i}_n^{j'}}, &\text{if } \dagger = n, \end{cases} \end{aligned}

    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

    \begin{aligned} v_{j+1,\dagger} = \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: i_{j+1}' = \dagger} \lambda_{i_1' \cdots i_n'} = \sum_{(i_1',\ldots,i_n') \in \mathcal{L}^*: i_{j+1}' = \dagger} \lambda_{ {i}_1' \cdots {i}_n'}= \begin{cases} \sum_{j'=j+1}^{n-1} \lambda_{ \text{\b{$i$}}_1^{j'} \cdots \text{\b{$i$}}_n^{j'}}, &\text{if } \dagger = 0,\\ \lambda_{n \cdots n } + \sum_{j'=j+1}^{n-1} \lambda_{ \bar{i}_1^{j'} \cdots \bar{i}_n^{j'}}, &\text{if } \dagger = n. \end{cases} \end{aligned}

    Combining lines (?) and (?), we have shown that

    \begin{aligned} v_{j,\dagger}-v_{j+1,\dagger} = \begin{cases} \lambda_{ \text{\b{$i$}}_1^{j} \cdots \text{\b{$i$}}_n^{j}}, &\text{if } \dagger = 0,\\ \lambda_{ \bar{i}_1^{j} \cdots \bar{i}_n^{j}}, &\text{if } \dagger = n. \end{cases} \end{aligned}

    We also recall from (?) that

    \begin{aligned} v_{j,\dagger}-v_{j+1,\dagger} &= \begin{cases} \frac{1}{n},&\text{if } \dagger = 0 \text{ and } j \in \bar{S},\\ \frac{1}{n},&\text{if } \dagger = n \text{ and } j \notin \bar{S},\\ 0,&\text{otherwise}. \end{cases} \end{aligned}

    Therefore, combining lines (?) and (?), we have shown that the following equalities hold for all j \in \{1,\ldots,n-1\}:

    \begin{aligned} \lambda_{ \text{\b{$i$}}_1^{j} \cdots \text{\b{$i$}}_n^{j}} &= \begin{cases} \frac{1}{n},&\text{if } j \in \bar{S},\\ 0,&\text{otherwise}; \end{cases} & \lambda_{ \bar{i}_1^{j} \cdots \bar{i}_n^{j}} &= \begin{cases} \frac{1}{n},&\text{if } j \notin \bar{S},\\ 0,&\text{otherwise}; \end{cases} \end{aligned}

    Moreover, it follows from the fact that \lambda is a feasible solution of the system (?) that

    \begin{aligned} \lambda_{n \cdots n} &= 1 - \sum_{(i_1',\ldots,i_n') \in \mathcal{L}: (i_1',\ldots,i_n') \neq (n,\ldots,n)} \lambda_{i_1' \cdots i_n'}\\ &= 1 - \sum_{(i_1',\ldots,i_n') \in \mathcal{L}^*} \lambda_{i_1' \cdots i_n'}\\ &= 1 - \sum_{j' \in \bar{S} \setminus \{0,n\}} \lambda_{\text{\b{$i$}}_1^{j'} \cdots \text{\b{$i$}}_n^{j'}} - \sum_{j' \in \mathcal{N} \setminus \bar{S}} \lambda_{\text{\b{$i$}}_1^{j'} \cdots \text{\b{$i$}}_n^{j'}}\\ &= 1 - \sum_{j' \in \bar{S} \setminus \{0,n\}}\frac{1}{n} - \sum_{j' \in \mathcal{N} \setminus \bar{S}} \frac{1}{n}\\ &= 1 - \frac{n-1}{n} \\ &= \frac{1}{n}, \end{aligned}

    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}:

    \begin{aligned} \lambda_{i_1 \cdots i_n} &= \begin{cases} \frac{1}{n},&\textnormal{if there exists } j \in \bar{S}\setminus \{0,n\} \textnormal{ such that } (i_1,\ldots,i_n) = \left(\text{\b{$i$}}^j_1,\ldots,\text{\b{$i$}}^j_n \right),\\ \frac{1}{n},&\textnormal{if there exists } j \in \mathcal{N} \setminus \bar{S} \textnormal{ such that }(i_1,\ldots,i_n) = \left(\bar{i}^j_1,\ldots,\bar{i}^j_n \right) ,\\ \frac{1}{n},&\textnormal{if } (i_{1}, \ldots, i_n) = (n,\ldots,n),\\ 0,&\textnormal{otherwise}. \end{cases} \tag{\ref{line:singleton:defn_lambda}} \end{aligned}

    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

    \begin{aligned} \sum_{(i_1,\ldots,i_n) \in \mathcal{L}: i_m = i} \lambda_{i_1 \cdots i_n} &= \begin{cases} \frac{1}{n}, &\text{if } i \in \mathcal{N} \setminus \bar{S},\\ \frac{1}{n}, &\text{if } i \in \bar{S} \setminus \{0,n\},\\ \frac{1}{n} + \sum_{j \in \mathcal{N} \setminus \bar{S}: j \ge m} \frac{1}{n} ,&\text{if } i = n,\\ \sum_{j \in \bar{S} \setminus \{0,n\}: j \ge m} \frac{1}{n},&\text{if } i = 0 \end{cases}\\ &= \begin{cases} \frac{1}{n}, &\text{if } i \in \mathcal{N} \setminus \{0,n\},\\ \frac{1}{n}\left(1 + \left| \left \{ m,\ldots,n-1 \right \} \setminus \bar{S} \right|\right),&\text{if } i = n,\\ \frac{1}{n} \left| \left \{ m,\ldots,n-1 \right \} \cap \bar{S} \right| ,&\text{if } i = 0,\\ \end{cases}\\ &= v_{m,i}, \end{aligned}

    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

    \begin{aligned} \sum_{(i_1,\ldots,i_n) \in \mathcal{L}} \lambda_{i_1 \cdots i_n} &= \sum_{j \in \bar{S} \setminus \{0,n\}} \frac{1}{n} + \sum_{j \in \mathcal{N} \setminus \bar{S}} \frac{1}{n} + \frac{1}{n} = \frac{| \mathcal{N} \setminus \{0,n\}|}{n} + \frac{1}{n}= 1,\end{aligned}

    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

    Proposition

    Proposition F.1

    CFWD

    \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).

    Used by Proof
    Proof

    Proof

    ZOLK

    Proof of Proposition F.1. We first observe that

    \begin{aligned} \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) &= \max \limits_{S \in \mathcal{S} \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) } \min \limits_{\lambda \in \mathcal{U}}\mathscr{R}^{\lambda}\left(S \right) \le \max \limits_{S \in \mathcal{S}} \min \limits_{\lambda \in \mathcal{U}}\mathscr{R}^{\lambda}(S), \end{aligned}

    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:

    \begin{aligned} & \; \underset{\lambda, \epsilon}{\textnormal{minimize}} && \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \rho_{i_1 \cdots i_M}\left(S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \right) \lambda_{i_1\cdots i_M}\\ &\textnormal{subject to}&& \textnormal{same constraints as \eqref{prob:robust_simplified}} \end{aligned}

    Moreover, we recall from Proposition B.11 in Appendix ? that the following equality holds for each (i_1,\ldots,i_M) \in \mathcal{L}:

    \begin{aligned} \rho_{i_1 \cdots i_M}\left(S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \right) = \min_{i \in S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \cap \mathcal{I}_{i_1 \cdots i_M}\left( S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \right)} r_i. \end{aligned}

    In particular, we observe for each (i_1,\ldots,i_M) \in \mathcal{L} that

    \begin{aligned} \mathcal{I}_{i_1 \cdots i_M}\left( S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \right) &= \left \{ i \in \mathcal{N}_0:\; \textnormal{for all } m \in \mathcal{M}, \; \textnormal{if } i_m \in S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right), \text{ then } i_m \nprec_{i_1 \cdots i_M} i \right \} \\ &= \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 \} \\ &= \mathcal{I}_{i_1 \cdots i_M}\left( S \right), \end{aligned}

    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

    \begin{aligned} \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \rho_{i_1 \cdots i_M}\left(S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \right) \lambda_{i_1\cdots i_M} &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \left( \min_{i \in S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \cap \mathcal{I}_{i_1 \cdots i_M}\left( S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \right)} r_i \right) \lambda_{i_1\cdots i_M} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \left( \min_{i \in S \cap \left( \bigcup_{m \in \mathcal{M}} S_m \right) \cap \mathcal{I}_{i_1 \cdots i_M}\left( S \right)} r_i \right) \lambda_{i_1\cdots i_M}\\ &\ge \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \left( \min_{i \in S \cap \mathcal{I}_{i_1 \cdots i_M}\left( S \right)} r_i \right) \lambda_{i_1\cdots i_M}\\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}}\rho_{i_1 \cdots i_M}\left(S \right) \lambda_{i_1\cdots i_M}, \end{aligned}

    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

    \begin{aligned} \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) &\ge \max \limits_{S \in \mathcal{S}} \min \limits_{\lambda \in \mathcal{U}}\mathscr{R}^{\lambda}(S). \end{aligned}

    The proof of Proposition F.1 is thus complete. \square

    Remark

    Remark G.1

    MBQO

    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.

    Procedure

    Procedure

    KH4R
    1. Construct the directed acyclic graph \mathcal{G}_{i_1 \cdots i_M}.

    2. For each past assortment m \in \mathcal{M}:

      1. If i_m \in S:

        1. Mark each unmarked vertex in \mathcal{G}_{i_1 \cdots i_M} that has a directed path to vertex i_m.

    3. Output the minimum r_i among all unmarked vertices i in \mathcal{G}_{i_1 \cdots i_M} and terminate.

    Claim

    Claim 10

    XZP6

    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

    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

    Lemma

    Lemma I.2

    ACL0

    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

    \begin{aligned} g_{m,i,\kappa} &\triangleq \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \lambda_{i_1 \cdots i_M}, \end{aligned}

    and for each directed edge ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}, let

    \begin{aligned} f_{m,i,\kappa,i',\kappa'} &\triangleq \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa, i_{m+1} = i', \rho_{i_1 \cdots i_M}(S \cap S_{m+1}) = \kappa' } \lambda_{i_1 \cdots i_M}. \end{aligned}

    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 of Lemma I.2

    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

    \begin{aligned} g_{m,i,\kappa} &\triangleq \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \lambda_{i_1 \cdots i_M}, \end{aligned}

    and for each edge ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}, let

    \begin{aligned} f_{m,i,\kappa,i',\kappa'} &\triangleq \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa, i_{m+1} = i', \rho_{i_1 \cdots i_M}(S \cap S_{m+1}) = \kappa' } \lambda_{i_1 \cdots i_M}. \end{aligned}

    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).

    Claim.

    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.

    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

      \begin{aligned} \sum_{\kappa:(m,i,\kappa) \in \mathfrak{V}} g_{m,i,\kappa} - \epsilon_{m,i} &= \sum_{\kappa:(m,i,\kappa) \in \mathfrak{V}} \left(\sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \lambda_{i_1 \cdots i_M} \right) - \epsilon_{m,i} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i} \left( \sum_{\kappa:(m,i_m,\kappa) \in \mathfrak{V}, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \lambda_{i_1 \cdots i_M} \right) - \epsilon_{m,i} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i} \mathbb{I} \left \{ (m,i_m, \rho_{i_1 \cdots i_M}(S \cap S_m)) \in \mathfrak{V} \right \} \lambda_{i_1 \cdots i_M} - \epsilon_{m,i} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i} \lambda_{i_1 \cdots i_M} - \epsilon_{m,i} \\ &= v_{m,i}, \end{aligned}

      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

      \begin{aligned} & \sum_{i',\kappa': ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}} f_{m,i,\kappa,i',\kappa'} \\ &= \sum_{i',\kappa': ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}} \left( \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa, i_{m+1} = i', \rho_{i_1 \cdots i_M}(S \cap S_{m+1}) = \kappa'} \lambda_{i_1 \cdots i_M} \right) \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \left( \sum_{i',\kappa': ((m,i_m, \rho_{i_1 \cdots i_M}(S \cap S_m)),(m+1,i',\kappa')) \in \mathfrak{E}, i_{m+1} = i', \rho_{i_1 \cdots i_M}(S \cap S_{m+1}) = \kappa'} \lambda_{i_1 \cdots i_M} \right) \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \mathbb{I} \left \{ ((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} \right \} \lambda_{i_1 \cdots i_M} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \lambda_{i_1 \cdots i_M}\\ &= g_{m,i,\kappa}, \end{aligned}

      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

      \begin{aligned} & \sum_{i',\kappa': ((m-1,i',\kappa'),(m,i,\kappa)) \in \mathfrak{E}} f_{m-1,i',\kappa',i,\kappa} \\ &= \sum_{i',\kappa': ((m-1,i',\kappa'),(m,i,\kappa)) \in \mathfrak{E}} \left( \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_{m-1} = i', \rho_{i_1 \cdots i_M}(S \cap S_{m-1}) = \kappa', i_{m} = i, \rho_{i_1 \cdots i_M}(S \cap S_{m}) = \kappa} \lambda_{i_1 \cdots i_M} \right) \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \left( \sum_{i',\kappa': ((m-1,i',\kappa'),(m,i_m, \rho_{i_1 \cdots i_M}(S \cap S_m))) \in \mathfrak{E}, i_{m-1} = i', \rho_{i_1 \cdots i_M}(S \cap S_{m-1}) = \kappa'} \lambda_{i_1 \cdots i_M} \right) \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \mathbb{I} \left \{ ((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} \right \} \lambda_{i_1 \cdots i_M} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i, \rho_{i_1 \cdots i_M}(S \cap S_m) = \kappa} \lambda_{i_1 \cdots i_M}\\ &= g_{m,i,\kappa}, \end{aligned}

      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

      \begin{aligned} &&& g_{m,i,\kappa} = 0 \quad \forall (m,i,\kappa)\in \mathfrak{N}(S). \end{aligned}
    • We observe that

      \begin{aligned} \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} g_{M,i,\kappa} &= \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} \left( \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_M = i, \rho_{i_1 \cdots i_M}(S \cap S_M) = \kappa} \lambda_{i_1 \cdots i_M} \right)\\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \lambda_{i_1 \cdots i_M}\\ &= 1. \end{aligned}

      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

    \begin{aligned} \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}}\kappa g_{M,i,\kappa} &= \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}}\kappa \left(\sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_M = i, \rho_{i_1 \cdots i_M}(S \cap S_M) = \kappa} \lambda_{i_1 \cdots i_M}\right) \\ &= \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}}\kappa \left(\sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_M = i, \rho_{i_1 \cdots i_M}(S) = \kappa} \lambda_{i_1 \cdots i_M}\right) \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \left( \sum_{i,\kappa: \; (M,i,\kappa) \in \mathfrak{V}, i_M = i, \rho_{i_1 \cdots i_M}(S) = \kappa} \kappa \lambda_{i_1 \cdots i_M} \right) \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \mathbb{I} \left \{ (M,i_M,\rho_{i_1 \cdots i_M}(S)) \in \mathfrak{V} \right \} \rho_{i_1 \cdots i_M}(S) \lambda_{i_1 \cdots i_M} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \rho_{i_1 \cdots i_M}(S) \lambda_{i_1 \cdots i_M}. \end{aligned}

    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

    Lemma

    Lemma I.5

    AER1

    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:

    \begin{aligned} &&& \sum_{\kappa: (m,i,\kappa) \in {\mathfrak{V}}} g_{m,i,\kappa} - \epsilon_{m,i}= v_{m,i} && \forall m \in \mathcal{M}, \; i \in S_m \\ &&& \sum_{i',\kappa': ((m,i,\kappa),(m+1,i',\kappa')) \in {\mathfrak{E}}} f_{m,i,\kappa,i',\kappa'} = g_{m,i,\kappa} && \forall (m,i,\kappa) \in {\mathfrak{V}}: m \in \{1,\ldots,M-1\} \\ &&& \sum_{i',\kappa': ((m-1,i',\kappa'),(m,i,\kappa)) \in {\mathfrak{E}}} f_{m-1,i',\kappa',i,\kappa} = g_{m,i,\kappa} && \forall (m,i,\kappa) \in {\mathfrak{V}}: m \in \{2,\ldots,M\}\\ &&& \| \epsilon \| \le \eta \\ &&& \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} g_{M,i,\kappa} = 1 \\ &&& f_{m,i,\kappa,i',\kappa'} \ge 0 && \forall ((m,i,\kappa),(m+1,i',\kappa')) \in {\mathfrak{E}} \\ &&& g_{m,i,\kappa} \ge 0 && \forall (m,i,\kappa) \in {\mathfrak{V}}. \end{aligned}

    Then there exists a vector \lambda such that (\lambda,\epsilon) is a feasible solution for the linear optimization problem (5.11) and

    \begin{aligned} \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \rho_{i_1 \cdots i_M}(S) \lambda_{i_1 \cdots i_M} \le \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} \kappa g_{m,i,\kappa} + \sum_{(m,i,\kappa) \in \mathfrak{N}(S)} r_n g_{m,i,\kappa}. \end{aligned}
    Used by Proof
    Proof of Lemma I.5

    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:

    \begin{align} &&& \sum_{\kappa: (m,i,\kappa) \in {\mathfrak{V}}} g_{m,i,\kappa} - \epsilon_{m,i}= v_{m,i} && \forall m \in \mathcal{M}, \; i \in S_m \\ &&& \sum_{i',\kappa': ((m,i,\kappa),(m+1,i',\kappa')) \in {\mathfrak{E}}} f_{m,i,\kappa,i',\kappa'} = g_{m,i,\kappa} && \forall (m,i,\kappa) \in {\mathfrak{V}}: m \in \{1,\ldots,M-1\} \\ &&& \sum_{i',\kappa': ((m-1,i',\kappa'),(m,i,\kappa)) \in {\mathfrak{E}}} f_{m-1,i',\kappa',i,\kappa} = g_{m,i,\kappa} && \forall (m,i,\kappa) \in {\mathfrak{V}}: m \in \{2,\ldots,M\}\\ &&& \| \epsilon \| \le \eta \\ &&& \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} g_{M,i,\kappa} = 1 \\ &&& f_{m,i,\kappa,i',\kappa'} \ge 0 && \forall ((m,i,\kappa),(m+1,i',\kappa')) \in {\mathfrak{E}} \\ &&& g_{m,i,\kappa} \ge 0 && \forall (m,i,\kappa) \in {\mathfrak{V}}. \end{align}

    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:

    \begin{aligned} g_{m,i,\kappa} &= \sum_{ ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} : i_m = i, \kappa_m = \kappa} \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} && \forall (m,i,\kappa) \in \mathfrak{V} \\ f_{m,i,\kappa,i',\kappa'} &= \sum_{ ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} : i_m = i, \kappa_m = \kappa, i_{m+1} = i', \kappa_{m+1} = \kappa'} \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} && ((m,i,\kappa),(m+1,i',\kappa')) \in \mathfrak{E}. \end{aligned}

    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:

    \begin{aligned} \lambda_{i_1 \cdots i_M} &\triangleq \sum_{\kappa_1,\ldots,\kappa_M: ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} } \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \quad \forall (i_1,\ldots,i_M) \in \mathcal{L}. \end{aligned}

    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}:

    Claim.

    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.

    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

    \begin{aligned} v_{m,i} &= \sum_{\kappa:(m,i,\kappa) \in \mathfrak{V}} g_{m,i,\kappa} - \epsilon_{m,i}\\ &= \sum_{\kappa:(m,i,\kappa) \in \mathfrak{V}} \left(\sum_{ ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} : i_m = i, \kappa_m = \kappa} \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right)- \epsilon_{m,i} \\ &= \sum_{ ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} : i_m = i } \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} - \epsilon_{m,i} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: i_m = i} \left( \sum_{\kappa_1,\ldots,\kappa_M: ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}} \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right)- \epsilon_{m,i} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i} \lambda_{i_1 \cdots i_M} - \epsilon_{m,i}, \end{aligned}

    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

    \begin{aligned} 1 &= \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} g_{m,i,\kappa} \\ &= \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: i_M = i, \kappa_M = \kappa } \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \\ &= \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} } \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \left( \sum_{\kappa_1,\ldots,\kappa_M: ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} } \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \lambda_{i_1 \cdots i_M}, \end{aligned}

    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}).

    Claim.

    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.

    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

    \begin{aligned} \kappa_1 \in \begin{cases} \{ r_{i_1} \}, & \textnormal{if } i_1 \in S,\\ \{ r_j: j \in \mathcal{B}_1 \cap S \},&\textnormal{if } i_1 \notin S. \end{cases} \end{aligned}

    Therefore, we observe that

    \begin{aligned} \kappa_1 &\ge \begin{cases} r_{i_1}, & \textnormal{if } i_1 \in S,\\ \min_{ j \in \mathcal{B}_1 \cap S} r_j ,&\textnormal{if } i_1 \notin S \end{cases}\\ &= \rho_{i_1 \cdots i_M}(S \cap S_1), \end{aligned}

    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

    \begin{aligned} \kappa_m \in \begin{cases} \{ r_{i_m} \}, & \textnormal{if } i_m \in S \text{ and } i_m \in \mathcal{B}_m,\\ \{ \kappa_{m-1} \},&\textnormal{if } i_m \in S \text{ and } i_m \notin \mathcal{B}_m,\\ \{ \kappa_{m-1} \} \cup \{ r_j: j \in \mathcal{B}_m \cap S \},&\textnormal{if } i_m \notin S. \end{cases} \end{aligned}

    Therefore,

    \begin{aligned} \kappa_m &\ge \begin{cases} r_{i_m}, & \textnormal{if } i_m \in S \text{ and } i_m \in \mathcal{B}_m,\\ \kappa_{m-1},&\textnormal{if } i_m \in S \text{ and } i_m \notin \mathcal{B}_m,\\ \min \left \{ \kappa_{m-1}, \min \limits_{ j \in \mathcal{B}_m \cap S} r_j \right \},&\textnormal{if } i_m \notin S \end{cases}\\ &\ge \begin{cases} r_{i_m}, & \textnormal{if } i_m \in S \text{ and } i_m \in \mathcal{B}_m,\\ \rho_{i_1 \cdots i_M}(S \cap S_{m-1}) ,&\text{if } i_m \in S \text{ and } i_m \notin \mathcal{B}_m,\\ \min \left \{ \rho_{i_1 \cdots i_M}(S \cap S_{m-1}) , \min \limits_{ j \in \mathcal{B}_m \cap S} r_j \right \},&\textnormal{if } i_m \notin S \end{cases}\\ &= \rho_{i_1 \cdots i_M}(S \cap S_{m}), \end{aligned}

    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):

    \begin{aligned} & \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \rho_{i_1 \cdots i_M}(S) \lambda_{i_1\cdots i_M} \\ &= \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \rho_{i_1 \cdots i_M}(S) \left( \sum_{\kappa_1,\ldots,\kappa_M: ((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} } \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ &= \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} } \rho_{i_1 \cdots i_M}(S) \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \\ &= \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} } \rho_{i_1 \cdots i_M}(S \cap S_M) \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \\ &= \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: (m,i_m,\kappa_m) \notin \mathfrak{N}(S) \; \forall m \in \mathcal{M} } \rho_{i_1 \cdots i_M}(S \cap S_M) \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ & \quad + \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: \exists m \in \mathcal{M} \textnormal{ such that } (m,i_m,\kappa_m) \in \mathfrak{N}(S) } \rho_{i_1 \cdots i_M}(S \cap S_M) \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ &\le \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: (m,i_m,\kappa_m) \notin \mathfrak{N}(S) \; \forall m \in \mathcal{M} } \kappa_M \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ & \quad + \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: \exists m \in \mathcal{M} \textnormal{ such that } (m,i_m,\kappa_m) \in \mathfrak{N}(S)} \rho_{i_1 \cdots i_M}(S \cap S_M) \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ &\le \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: (m,i_m,\kappa_m) \notin \mathfrak{N}(S) \; \forall m \in \mathcal{M} } \kappa_M \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ & \quad + \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: \exists m \in \mathcal{M} \textnormal{ such that } (m,i_m,\kappa_m) \in \mathfrak{N}(S)} r_n \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ &\le \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: (m,i_m,\kappa_m) \notin \mathfrak{N}(S) \; \forall m \in \mathcal{M} } \kappa_M \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ & \quad + \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}} \sum_{m \in \mathcal{M}: (m,i_m,\kappa_m) \in \mathfrak{N}(S)} r_n \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ &= \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: (m,i_m,\kappa_m) \notin \mathfrak{N}(S) \; \forall m \in \mathcal{M} } \kappa_M \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ & \quad + \left( \sum_{ (m,i,\kappa) \in \mathfrak{N}(S)} r_n \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: i_m = i, \kappa_m = \kappa} \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) \\ &= \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: (m,i_m,\kappa_m) \notin \mathfrak{N}(S) \; \forall m \in \mathcal{M} } \kappa_M \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) + \sum_{ (m,i,\kappa) \in \mathfrak{N}(S)} g_{m,i,\kappa} \\ &\le \left( \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P} } \kappa_M \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) + \sum_{ (m,i,\kappa) \in \mathfrak{N}(S)} g_{m,i,\kappa} \\ &= \left( \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}}\kappa \sum_{((1,i_1,\kappa_1),\ldots, (M,i_M,\kappa_M)) \in \mathscr{P}: i_M = i, \kappa_M = \kappa } \pi_{i_1 \kappa_1 \cdots i_M \kappa_M} \right) + \sum_{ (m,i,\kappa) \in \mathfrak{N}(S)} g_{m,i,\kappa} \\ &= \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}}\kappa g_{M,i,\kappa} + \sum_{ (m,i,\kappa) \in \mathfrak{N}(S)} g_{m,i,\kappa}. \end{aligned}

    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

    Claim

    Claim 14

    M46H

    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:

    \begin{aligned} & \; \underset{f, g,\epsilon}{\textnormal{minimize}} && \sum_{i,\kappa: (M,i,\kappa) \in {\mathfrak{V}}} \kappa g_{M,i,\kappa} + \sum_{(m,i,\kappa) \in {\mathfrak{V}}} \mathfrak{M}_{m,i,\kappa}(S) g_{m,i,\kappa} \\ &\textnormal{subject to}&& \sum_{\kappa: (m,i,\kappa) \in {\mathfrak{V}}} g_{m,i,\kappa} - \epsilon_{m,i}= v_{m,i} && \forall m \in \mathcal{M}, \; i \in S_m \\ &&& \sum_{i',\kappa': ((m,i,\kappa),(m+1,i',\kappa')) \in {\mathfrak{E}}} f_{m,i,\kappa,i',\kappa'} = g_{m,i,\kappa} && \forall (m,i,\kappa) \in {\mathfrak{V}}: m \in \{1,\ldots,M-1\} \\ &&& \sum_{i',\kappa': ((m-1,i',\kappa'),(m,i,\kappa)) \in {\mathfrak{E}}} f_{m-1,i',\kappa',i,\kappa} = g_{m,i,\kappa} && \forall (m,i,\kappa) \in {\mathfrak{V}}: m \in \{2,\ldots,M\}\\ &&& \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} g_{M,i,\kappa} = 1 \\ &&& \| \epsilon \| \le \eta \\ &&& f_{m,i,\kappa,i',\kappa'} \ge 0 && \forall ((m,i,\kappa),(m+1,i',\kappa')) \in {\mathfrak{E}} \\ &&& g_{m,i,\kappa} \ge 0 && \forall (m,i,\kappa) \in {\mathfrak{V}}. \end{aligned}
    Proof of Claim 14

    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

    \begin{aligned} \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \rho_{i_1 \cdots i_M}(S) \lambda_{i_1 \cdots i_M} &\le \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} \kappa g_{m,i,\kappa} + \sum_{(m,i,\kappa) \in \mathfrak{N}(S)} r_n g_{m,i,\kappa} \\ &\le \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} \kappa g_{m,i,\kappa} + \sum_{(m,i,\kappa) \in \mathfrak{V}} \mathfrak{M}(S) g_{m,i,\kappa} , \end{aligned}

    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

    Definition

    Definition J.1

    AJIS

    \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.

    Proposition

    Proposition J.2

    V24X

    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:

    \begin{aligned} & \; \underset{\lambda, \epsilon}{\textnormal{maximize}} && \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \xi_{i_1 \cdots i_M}(S) \lambda_{i_1\cdots i_M}\\ &\textnormal{subject to}&& \sum_{(i_1,\ldots,i_M) \in \mathcal{L}: \; i_m = i} \lambda_{i_1 \cdots i_M} - \epsilon_{m,i}= v_{m,i} \quad \forall m \in \mathcal{M}, \; i \in S_m\\ &&& \sum_{(i_1,\ldots,i_M) \in \mathcal{L}} \lambda_{i_1 \cdots i_M} = 1 \\ &&& \| \epsilon \| \le \eta\\ &&& \lambda_{i_1 \cdots i_M} \ge 0 \quad \forall (i_1,\ldots,i_M) \in \mathcal{L}. \end{aligned}
    Used by Proof
    Proposition

    Proposition J.3

    0Y97

    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.

    Used by Proof
    Proposition

    Proposition J.4

    KKSA

    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}.

    Used by Proof
    Proof of Proposition J.4

    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.

    Claim.

    For all S \in \mathcal{S}, (i_1,\ldots,i_M) \in \mathcal{L}, and i \notin S,

    \begin{aligned} &\xi_{i_1 \cdots i_M}(S \cup \{i\}) = \begin{cases} \xi_{i_1 \cdots i_M}(S),&\textnormal{if } i \notin \mathcal{I}_{i_1 \cdots i_M}(S),\\ \max \left \{ \max \limits_{j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S) \cap \left\{ j' \in \mathcal{N}_0: i \nprec_{i_1 \cdots i_M} j' \right\}} r_j, r_{i} \right \}, &\textnormal{if } i \in \mathcal{I}_{i_1 \cdots i_M}(S). \end{cases} \end{aligned}

    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

      \xi_{i_1 \cdots i_M}(S \cup \{i\}) = \xi_{i_1 \cdots i_M}(S),

      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

      \begin{aligned} \xi_{i_1 \cdots i_M}(S) = \max_{j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S)} r_j \ge r_{i^*}, \end{aligned}

      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

      \begin{aligned} \xi_{i_1 \cdots i_M}(S \cup \{i\}) &= \max \left \{ \max \limits_{j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S) \cap \{ j' \in \mathcal{N}_0: i \nprec_{i_1 \cdots i_M} j' \}} r_j, r_i \right \} \\ &\le \max \left \{ \max \limits_{j \in S \cap \mathcal{I}_{i_1 \cdots i_M}(S)} r_j, r_i \right \} \\ &= \max \left \{ \xi_{i_1 \cdots i_M}(S), r_i \right \} \\ &= \xi_{i_1 \cdots i_M}(S), \end{aligned}

      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

    Theorem

    Theorem J.6

    L0RB

    There exists an assortment S \in \widehat{\mathcal{S}}^{\textnormal{OO}} that is optimal for (?).

    Proof of Theorem J.6

    Proof. Consider any arbitrary assortment S \in \mathcal{S}. For this assortment, we define a new assortment as

    S' \triangleq S \setminus \left \{i \in \mathcal{N}: \text{there exists } i^* \in S \textnormal{ such that } \mathcal{M}_{i^*} \subseteq \mathcal{M}_i \textnormal{ and } r_{i^*} > r_i \right \}.

    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

    \begin{aligned} \xi_{i_1 \cdots i_M}(S') &= \xi_{i_1 \cdots i_M}(S) + \sum_{\iota = 1}^{\nu} \left( \xi_{i_1 \cdots i_M}(S \setminus \{j_1,\ldots,j_\iota \}) - \xi_{i_1 \cdots i_M}(S \setminus \{j_1,\ldots,j_{\iota-1} \}) \right) \le \xi_{i_1 \cdots i_M}(S). \end{aligned}

    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

    Lemma

    Lemma J.8

    EE7L

    | \widehat{\mathcal{S}}^{\textnormal{OO}} | \le (n+1)^{2^M}.

    Proof of Lemma J.8

    Proof. We readily observe that the collection of assortments \widehat{\mathcal{S}}^{\textnormal{OO}} is a subset of

    \begin{aligned} \widetilde{\mathcal{S}}^{\textnormal{OO}} \triangleq \left \{ S \in \mathcal{S}:\; \textnormal{if } i^* \in S,\; 0 < r_i < r_{i^*}, \textnormal{ and } \mathcal{M}_{i^*} = \mathcal{M}_i, \textnormal{ then } i \notin S \right \}, \end{aligned}

    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

    \begin{aligned} \mathcal{N}(\mathcal{C}) &\triangleq \left \{ i \in \mathcal{N}: \mathcal{M}_i = \mathcal{C} \right \}. \end{aligned}

    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,

    \begin{aligned} | \widehat{\mathcal{S}}^{\textnormal{OO}} | &\le | \widetilde{\mathcal{S}}^{\textnormal{OO}} | \le \prod_{\mathcal{C} \subseteq \mathcal{M}} \left( \left| \mathcal{N}(\mathcal{C}) \right| + 1 \right) \le (n+1)^{2^M}. \end{aligned}

    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

    \widetilde{\mathcal{S}}^{\textnormal{OO}} \subseteq\left \{ \{0 \} \cup \bigcup_{\mathcal{C}\subseteq \mathcal{M}} \mathcal{F}^{\mathcal{C}}: \; \mathcal{F}^{\mathcal{C}} \in \left \{ \emptyset, \left\{i_{1}^{\mathcal{C}} \right \},\ldots, \left\{i_{| \mathcal{N}(\mathcal{C})|}^{\mathcal{C}} \right \} \right \} \right \},

    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

    Lemma

    Lemma J.10

    AG89

    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 of Lemma J.10

    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.

    The paper has an algorithm here, which this page does not show.

    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 ?.

    The paper has an algorithm here, which this page does not show.
    The paper has an algorithm here, which this page does not show.
    Claim.

    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.

    Claim.

    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.

    Claim.

    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}},

    \begin{aligned} &\left \{S \subseteq \mathscr{V}^{\textnormal{OO}} \setminus \{i \}: \textnormal{ if $k \in S$ and $(k,j) \in \mathscr{E}^{\textnormal{OO}}$, then $j \notin S$} \right\} \\ & = \left \{ S \subseteq \mathscr{V}^{\textnormal{OO}} \setminus \{ i \}: \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E}^{\textnormal{OO}} \setminus \mathscr{E}_i^{\textnormal{OO}}, \textnormal{ then } j \notin S \right \}. \end{aligned}
    Claim.

    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}},

    \begin{aligned} &\left \{S \subseteq \mathscr{V}^{\textnormal{OO}}: \left[ i \in S \right] \textnormal{ and } \left[ \textnormal{if $k \in S$ and $(k,j) \in \mathscr{E}^{\textnormal{OO}}$, then $j \notin S$} \right] \right\} \\ & = \left \{ \begin{aligned} &S' \cup \{i \}:\\ &\quad S' \in \left \{ \begin{aligned} &S \subseteq \mathscr{V}^{\textnormal{OO}} \setminus \left( \{i \} \cup \left\{ \ell: (i,\ell) \in \mathscr{E}^{\textnormal{OO}} \right \} \cup \left\{ \ell: (\ell,i) \in \mathscr{E}^{\textnormal{OO}} \right \} \right): \\ &\quad \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E}^{\textnormal{OO}} \setminus \left( \mathscr{E}_i^{\textnormal{OO}} \cup \bigcup_{\ell: (i,\ell) \in \mathscr{E}^{\textnormal{OO}} } \mathscr{E}_\ell^{\textnormal{OO}} \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}^{\textnormal{OO}} } \mathscr{E}_\ell^{\textnormal{OO}} \right), \textnormal{ then } j \in S \end{aligned} \right \} \end{aligned} \right \}. \end{aligned}
    Proof.

    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

    \begin{aligned} \mathscr{A}^{\textnormal{OO}'} &= \left \{ S \subseteq \mathscr{V}^{\textnormal{OO}} \setminus \{ i \}: \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E}^{\textnormal{OO}} \setminus \mathscr{E}_i^{\textnormal{OO}}, \textnormal{ then } j \notin S \right \} \\ \mathscr{A}^{\textnormal{OO}'''} &= \left \{ \begin{aligned} &S' \cup \{i \}:\\ &\quad S' \in \left \{ \begin{aligned} &S \subseteq \mathscr{V}^{\textnormal{OO}} \setminus \left( \{i \} \cup \left\{ \ell: (i,\ell) \in \mathscr{E}^{\textnormal{OO}} \right \} \cup \left\{ \ell: (\ell,i) \in \mathscr{E}^{\textnormal{OO}} \right \} \right): \\ &\quad \textnormal{if } k \in S \textnormal{ and } (k,j) \in \mathscr{E}^{\textnormal{OO}} \setminus \left( \mathscr{E}_i^{\textnormal{OO}} \cup \bigcup_{\ell: (i,\ell) \in \mathscr{E}^{\textnormal{OO}} } \mathscr{E}_\ell^{\textnormal{OO}} \cup \bigcup_{\ell: (\ell,i) \in \mathscr{E}^{\textnormal{OO}} } \mathscr{E}_\ell^{\textnormal{OO}} \right), \textnormal{ then } j \in S \end{aligned} \right \} \end{aligned} \right \}\\ \end{aligned}

    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

    \begin{aligned} \mathscr{A}^{\textnormal{OO}'}&= \left \{S \subseteq \mathscr{V}^{\textnormal{OO}} \setminus \{i \}: \textnormal{ if $k \in S$ and $(k,j) \in \mathscr{E}^{\textnormal{OO}}$, then $j \notin S$} \right\} \\ \mathscr{A}^{\textnormal{OO}'''} &= \left \{S \subseteq \mathscr{V}^{\textnormal{OO}}: \left[ i \in S \right] \textnormal{ and } \left[ \textnormal{if $k \in S$ and $(k,j) \in \mathscr{E}^{\textnormal{OO}}$, then $j \notin S$} \right] \right\}, \end{aligned}

    which proves that the output of Algorithm ? is

    \begin{aligned} \mathscr{A}^{\textnormal{OO}'} \cup \mathscr{A}^{\textnormal{OO}'''}= \left \{S \subseteq \mathscr{V}^{\textnormal{OO}}: \textnormal{ if $k \in S$ and $(k,j) \in \mathscr{E}^{\textnormal{OO}}$, then $j \notin S$} \right\}. \end{aligned}

    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.

    Claim.

    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.

    Claim.

    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

    \begin{aligned} \underbrace{\mathcal{O}(n^2M)}_{\eqref{step:construct_S:1:optimistic}} + \underbrace{\mathcal{O}(n^2 |\widehat{\mathcal{S}}^{\textnormal{OO}}|)}_{\eqref{step:construct_S:2:optimistic}}= \mathcal{O}\left(n^2 (M + |\widehat{\mathcal{S}}^{\textnormal{OO}}|) \right). \end{aligned}

    \square

    Claim

    Claim 22

    1M1F

    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

    \begin{aligned} & \; \underset{f, g,\epsilon}{\textnormal{maximize}} && \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} \kappa g_{M,i,\kappa} \\ &\textnormal{subject to}&& \textnormal{ same constraints as \eqref{prob:lp_reform_nested}}\end{aligned}
    Used by Proof, Proof
    Proof of Claim 22

    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

    \begin{aligned} \max_{\lambda \in \mathcal{U}} \mathscr{R}^\lambda(S) &= \max_{\lambda \in \mathcal{U}} \sum_{i \in \mathcal{N}_0} r_i \mathscr{D}^\lambda_i(S) \\ &= r_n + \max_{\lambda \in \mathcal{U}} \sum_{i \in \mathcal{N}_0} (r_i - r_n) \mathscr{D}^\lambda_i(S) \\ &= r_n - \min_{\lambda \in \mathcal{U}} \sum_{i \in \mathcal{N}_0} (r_n - r_i) \mathscr{D}^\lambda_i(S) \\ &= r_n - \min_{\lambda \in \mathcal{U}} \sum_{i \in \mathcal{N}_0} \bar{r}_{i} \mathscr{D}^\lambda_i(S). \end{aligned}

    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

    \begin{aligned} & \; \underset{f, g,\epsilon}{\textnormal{minimize}} && \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} (r_n - \kappa) g_{M,i,\kappa} \\ &\textnormal{subject to}&& \textnormal{ same constraints as \eqref{prob:lp_reform_nested}} \end{aligned}

    Combining the above analysis, we conclude that

    \begin{aligned} \max_{\lambda \in \mathcal{U}} \mathscr{R}^\lambda(S) &= r_n - \left[ \begin{aligned} & \; \underset{f, g,\epsilon}{\textnormal{minimize}} && \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} (r_n - \kappa) g_{M,i,\kappa} \\ &\textnormal{subject to}&& \textnormal{ same constraints as \eqref{prob:lp_reform_nested}} \end{aligned} \right]\\ &= r_n + \left[ \begin{aligned} & \; \underset{f, g,\epsilon}{\textnormal{maximize}} && \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} ( \kappa - r_n) g_{M,i,\kappa} \\ &\textnormal{subject to}&& \textnormal{ same constraints as \eqref{prob:lp_reform_nested}} \end{aligned} \right]\\ &= \left[ \begin{aligned} & \; \underset{f, g,\epsilon}{\textnormal{maximize}} && \sum_{i,\kappa: (M,i,\kappa) \in \mathfrak{V}} \kappa g_{M,i,\kappa} \\ &\textnormal{subject to}&& \textnormal{ same constraints as \eqref{prob:lp_reform_nested}} \end{aligned} \right], \end{aligned}

    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

    Source and licence

    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.