Skip to main content
Log in

Approximation algorithms for pricing with negative network externalities

  • Published:
Journal of Combinatorial Optimization Aims and scope Submit manuscript

Abstract

We study the problems of pricing an indivisible product to consumers who are embedded in a given social network. The goal is to maximize the revenue of the seller by the so-called iterative pricing that offers consumers a sequence of prices over time. The consumers are assumed to be impatient in that they buy the product as soon as the seller posts a price not greater than their valuations of the product. The product’s value for a consumer is determined by two factors: a fixed consumer-specified intrinsic value and a variable externality that is exerted from the consumer’s neighbors in a linear way. We focus on the scenario of negative externalities, which captures many interesting situations, but is much less understood in comparison with its positive externality counterpart. Assuming complete information about the network, consumers’ intrinsic values, and the negative externalities, we prove that it is NP-hard to find an optimal iterative pricing, even for unweighted tree networks with uniform intrinsic values. Complementary to the hardness result, we design a 2-approximation algorithm for general weighted networks with (possibly) nonuniform intrinsic values. We show that, as an approximation to optimal iterative pricing, single pricing works fairly well for many interesting cases, such as forests, Erdős–Rényi networks and Barabási–Albert networks, although its worst-case performance can be arbitrarily bad in general networks.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Akhlaghpour H, Ghodsi M, Haghpanah N, Mirrokni VS, Mahini H, Nikzad A (2010) Optimal iterative pricing over social networks (extended abstract). In: Proceedings of the 6th international conference on Internet and Network Economics, WINE’10, pp 415–423

  • Alon N, Mansour Y, Tenneholtz M (2013) Differential pricing with inequity aversion in social networks. In: Proceedings of the fourteenth ACM conference on Electronic Commerce, EC’13, pp 9–24

  • Barabási AL, Albert R (1999) Emergence of scaling in random networks. Science 286(5439):509–512

    Article  MathSciNet  MATH  Google Scholar 

  • Bateni M, Haghpanah N, Sivan B, Zadimoghaddam M (2013) Revenue maximization with nonexcludable goods. In: Proceedings of the 9th international conference on Web and Internet Economics, WINE’13, pp 40–53

  • Bhattacharya S, Kulkarni J, Munagala K, Xu X (2011) On allocations with negative externalities. In: Proceedings of the 7th international conference on Internet and Network Economics, WINE’11, pp 25–36

  • Bloch F, Quérou N (2013) Pricing in social networks. Games Econ Behav 80:243–261

    Article  MathSciNet  MATH  Google Scholar 

  • Bollobás B, Riordan O, Spencer J, Tusnády G (2001) The degree sequence of a scale-free random graph process. Random Struct Algorithms 18(3):279–290

    Article  MathSciNet  MATH  Google Scholar 

  • Bramoullé Y (2007) Anti-coordination and social interactions. Games Econ Behav 58(1):30–49

    Article  MathSciNet  MATH  Google Scholar 

  • Bramoullé Y, Kranton R (2007) Public goods in networks. J Econ Theory 135(1):478–494

    Article  MathSciNet  MATH  Google Scholar 

  • Candogan O, Bimpikis K, Ozdaglar A (2012) Optimal pricing in networks with externalities. Oper Res 60(4):883–905

    Article  MathSciNet  MATH  Google Scholar 

  • Cao Z, Chen X, Hu X, Wang C (2015) Pricing in social networks with negative externalities. In: Proceedings of the 4th international conference on Computational Social Networks, CSoNet’15, pp 14–25

  • Chen N (2009) On the approximability of influence in social networks. SIAM J Discrete Math 23(3):1400–1415

    Article  MathSciNet  MATH  Google Scholar 

  • Chen W, Lu P, Sun X, Tang B, Wang Y, Zhu ZA (2011) Optimal pricing in social networks with incomplete information. In: Proceedings of the 7th international conference on Internet and Network Economics, WINE’11, pp 49–60

  • Deng C, Pekeč S (2011) Money for nothing: exploiting negative externalities. In: Proceedings of the 12th ACM conference on Electronic Commerce, EC’11, pp 361–370

  • Farrell J, Saloner G (1985) Standardization, compatibility, and innovation. Rand J Econ 16:70–83

    Article  Google Scholar 

  • Feldman M, Kempe D, Lucier B, Paes Leme R (2013) Pricing public goods for private sale. In: Proceedings of the fourteenth ACM conference on Electronic Commerce, EC’13, pp 417–434

  • Haghpanah N, Immorlica N, Mirrokni V, Munagala K (2013) Optimal auctions with positive network externalities. ACM Trans Econ Comput 1(2):13

    Article  Google Scholar 

  • Hartline J, Mirrokni V, Sundararajan M (2008) Optimal marketing strategies over social networks. In: Proceedings of the 17th international conference on World Wide Web, WWW’08, pp 189–198

  • Jehiel P, Moldovanu B, Stacchetti E (1996) How (not) to sell nuclear weapons. Am Econ Rev 86:814–829

    Google Scholar 

  • Katz M, Shapiro C (1985) Network externalities, competition, and compatibility. Am Econ Rev 75:424–440

    Google Scholar 

  • Kempe D, Kleinberg J, Tardos É (2003) Maximizing the spread of influence through a social network. In: Proceedings of the ninth ACM SIGKDD international conference on Knowledge Discovery and Data Mining, pp 137–146

  • Mossel E, Roch S (2007) On the submodularity of influence in social networks. In: Proceedings of the thirty-ninth annual ACM Symposium on Theory of Computing, STOC’07, pp 128–134

  • Radner R, Radunskaya A, Sundararajan A (2014) Dynamic pricing of network goods with boundedly rational consumers. Proc Natl Acad Sci 111(1):99–104

    Article  MathSciNet  Google Scholar 

Download references

Acknowledgments

This research is supported in part by NNSF of China under Grant Nos. 11531014, 11222109 and 11471326, and CAS Program for Cross & Cooperative Team of Science & Technology Innovation.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Changjun Wang.

Appendix: Proof of Theorem 1

Appendix: Proof of Theorem 1

In the appendix, we present the postponed NP-hardness proof for the IPN problem by reduction from the 3SAT problem. In view of the very technical arguments for the simplest setting, to facilitate understanding, we first prove the hardness for general weighted graphs, and then proceed to the unweighted one with tree structure.

1.1 Notations and preliminaries

We begin with some preliminaries that will be used in the formal proofs of our hardness results. Let \(\mathbf {p}=(p_1,p_2,\ldots ,p_{\tau })\) be a pricing sequence. For any \(t\in [\tau ]\) and \(i\in V\), we use \(\nu _t(i,\mathbf p)\) to denote the (total) value of the product at time t (in the t-th round) for consumer i during the selling/purchase process. Since in the following, we only consider the case of zero intrinsic values, \(\nu _t(i,\mathbf p)\) is the sum of weights from i’s neighbors who have not purchased yet in the previous rounds.

Observation 8

During the selling process, the value of the product for each consumer i does not increase, i.e., \(\nu _{t+1}(i,\mathbf p)\le \nu _t(i,\mathbf p)\) for all \(t=1,2,\ldots ,\tau -1\).

Given a subset of consumers \(S\subseteq V\), we use \(\textsc {r} _{t,S}(\mathbf p)\) to denote the revenue from these consumers until time t, i.e., \(\textsc {r} _{t,S}(\mathbf p)=\sum _{i=1}^{t}|S\cap B(p_i)|p_i\). For brevity, we also write \(\textsc {r} _{\tau ,S}(\mathbf p)\) as \(\textsc {r} _{S}(\mathbf p)\). In particular, we have \(\textsc {r} _V(\mathbf p)=\textsc {r} (\mathbf p)\).

Definition 1

We call pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots ,p_{\tau })\) irredundant if for each \(i\in [\tau ]\), there is at least one consumer who purchases under price \(p_{i}\).

Every pricing sequence \(\mathbf {p}\) is “equivalent” to a unique irredundant pricing sequence \(\mathbf {p}'\) which is derived from \(\mathbf {p}\) by removing all prices under which no consumers purchase. Clearly, the equivalent pricing sequences bring about the same revenue \(\textsc {r} (\mathbf {p})=\textsc {r} (\mathbf {p}')\). This allows us to focus on irredundant pricing sequences.

Observation 9

If pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots ,p_{\tau })\) is irredundant, then it is decreasing, i.e., \(p_1>p_2>\cdots >p_{\tau }\).

Assume that \(\mathbf {p}=(p_1,p_2,\ldots , p_{\tau })\) is an irredundant pricing sequence. Observation 9 says that the entries of \(\mathbf {p}\) are all distinct. For all \(1\le t\le \tau \), define \(B_t(\mathbf {p})=\cup _{i=1}^{t}B(p_i)\) to be the set of consumers who have purchased in the first t rounds. For notational convenience, we set \(B_0(\mathbf {p})=B(p_0)=\emptyset \). Recall that in the IPN model we have assumed that consumers are all impatient in the sense that they will definitely purchase as long as the current price is lower than or equal to their current values. As \(\mathbf p\) is irredundant, \(B(p_1),B(p_2),\ldots ,B(p_{\tau })\) can be computed in a recursive way: \(B(p_t)=\{i\in V: w_i(V\setminus B_{t-1}(\mathbf p))\ge p_t\}\), \(t=1,2,\ldots ,\tau \).

Definition 2

A pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots ,p_{\tau })\) is called normal if it is irredundant, and for any \(i\in [\tau ]\) and any \(\epsilon >0\), increasing \(p_i\) to \(p_i+\epsilon \) (other prices remain the same) changes the set of consumers who purchase at the i-th round.

In view of the all-zero intrinsic values, all entries of a normal pricing sequence are integers. Given an irredundant pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots , p_{\tau })\) together with customer sets \(B(p_1),B(p_2),\ldots ,B(p_{\tau })\), one can easily compute a normal pricing sequence \(\mathbf {p}'=(p'_1,p'_2,\ldots , p'_{\tau })\), which is “equivalent” to \(\mathbf p\) in the sense that \(B(p_t')=B(p_t)\) for all \(t\in [\tau ]\), as follows: \(p'_t=\min \{w_i(V\setminus B_{t-1}(\mathbf p)):i\in B(p_t)\}\), \(t=1,2,\ldots ,\tau \). It is clear that \(\textsc {r} (\mathbf p')\ge \textsc {r} (\mathbf p)\). The following observation enables us to concentrate on normal pricing sequences in our NP-hardness proofs.

Observation 10

There is an optimal pricing sequence that is normal.

Our NP-hardness proofs use reductions from the 3SAT problem, whose input consists of n boolean variables \(x_1,x_2,\ldots ,x_n\), and m clauses \(c^j=(x^{j1}\vee x^{j2}\vee x^{j3})\), \( 1\le j\le m\), where \(x^{j\ell }\) is a literal taken from \(\{x_1,x_2,\ldots ,x_n,\lnot x_1,\lnot x_2,\) \(\ldots , \lnot x_n\}\), \(1\le j\le m, 1\le \ell \le 3\). We write \(x^{j\ell }\in c^j\) for convenience. The 3SAT problem is to determine if there is a satisfactory truth assignment to the n variables that makes all m clauses evaluate to TRUE. To avoid triviality, we assume that \(m\ge 3\), and for each \(i\in [n]\), there exist \(j,j'\in [m]\) such that \(x_i\in c^j\) and \(\lnot x_i\in c^{j'}\).

1.2 Weighted general networks

In this section, we prove the NP-hardness for the weighted case with general network structures. The proof, which highlights the high-level idea in our later proof to handle the unweighted case with tree structures, turns out to be much easier to understand.

Theorem 11

Computing an optimal pricing sequence for the IPN problem is NP-hard, even when all the intrinsic values are zero.

Proof

Our reduction here uses a slightly restricted version of the 3SAT problem, the 3-OCC-3SAT problem, which is known to be NP-hard, where for each \(i\in [n]\), there are at most three clauses that contains either \(x_i\) or \(\lnot x_i\).

For any instance I of the 3-OCC-3SAT problem, we construct an instance P of the IPN problem on network \(G=(V,E)\) as follows. There are a total of \(5n+3m\) nodes:

  • For each variable \(x_i\), there is a gadget \(V_i\). Each pair of literals \(x_i\) and \(\lnot x_i\) are simulated by two nodes (with the names unchanged), respectively, and three auxiliary ones, \(y_{i1},y_{i2},y_{i3}\). See the left part of Fig. 1 for the links and their weights.

  • For each clause \(c^j=(x^{j1}\vee x^{j2}\vee x^{j3})\), there is a gadget \(C^j\). The clause is simulated by a node \(c^j\) and two auxiliary ones, \(d^j\) and \(e^j\). See the right part of Fig. 1 for the links and their weights.

  • A literal node (\(x_i\) or \(\lnot x_i\)) is linked to a clause node \(c^j\) if and only if this literal appears in the clause, and the weight of the link is 1.

  • The integer parameters in the weights satisfy

    $$\begin{aligned} a_1>5 a_2> \cdots >5^{i-1}a_i>\cdots >5^{n-1}a_n>5^n a>5^{n+1} mn. \end{aligned}$$
    (6.1)
Fig. 1
figure 1

Literal nodes and clause nodes are represented by larger circles, while auxiliary nodes are represented by smaller ones

Obviously, the above construction can be done in polynomial time. Observe first that all the consumers in the variable gadgets are incident with links of weights much larger than the total weight of links that are incident with any clause consumer. This structure permits us to consider the variable consumers before the clause ones. In the rest of this proof, we may abuse the notations \(V_i\) and \(C^j\) a little bit to represent both the gadgets and the corresponding node sets, respectively.

Due to Observation 10, we only consider normal pricing sequences. Given any normal pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots , p_{\tau })\), let \(\xi \) be the first time that the price is equal to or lower than \(2a+3\), i.e.,

$$\begin{aligned} \xi =\min \{t: p_t\in \mathbf {p},p_t\le 2a+3\}. \end{aligned}$$

Note that before time \(\xi \), no consumer in the clause gadgets has purchased, i.e.,

$$\begin{aligned} B_{\xi -1}(\mathbf p) \cap (\cup _{j=1}^m C^j)=\emptyset . \end{aligned}$$

The key idea of our proof is simple: we shall show that, for each pair of nodes \(x_i\) and \(\lnot x_i\), we can sell the product to one and only one of them, and this makes no difference for the revenue at all before time \(\xi \) (see Claim 1 below). The only difference that the choice between \(x_i\) and \(\lnot x_i\) makes is upon the clause gadget nodes after time \(\xi \). Our construction makes these choices really hard because they correspond to a (possible) solution of the 3-OCC-3SAT problem.

For any \(i\in [n]\), we note that \(w_v(V)\le 10a_i\) for all \(v\in V_i\); thus no consumer in \(V_i\) purchases when the price is above \(10a_i\).

Claim 1

For all \(i=1,2,\ldots ,n\),

  1. (i)

    if \(\mathbf {p}\cap [2a_i,10a_i]=\{10a_i,2a_i\}\), then \(\textsc {r} _{\xi -1,V_i}(\mathbf p)=24a_i\), \(x_i\notin B_{\xi -1}(\mathbf p) \) and \(\lnot x_i\in B_{\xi -1}(\mathbf p) \);

  2. (ii)

    if \(\mathbf {p}\cap [2a_i,10a_i]=\{6a_i\}\), then \(\textsc {r} _{\xi -1,V_i}(\mathbf p)=24a_i\), \(x_i\in B_{\xi -1}(\mathbf p) \) and \(\lnot x_i\notin B_{\xi -1}(\mathbf p) \);

  3. (iii)

    \(\textsc {r} _{\xi -1,V_i}(\mathbf p)\le 24a_i\), and the equality holds iff \(\mathbf {p}\cap [2a_i,10a_i]\in \{\{10a_i,2a_i\},\{6a_i\}\}\).

Statements (i) and (ii) can be easily checked. It remains to prove \(\textsc {r} _{\xi -1,V_i}(\mathbf p)<24a_i\) if \(\mathbf {p}\cap [2a_i,10a_i]\notin \{\{10a_i,2a_i\},\{6a_i\}\}\). Note that \(\textsc {r} _{\xi -1,V_i}(\mathbf p)<24a_i\) is trivial if \(\mathbf {p}\cap [2a_i,10a_i]=\emptyset \). Hence we may assume that there exists a maximum price \(\hat{p}\in \mathbf {p}\cap [2a_i,10a_i]\). By normality of \(\mathbf {p}\), we know that \(\hat{p}\in \{10a_i,6a_i+h_i,6a_i,2a_i+h'_i,2a_i\}\), where \(h_i\) and \(h_i'\) are total weights that \(x_i\) and \(\lnot x_i\) get from clause gadgets, respectively. Hence \(h_i+h_i'\le 3\) (recall the definition of 3-OCC-3SAT). For the case that \(\hat{p}\le 2a_i+h'_i\), it is obvious that \(\textsc {r} _{\xi -1,V_i}(\mathbf p)<24a_i\). We are left to the analysis of the remaining three cases, which will establish Statement (iii).

  • \(\hat{p}=10a_i\). It follows from \(\mathbf {p}\cap [2a_i,10a_i]\ne \{2a_i,10a_i\}\) that \(\mathbf {p}\cap [2a_i,10a_i]=\{10a_i\}\), because the only price in \([2a_i,10a_i]\) that is smaller than \(10a_i\) and makes \(\mathbf {p}\) normal is \(2a_i\). This gives \(\textsc {r} _{\xi -1,V_i}(\mathbf p)=20a_i<24a_i\).

  • \(\hat{p}=6a_i+h_i\). The normality of \(\mathbf {p}\) implies \(\mathbf {p}\cap [2a_i,10a_i]\in \{\{6a_i+h_i,2a_i+h'_i\},\{6a_i+h_i,2a_i\},\{6a_i+h_i\}\}\) and hence \(\textsc {r} _{\xi -1,V_i}(\mathbf p)\le 3(6a_i+h_i)+4a_i<24a_i\).

  • \(\hat{p}=6a_i\). An argument similar to the previous case shows that \(\textsc {r} _{\xi -1,V_i}(\mathbf p)\le 3\times 6a_i+4a_i<24a_i\).\(\square \)

Claim 2

For each \(1\le j\le m\), \(\textsc {r} _{C^j}(\mathbf p)\le 6a+3\), and the equality holds if and only if \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \) and \(\mathbf {p}\cap [2a,2a+3]=\{2a+1\}\), where \(D^j=\{x^{j1},x^{j2},x^{j3}\}\).

It is easy to check that when \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \) and \(\mathbf {p}\cap [2a,2a+3]=\{2a+1\}\), the equality \(\textsc {r} _{C^j}(\mathbf p)=6a+3\) holds. We prove \(\textsc {r} _{C^j}(\mathbf p)<6a+3\) in the other cases. When \(D^j \subseteq B_{\xi -1}(\mathbf p)\) or \(\mathbf {p}\cap (2a,2a+3]=\emptyset \), it is easy to see that \(\textsc {r} _{C^j}(\mathbf p)\) is at most \(2a\times 3=6a\). So we only need to discuss the case of \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \) and \(\mathbf {p}\cap (2a,2a+3]\ne \emptyset \).

Let \(\hat{p}\in \mathbf {p}\cap (2a,2a+3]\) be maximum. By normality of \(\mathbf {p}\), we know that \(\hat{p}\in \{2a+1,2a+2,2a+3\}\). Since \(w(d^j)=w(e^j)=2a+1\), it can be seen that \(\textsc {r} _{C^j}(\mathbf p)<6a+3\) holds for \(\hat{p}\in \{2a,2a+2,2a+3\}\). So Claim 2 is valid. \(\square \)

We are now ready to prove the close relation between the 3-OCC-3SAT instance I and the IPN instance P. Let \(\textsc {opt} (P)\) be the optimal objective value of P. Define

$$\begin{aligned} L=\sum _{i=1}^{n}24a_i+m(6a+3). \end{aligned}$$

Claim 3

\(\textsc {opt} (P)\le L\).

Suppose that \(\mathbf p\) is an optimal solution of P. We can assume without loss of generality that \(p_\tau >0\). Let \(U=V\setminus B_{\tau }(\mathbf p)\) denote the set of consumers who do not purchase during the whole selling process. Note first from our previous discussion that \(\textsc {r} _{V_i}(\mathbf p)\) may be greater than \(24a_i\), although \(\textsc {r} _{C^j}(\mathbf p)\le 6a+3\) holds for every \(j\in [m]\). However, \(\textsc {r} _{V_i}(\mathbf p)\le 24a_i+3\) is always valid, because \(\sum _{v\in V_i}w_v(\cup _{j=1}^mC^j)\le 3\) (recall the definition of 3-OCC-3SAT and the construction of P). Also, when \(V_i\setminus U\subseteq B_{\xi -1}(\mathbf p)\), we do have \(\textsc {r} _{V_i}(\mathbf p)\le 24a_i\). Therefore, if \((\cup _{i=1}^n V_i)\setminus U\subseteq B_{\xi -1}(\mathbf p)\), the above claim is derived immediately from Claims 1 and 2.

Suppose some \(v\in V_i\setminus U\) purchases at price \(p_t>0\) with \(t\ge \xi \). If \(v\in \{y_{i1},y_{i2},y_{i3}\}\), or \(v\in \{x_i,\lnot x_i\}\) and \(p_t>3\), then it can be seen easily that \(\textsc {r} _{\xi -1,V_i}(\mathbf p)\le 20a_i\), and hence (6.1) implies \(\textsc {r} _{V_i}(\mathbf p)\le 20a_i+5(2a+3)<20a_i+2a_i+15<24a_i\). It remains to consider the case where \(\{y_{i1},y_{i2},y_{i3}\}\subseteq B_{\xi -1}(\mathbf p)\), \(0<p_t\le 3\), and \(v\in \{x_i,\lnot x_i\}\cap D^{j_0}\) for some \(j_0\in [m]\) with \(c^{j_0}\not \in B_{t-1}(\mathbf p)\). Since \(c^{j_0}\) does not purchase before time t, it must be the case that \(\mathbf {p}\cap (p_t,2a+1]=\emptyset \). It follows \(p_t\le 3\) that \(\textsc {r} _{C^j}(\mathbf p)\le 9\) for all \(j\in [m]\). Hence (6.1) implies \(\textsc {r} (\mathbf p)=\textsc {r} _V(\mathbf p)\le \sum _{i=1}^{n}(24a_i+3)+9m<L\). So Claim 3 is indeed correct. \(\square \)

To establish the NP-hardness of the pricing problem, it suffices to prove that

$$\begin{aligned} \textsc {opt} (P)\ge L \Leftrightarrow I ~\hbox {is satisfiable}. \end{aligned}$$

(\(\Leftarrow \)) Suppose that I has a satisfactory truth assignment \(\pi \) with s variables assigned “TRUE” and the remaining \(n-s\) variables assigned “FALSE”. Let pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots ,p_{n+s+1})\) be a solution to P such that

  • There are one or two prices for each variable gadget depending on whether the variable is assigned “TRUE” or “FALSE” in \(\pi \): if \(x_{i}\) is assigned “TRUE” then \( 10a_i,2a_i\in \mathbf p\), if \(x_{i}\) is assigned “FALSE” then \( 6a_i\in \mathbf p\);

  • There is a common price for the m clause gadgets: \(p_{n+s+1}=2a+1\in \mathbf p\).

For this \(\mathbf p\), note from (6.1) that \(\xi =n+s+1\). According to Claim 1, \(\textsc {r} _{\xi -1,V_i}(\mathbf p)=24a_i\) for each \(i\in [n]\). For each clause gadget \(C^j\), due to Claim 1(i) and (ii), we know that consumer \(x^{j\ell }\in B_{\xi -1}(\mathbf p)\), \(1\le \ell \le 3\), if and only if the corresponding literal is “FALSE” in \(\pi \). Since \(\pi \) is a satisfactory assignment, we know that there is at least one literal in \(x^{j1},x^{j2},x^{j3}\) that is assigned true. Therefore, for each j, it holds that \(D^j \setminus B_{\xi -1}(\mathbf p)\ne \emptyset \). Combining this fact with Claim 2, we know that \(\textsc {r} _{\xi ,C^j}(\mathbf p)=6a+3\) for each clause \(C^j\). This completes the sufficiency part.

(\(\Rightarrow \)) Suppose now \(\textsc {opt} (P)\ge L \). Due to Observation 10, there exists a normal pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots ,p_{\tau })\) whose objective value \(\textsc {r} (\mathbf p)\) is at least L. Combining with Claim 3, this can only be the case that \(\textsc {opt} (P)=L\). By arguments in the proof of Claim 3, we know that conditions in Claims 1 and 2 must hold. We construct a truth assignment \(\pi \) as follows: for each \(i\in [n]\), if \(\mathbf {p}\cap [2a_i,10a_i]=\{2a_i,10a_i\}\), we assign “TRUE” to variable \(x_i\). Otherwise, that is \(\mathbf {p}\cap [2a_i,10a_i]=\{6a_i\}\), we assign “FALSE” to \(x_i\). By Claim 2, we know that \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \) for all \(j\in [m]\). Therefore \(\pi \) is indeed a satisfactory truth assignment for I. This completes the necessity part, and therefore the proof of Theorem 11.\(\square \)

A corollary of the above proof says that the length of the optimal pricing sequence of the IPN problem cannot be upper bounded by any constant. This remains true for the unweighted trees with zero intrinsic values, as can be seen from the following proof of Theorem 1.

1.3 Unweighted trees

Now we prove Theorem 1. The proof has high level similarities to the one for Theorem 11, a substantially more careful approach is required to handle the acyclic structure, and new ideas are needed to simulate the weights with unweighted links.

1.3.1 Construction

Let I be an arbitrary instance of the 3SAT problem, whose input is given by n boolean variables \(x_1,x_2,\ldots ,x_n\), and m clauses \(c^j=(x^{j1}\vee x^{j2}\vee x^{j3})\), \( 1\le j\le m\), where \(x^{j\ell }\) is a literal taken from \(\{x_1,x_2,\ldots ,x_n,\lnot x_1,\lnot x_2,\) \(\ldots , \lnot x_n\}\), \(1\le j\le m, 1\le \ell \le 3\). To avoid triviality, we assume that

$$\begin{aligned} m\!\ge \! 5,\hbox { and for each }i\!\in \! [n],\hbox { there exist }j,j'\in [m] \hbox { such that }x_i\in c^j\hbox { and }\lnot x_i\in c^{j'}.\nonumber \\ \end{aligned}$$
(6.2)

From the 3SAT instance I, we construct an IPN instance on unweighted tree \(G=(V,E)\) with all intrinsic values zero as follows. Let R (resp. \(\bar{R}\)) denote the set of ordered pairs (ij) such that \(i\in [n],j\in [m]\) and \(x_i\in c^j\) (resp. \(\lnot x_i\in c^j\)). Clearly, \(|R|+|\bar{R}|=3m\). Let \(k=k_0, k_1,k_2,\ldots ,k_n\) be integers satisfying

$$\begin{aligned} k_i\ge k_{i-1}+6m, \text { for }i=1,2,\ldots ,n,\text { and }k\ge 6m . \end{aligned}$$
(6.3)

Tree \(G=(V,E)\) has \(|V|<3m(k_n^3)+m(k^2+k+1)+(9mk_n^3)\) nodes in total, where V is the disjoint union of the node sets of 3m variable gadgets, m clause gadgets and one connection gadget.

  • For every \((i,j)\in R\), i.e., \(x_i\in c^j\), there is a variable gadget \(X_i^j=(V_i^j,E_i^j)\) which is a tree rooted at node \(x_i^j\) (see Fig. 2a). Node set \(V_i^j\) with \(|V_i^j|=k_i^3-2k_i^2+1<k_n^3\) is the disjoint union of four sets \(\{x_i^j\}\), \(V_{i1}^j\), \(V_{i2}^j\) and \(V_{i3}^j\), where \(V_{ih}^{j}\), \(h=1,2,3\), consists of nodes in \(X_i^j\) at distance h from \(x_i^j\).

    • Literal node \(x_i^j\), which simulates literal \(x_i\), has degree \( k_i-2\) in \(X_i^j\).

    • \(V_{i1}^j\) consists of the \(k_i-2\) neighbors of \(x_i^j\) in \(X_i^j\), all having degree \(k_i\).

    • \(V_{i2}^j\) consists of \((k_i-2)(k_i-1)\) nodes, all having degree \(k_i+1\).

    • \(V_{i3}^j\) consists of the \((k_i-2)(k_i-1)k_i\) leaves of \(X_i^j\).

  • For every \((i,j)\in \bar{R}\), i.e., \(\lnot x_i\in c^j\), there is a variable gadget \(\bar{X}_i^j=(\bar{V}_i^j,\bar{E}_i^j)\) which is a tree rooted at node \(\bar{x}_i^j\) (see Fig. 2b). Node set \(\bar{V}_i^j\) with \(|\bar{V}_i^j|=k_i^2<k_n^3\) is the disjoint union of three sets \(\{\bar{x}_i^j\}\), \(\bar{V}_{i1}^j\) and \(\bar{V}_{i2}^j\), where \(\bar{V}_{ih}^j\), \(h=1,2\), consists of nodes in \(\bar{X}_i^j\) at distance h from \(\bar{x}_i^j\).

    • Literal node \(\bar{x}_i^j\), which simulates literal \(\lnot x_i\), has degree \( k_i-1\) in \(\bar{X}_i^j\).

    • \(\bar{V}_{i1}^j\) consists of the \(k_i-1\) neighbors of \(\bar{x}_i^j\) in \(\bar{X}_i^j\), all having degree \(k_i+1\).

    • \(\bar{V}_{i2}^j\) consists of the \((k_i-1)k_i\) leaves of \(\bar{X}_i^j\).

  • For each clause \(c^j\), there is a clause gadget \(C^j=(V^j,E^j)\) which is a tree rooted at node \(c^j\) (see Fig. 2c). Node set \(V^j \) with \(|V^j|=k^2+k+1\) is the disjoint union of three sets \(\{c^j\}\), \(V^{j1}\) and \(V^{j2}\), where \(V^{jh}\), \(h=1,2\), consists of nodes in \(C^j\) at distance h from \(c^j\).

    • Clause node \(c^j \), which simulates the clause, has degree k in \(C^j\).

    • \(V^{j1}\) consists of the k neighbors of \(c^j\) in \(C^j\), all having degree \(k+1\).

    • \(V^{j2}\) consists of the \(k^2\) leaves of \( C^j\).

  • For any literal \(x_i\) and clause \(c^j\) with \(x_i\in c^j\), there is a link joining literal node \(x_i^j\) and clause node \(c^j\). For any literal \(\lnot x_i\) and clause \(c^j\) with \(\lnot x_i\in c^j\), there is a link joining literal node \(\bar{x}_i^j\) and clause node \(c^j\).

  • There is a connection gadget \(S=(V_S,E_S)\) which is a star centered at node s. The connection node s has degree \( 9mk_n^3-1\) in S, and is adjacent to every clause node of G.

Fig. 2
figure 2

Literal nodes and clause nodes are represented by circles, while auxiliary nodes are represented by solid disks and (pendant) squares. a Variable gadget \(X^j_i\). b Variable gadget \(\bar{X}_i^j\). c Clause gadget \(C^j\)

Obviously, the above construction of \(G=(V,E)\) can be done in polynomial time. It is easy to check that G is a tree. In particular, all the \(4m+1\) node-disjoint gadgets (recall that \(|R|+|\bar{R}|=3m\)) are connected by 4m links incident with clause nodes, where each clause node \(c^j\) has exactly four neighbors outside \(C^j\), three being literal nodes and one being the connection node s. Let \(E_{cl}\) denote the set of 3m links connecting clause nodes and literal nodes, and \(E_{cs}\) denote the set of m links connecting clause nodes and connection node s. Then

$$\begin{aligned}&V\text { is the disjoint union of } \bigcup _{(i,j)\in R}V_i^j,\bigcup _{(i,j)\in \bar{R}}\bar{V}_i^j,\bigcup _{j\in [m]}V^j \text { and }V_S. \end{aligned}$$
(6.4)
$$\begin{aligned}&E\text { is the disjoint union of }\bigcup _{(i,j)\in R}E_i^j,\bigcup _{(i,j)\in \bar{R}}\bar{E}_i^j,\bigcup _{j\in [m]}E^j, E_S, E_{cl},\text { and } E_{cs}. \end{aligned}$$
(6.5)

Observe that the connection node s has degree

$$\begin{aligned} d_G(s)=|E_S|+|E_{cs}|=9mk_n^3-1+m>9mk_n^3. \end{aligned}$$
(6.6)

Note that each literal node has exactly one neighbor outside the variable gadget containing it, and this neighbor is a clause node. Therefore, for any \((i,j)\in R\), we have

$$\begin{aligned} d_G(x_i^j)=k_i-1, \;\; d_G(v)=k_i\text { for all }v\in V_{i1}^j,\; \text {and } d_G(v)=k_i+1\text { for all }v\in V_{i2}^j.\end{aligned}$$
(6.7)

For any \((i,j)\in \bar{R}\), we have

$$\begin{aligned} d_G(\bar{x}_i^j)=k_i, \text { and }d_G(v)=k_i+1\text { for all }v\in \bar{V}_{i1}^j. \end{aligned}$$
(6.8)

For every \(j\in [m]\), we have

$$\begin{aligned} d_G(c^j)=k+4,\text { and }d_G(v)=k+1\text { for all }v\in V^{j1}. \end{aligned}$$
(6.9)

Other nodes, i.e., those not mentioned in (6.66.9), are exactly leaves of G. It is worthwhile noting from (6.3) that all the non-leaf consumers in the variable gadgets have much larger degrees than the non-leaf consumers in the clause gadgets. This enables us to consider the former consumers before the latter ones in the pricing/purchasing process.

1.3.2 Pricing

Given any integer pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots , p_\tau )\) for G, let \(\xi =\min \{t: p_t\in \mathbf {p}\text { and }p_t\le k+3\}\) be the first time that the price is equal to or lower than \(k+3\). Note that if \(p_1=d_G(s)\), then at time 1, only s purchases, and before time \(\xi \), no consumer in the clause gadgets has purchased, i.e.,

$$\begin{aligned} B_{\xi -1}(\mathbf p)\cap (\cup _{j=1}^m V^j)=\emptyset . \end{aligned}$$
(6.10)

For each \(j\in [m]\), let

$$\begin{aligned} D^j=\{x_i^j:x_i\in c^j,i\in [n]\}\cup \{\bar{x}_i^j:\lnot x_i\in c^j,i\in [n]\} \end{aligned}$$

consist of the three literal nodes corresponding to the three literals of clause \(c^j\).

Claim 4

If \(p_1=d_G(s)\), then the following holds for each \(j\in [m]\).

  1. (i)

    Either \(\textsc {r} _{C^j}(\mathbf p)\le |E^j|+3\), or \(|E^j|+k+1\le \textsc {r} _{C^j}(\mathbf p)\le |E^j|+k+3\).

  2. (ii)

    If \(\textsc {r} _{C^j}(\mathbf p)\ge |E^j|+k+1\) then \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \) and \(\mathbf p\cap [k+1,k+3]\ne \emptyset \).

  3. (iii)

    If \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \) and \( \mathbf p\cap [k,k+3]=\{k+1\}\), then \(\textsc {r} _{C^j}(\mathbf p)= |E^j|+k+1\).

Proof

Recall that \(\nu _t(v,\mathbf p)\) denotes the (total) value of the product at time t for consumer \(v\in V\). As \(p_1= d_G(s)=\nu _1(s,\mathbf p)>d_G(v)=\nu _1(v,\mathbf p)\) for all \(v\in V\setminus \{s\}\), only consumer s purchases at time 1. Then for any \(t\in [2,\tau ]\) it holds that \(\nu _t(c^j,\mathbf p)\le \nu _2(c^j,\mathbf p)=k+3\). Thus \(c^j\) can only purchase at a price no greater than \(k+3\). To prove (i), we distinguish among three cases for \(c_j\)’s purchase.

In case of \(c^j\) purchasing at some price in \([k+2,k+3]\), either all consumers in \( V^{j1}\) purchase at some price within [2, k], in which case \(\textsc {r} _{C^j\setminus \{c^j\}}(\mathbf p)\le k^2=|E^j|-k\); or all consumers in \(C^j\setminus \{c^j\}\) purchase at price 1, in which case \(\textsc {r} _{C^j\setminus \{c^j\}}(\mathbf p)=k+k^2=|E^j|\). So either \(\textsc {r} _{C^j}(\mathbf p)\le |E^j|+3\) or \(\textsc {r} _{C^j}(\mathbf p)\in \{|E^j|+k+2,|E^j|+k+3\}\).

In case of \(c^j\) purchasing at price \(k+1\), all consumers in \(V^{j1}\) purchase at price \(k+1\), giving \(\textsc {r} _{C^j}(\mathbf p)=(k+1)(1+k)=k^2+2k+1=|E^j|+k+1\).

Consider now the case of \(c^j\) not purchasing at any price above k. Note first it is possible that \(c^j\) never purchases at all under \(\mathbf p\), and that consumers in \(V^{j1}\) will never purchase at a price higher than \(k+1\). If one and thus all consumers in \(V^{j1}\) purchase before \(c^j\), then \(\textsc {r} _{C^j}(\mathbf p)\) is maximized when all consumers in \(V^{j1}\) purchase at price \(k+1\), giving \(\textsc {r} _{C^j}(\mathbf p)\le (k+1)k+3=|E^j|+3\). If none of the consumers in \(V^{j1}\) purchases before \(c^j\), then \(\textsc {r} _{C^j}(\mathbf p)\le \max \{k(1+k),1+k+k^2\}=|E^j|+1\).

Hence we see that (i) holds.

Notice also from the above case analysis that \(\textsc {r} _{C^j}(\mathbf p)\ge |E^j|+k+1\) only if \(c^j\) purchases under some price \(p_t\in [k+1,k+3]\) at time t. Recalling the time point \(\xi \) defined at the beginning of this subsection, we have \(t\ge \xi \), which implies \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \). So (ii) is valid.

Suppose now that \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \). Recall from (6.10) that \(c^j\) does not purchase before time \(\xi \). It follows that \(\nu _{\xi }(c^j,\mathbf p)\ge k+1\). If \( \mathbf p\cap [k,k+3]=\{k+1\}\), then \(p_{\xi }=k+1\). It follows that \(c^j\) and all consumers in \(V^{j1}\) purchase at price \(p_{\xi }=k+1\), yielding (iii).

Note from (6.7) and (6.8) that for any \(i\in [n]\), both \(\max \{d_G(v): (i,j)\in R,\,v\in V_i^j\} \) and \(\max \{d_G(v): (i,j)\in \bar{R}\), \(v\in \bar{V}_i^j\} \) are upper bounded by \(k_i+1\); thus none of consumers in \( \cup _{j:(i,j)\in R}V_i^j\) and \( \cup _{j:(i,j)\in \bar{R}}\bar{V}_i^j\) purchases when the price is above \(k_i+1\). Furthermore, the following two claims can be easily checked by charging (a part of) revenue obtained at a vertex to a subset of links incident with it, where each link receives a charge of 1.

Claim 5

For any \((i,j)\in R\), the following hold:

  1. (i)

    if \(\mathbf {p}\cap [k_i-1,k_i+1 ]=\{k_i+1,k_i-1\}\), then \(\textsc {r} _{\xi -1,V_i^j}(\mathbf p)=|E_i^j| +1\) and \(x_i^j\in B_{\xi -1}(\mathbf p)\);

  2. (ii)

    if \(\mathbf {p}\cap [k_i-1,k_i+1 ]=\{k_i \}\), then \(\textsc {r} _{\xi -1,V_i^j}(\mathbf p)=|E_i^j| \) and \(x_i^j\not \in B_{\xi -1}(\mathbf p)\).

  3. (iii)

    if \(\mathbf {p}\cap [k_i-1,k_i+1]\in \{\{k_i+1,k_i-1\},\{k_i \}\}\), then \(\textsc {r} _{V_i^j}(\mathbf p)\le |E_i^j|+1\).

Proof

To see (i), we consider the time, say t, when price \(p_t=k_i+1\) is announced, all consumers in \(V^j_{i2}\) purchase, and others in \(V^j_i\setminus V^j_{i2}\) do not. We charge the revenue \(k_i+1\) obtained at each consumer of \(V^j_{i2}\) to the \(k_i+1\) links incident with it. Next, at time \(t+1\), price \(p_{t+1}=k_{i}-1\) is announced, and only \(x^j_i\) purchases, because the product value is \(k_i-1\) for \(x^j_i\), and 1 (resp. 0) for each consumer in \(V^j_{i1}\) (resp. \(V^j_{i3}\)) at that time. Now we charge the \(k_i-2\) links in \(E^j\) that are incident with \(x^j_i\). So all links in \(E^j_i\) are charged and 1 revenue is left (this amount corresponds to the edge that connects \(x_i\) and the clause gadget \(C^j\)), which along with \(k_i>k+6m\) gives (i), as after \(x^j_i\)’s purchase the product values 0 for all consumers in \(V^j_{i1}\cup V^j_{i3}\).

To see (ii), note first that only consumers in \(V^j_{i1}\cup V^j_{i2}\) purchase under price \(k_i\). For each \(v\in V^j_{i1}\), we charge the \(k_i\) links incident with v; for each \(v\in V^j_{i2}\), we charge the \(k_i\) pendant links incident with v. All links of \(E^j_i\) have been charged and no revenue is left. Now, the product values 1 for \(x^j_i\) and 0 for all consumers in \(V^j_{i3}\). Hence (ii) holds.

Statement (iii) is straightforward from the proofs of (i) and (ii).\(\square \)

Claim 6

For any \((i,j)\in \bar{R}\), the following hold:

  1. (i)

    if \(\mathbf {p}\cap [k_i-1,k_i+1 ]=\{k_i+1,k_i-1\}\), then \(\textsc {r} _{\xi -1,\bar{V}_i^j}(\mathbf p)=|\bar{E}_i^j| \) and \(\bar{x}_i^j\not \in B_{\xi -1}(\mathbf p)\);

  2. (ii)

    if \(\mathbf {p}\cap [k_i-1,k_i+1 ]=\{k_i \}\), then \(\textsc {r} _{\xi -1,\bar{V}_i^j}(\mathbf p)=|\bar{E}_i^j|+1\) and \(\bar{x}_i^j \in B_{\xi -1}(\mathbf p)\).

  3. (iii)

    if \(\mathbf {p}\cap [k_i-1,k_i+1]\in \{\{k_i+1,k_i-1\},\{k_i \}\}\), then \(\textsc {r} _{\bar{V}_i^j}(\mathbf p)\le |\bar{E}_i^j|+1\).

Proof

In proving (i), for each consumer in \(\bar{V}^j_{i1}\), we charge the \(k_i+1\) links incident with it. In proving (ii), for each consumer in \(\bar{V}^j_{i1}\), we charge the \(k_i \) pendant links incident with it; for \(\bar{x}^j_i\), we charge the \(k_i-1\) links in \(\bar{E}_i^j\) that are incident with it. Statement (iii) is then instant.\(\square \)

In the rest of this subsection we discuss the properties of normal pricing sequences (recall Definition 1).

Claim 7

For any \(i\in [n]\), if \(\mathbf p\) is normal and \(\mathbf {p}\cap [k_i-1,k_i+1]\notin \{\{k_i+1,k_i-1\},\{k_i \}\}\), then one of the following holds:

  1. (i)

    \(\mathbf {p}\cap [k_i,k_i+1 ]=\emptyset \), in which case \(\textsc {r} _{V_i^j}(\mathbf p)< |E_i^j|-12m+1 \) for every \(j\in [m]\) with \((i,j)\in R\), and \(\textsc {r} _{\bar{V}_i^j}(\mathbf p)< |\bar{E}_i^j| -12m+1\) for every \(j\in [m]\) with \((i,j)\in \bar{R}\).

  2. (ii)

    \(\mathbf {p}\cap [k_i-1,k_i+1]=\{k_i+1\}\) and \(\mathbf {p}\cap [2,k_i-2]\ne \emptyset \), in which case \(\textsc {r} _{V_i^j}(\mathbf p)\le |E_i^j|-6m+5 \) for every \(j\in [m]\) with \((i,j)\in R\), and \(\textsc {r} _{\bar{V}_i^j}(\mathbf p)\le |\bar{E}_i^j|\) for every \(j\in [m]\) with \((i,j)\in \bar{R}\).

  3. (iii)

    \(\mathbf {p}\cap [k_i-1,k_i+1]=\{k_i+1\}\) and \(\mathbf {p}\cap [1,k_i-2]\subseteq \{1\}\), in which case \(\textsc {r} _{V_i^j}(\mathbf p)\le |E_i^j|+1 \) for every every \(j\in [m]\) with \((i,j)\in R\), and \(\textsc {r} _{\bar{V}_i^j}(\mathbf p)\le |\bar{E}_i^j| +1\) for every \(j\in [m]\) with \((i,j)\in \bar{R}\).

Proof

If \(\mathbf {p}\cap [k_i,k_i+1 ]=\emptyset \), then no consumer in \((\cup _{j:(i,j)\in R}V_i^j)\cup (\cup _{j:(i,j)\in \bar{R}}\bar{V}_i^j)\) purchases at a price higher than \(k_i-1\). It follows that

$$\begin{aligned} \textsc {r} _{V_i^j}(\mathbf p)\le (k_i-1)|V^j_{i2}\cup V^j_{i1}\cup \{x_i^j\}|=1+ |E_i^j|-|V^j_{i2}|=|E_i^j|-(k_i-2)(k_i-1)+1 \end{aligned}$$

for every \(j\in [m]\) with \((i,j)\in R\) and

$$\begin{aligned} \textsc {r} _{\bar{V}_i^j}(\mathbf p) \le (k_i-1)|\bar{V}^j_{i1}\cup \{\bar{x}_i^j\}|=|\bar{E}_i^j|-|\bar{V}_{i1}^j|=|\bar{E}_i^j|-(k_i-1) \end{aligned}$$

for every \(j\in [m]\) with \((i,j)\in \bar{R}\). Now \((k_i-2)(k_i-1)-1> k_i-1\ge 12m-1\), which is implied by (6.3), gives (i).

It remains to consider the case where there exists \(p_t\) (\(1\le t\le \tau \)) that is the maximum price in \(\mathbf {p}\cap [k_i,k_i+1]\ne \emptyset \).

If \(p_t=k_i\), then the maximality of \(p_t\) together with (6.3) and (6.7) – (6.9) implies that all consumers in \(V^j_{i1}\cup V^j_{i2}\) with \((i,j)\in R\) and those in \(\{\bar{x}^j_i\}\cup \bar{V}^j_{i1}\) with \((i,j)\in \bar{R}\) would purchase under price \(k_i\) at time t. Note from (6.6) that consumer s must have purchased by time t. After time t any consumer without the product has value at most \(k_{i-1}+3<k_i-1\) (recall (6.7) – (6.9) and (6.3)). It follows from normality of \(\mathbf {p}\) that \(k_i-1\not \in \mathbf p\), enforcing \(\mathbf {p}\cap [k_i-1,k_i+1]=\{k_i\}\), a contradiction to the condition \(\mathbf {p}\cap [k_i-1,k_i+1]\notin \{\{k_i+1,k_i-1\},\{k_i \}\}\) of the claim.

Thus \(p_t=k_i+1\), and all consumers in \( V^j_{i2}\) with \((i,j)\in R\) and those in \( \bar{V}^j_{i1}\) with \((i,j)\in \bar{R}\) purchase under price \(k_i+1\) at time t, bringing about revenues \(|E_i^j|-(k_i-2)\) and \(|\bar{E}_i^j|\), respectively. Notice again that s has purchased by time t. After time t, any consumer without the product has value at most \(k_i-1\), which along with the normality of \(\mathbf p\) gives \(k_i\not \in \mathbf p\). In turn \(\mathbf {p}\cap [k_i-1,k_i+1]\ne \{k_i+1,k_i-1\}\) implies \(\mathbf {p}\cap [k_i-1,k_i+1]=\{k_i+1\}\).

As \(k_i-1\not \in \mathbf p\), the normality of \(\mathbf p\) enforces \(\mathbf p\cap [k_{i-1}+4,k_i-1]=\emptyset \). It follows from (6.3) that

$$\begin{aligned} \textsc {r} _{V_i^j}(\mathbf p)\le |E_i^j|-(k_i-2)+(k_{i-1}+3)\le |E_i^j|-6m+5. \end{aligned}$$

In case of \(\mathbf {p}\cap [2,k_i-2]\ne \emptyset \), before variable nodes \(\bar{x}^j_i\) with \((i,j)\in \bar{R}\) purchase (possibly) at price 1 or 0, all clause nodes have purchased under some price in \(\mathbf {p}\cap [2,k_i-2]\). It follows that all these \(\bar{x}^j_i\) with \((i,j)\in \bar{R}\) can only purchase at price 0, yielding (ii).

In case of \(\mathbf {p}\cap [2,k_i-2]=\emptyset \), we have \(\mathbf {p}\cap [1,k_i-2]\subseteq \{1\}\), implying \(\textsc {r} _{\bar{V}_i^j}(\mathbf p)\le |\bar{E}_i^j| +1\) and hence (iii).

Due to the above analysis, it can also be observed that the three situations stated in this claim are all the possible ones.\(\square \)

Combining Claims 5(iii), 6(iii) and 7 we obtain the following corollary.

Claim 8

If \(\mathbf p\) is normal, then \(\textsc {r} _{V_i^j}(\mathbf p)\le |E_i^j|+1\) for all \((i,j)\in R\) and \(\textsc {r} _{\bar{V}_i^j}(\mathbf p)\le |\bar{E}_i^j|+1\) for all \((i,j)\in \bar{R}\).

Claim 9

If \(\mathbf p\) is normal and \(\textsc {r} (\mathbf p)>|V|\), then \(p_1=d_G(s)\).

Proof

Suppose to the contrary that \(p_1\ne d_G(s)\). By normality of \(\mathbf p\), we have \(p_1<d_G(s)\), and furthermore \(p_1\le k_n+1\) (recalling (6.3) and (6.66.9)). It follows that either \(p_1=1\), giving \(\textsc {r} (\mathbf p)=|V|\), or \(p_1\ge 2\), giving

$$\begin{aligned} \textsc {r} (\mathbf p)= & {} \textsc {r} _{\{s\}}(\mathbf p)+\textsc {r} _{V\setminus \{s\}}(\mathbf p)\\\le & {} (k_n+1)+2(|E|-|E_S|)\\= & {} (k_n+1)+2(|V|-1-|E_S|)< 9mk_n^3<d_G(s)<|V|, \end{aligned}$$

where the third last inequality uses the fact that \(|V|<3m(k_n^3)+m(k^2+k+1)+(9mk_n^3)\) and \(|E_S|=9mk_n^3-1\).

1.3.3 Final proof

Having finished all necessary preparations, we are ready to establish the close relation between 3SAT instance I and the IPN instance on tree G.

Theorem 1 (Restated)   Computing the optimal pricing sequence for the IPN problem is NP-hard, even when the underlying network is an unweighted tree and all the intrinsic values are zero.

Proof

Given an IPN instance on unweighed tree \(G=(V,E)\) with zero intrinsic values, define

$$\begin{aligned} L=|E|+(k-2)m \end{aligned}$$

To establish the NP-hardness of the IPN problem, it suffices to prove that \(\textsc {opt} _0(G)\ge L\) if and only if the 3SAT instance I is satisfiable.

The “if” part.   Suppose that I has a satisfactory truth assignment \(\pi \) with \(\lambda \) variables assigned “TRUE” and the remaining \(n-\lambda \) variables assigned “FALSE”. Let pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots ,p_{2n-\lambda +1},p_{2n-\lambda +2})\) be a solution to the IPN instance on G such that

  • \(p_1=d_G(s)\);

  • There are one or two prices for each variable gadget depending on whether the variable is assigned “TRUE” or “FALSE” in \(\pi \): if \(x_{i}\) is assigned “TRUE” then \( k_i \in \mathbf {p}\), if \(x_{i}\) is assigned “FALSE”, then \(\{k_i+1,k_i-1\}\subset \mathbf {p}\);

  • There is a common price for the m clause gadgets: \(p_{2n-\lambda +2}=k+1\in \mathbf p\).

According to Claims 5 and 6, we have

$$\begin{aligned} \sum _{(i,j)\in R}\textsc {r} _{V_i^j}(\mathbf p)+\sum _{(i,j)\in \bar{R}}\textsc {r} _{\bar{V}_i^j}(\mathbf p)\ge \sum _{(i,j)\in R}|E_i^j|+\sum _{(i,j)\in \bar{R}}|\bar{E}_i^j|. \end{aligned}$$

Furthermore, the satisfiability (each \(D_j\) containing at least one literal node whose literal is assigned “TRUE”) implies that \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \) for each \(j\in [m]\). Therefore, the condition in Claim 4(iii) holds for every \(j\in [m]\), giving \(\textsc {r} _{C^j}(\mathbf p)=|E^j|+k+1\) for every \(j\in [m]\). It follows from (6.4) that the pricing sequence \(\mathbf p\) assures a revenue

$$\begin{aligned} \textsc {r} (\mathbf p)= & {} \textsc {r} _{V_S}(\mathbf p)+\sum _{(i,j)\in R}\textsc {r} _{V_i^j}(\mathbf p)+\sum _{(i,j)\in \bar{R}}\textsc {r} _{\bar{V}_i^j}(\mathbf p)+\sum _{j\in [m]}\textsc {r} _{C^j}(\mathbf p)\\\ge & {} d_G(s)+\sum _{(i,j)\in R}|E_i^j|+\sum _{(i,j)\in \bar{R}}|\bar{E}_i^j|+\sum _{j\in [m]}(|E^j|+1+k)\\= & {} |E_S|+|E_{cs}|+\sum _{(i,j)\in R}|E_i^j|+\sum _{(i,j)\in \bar{R}}|\bar{E}_i^j|+\sum _{j\in [m]}(|E^j|+1+k) \end{aligned}$$

Now from (6.5) we derive \(\textsc {r} (\mathbf p)\ge |E|-|E_{cl}|+m(1+k)=|E|-3m+m(k+1)= L\), proving the “if” part.

The “only if” part.   Suppose now \(\textsc {opt} _0(G)\ge L \). Due to Observation 10, there exists a normal pricing sequence \(\mathbf {p}=(p_1,p_2,\ldots ,p_\tau )\) whose objective value \(\textsc {r} (\mathbf p)\) is at least L. As \(k\ge 5m\), which implies \(L>|E|+1=|V|\), we derive from Claim 9 that \(p_1=d_G(s)\), which validates the subsequent application of Claim 4.

If \(\textsc {r} _{C^{j_0}}(\mathbf p)<|E^{j_0}|+k+1\) for some \(j_0\in [m]\), it can be deduced from Claim 4(i) that \(\textsc {r} _{C^{j_0}}(\mathbf p)\le |E^{j_0}|+3\). Recalling (6.4), we derive from Claims 8 and 4(i) that

$$\begin{aligned} \textsc {r} (\mathbf p)= & {} \textsc {r} _{V_S}(\mathbf p)+\sum _{(i,j)\in R}\textsc {r} _{V_i^j}(\mathbf p)+\sum _{(i,j)\in \bar{R}}\textsc {r} _{\bar{V}_i^j}(\mathbf p)+\sum _{j\in [m]}\textsc {r} _{C^j}(\mathbf p)\\\le & {} |E_S|+|E_{cs}|+\sum _{(i,j)\in R}(|E_i^j|+1)+\sum _{(i,j)\in \bar{R}}(|\bar{E}_i^j|+1)\\&+\sum _{j\in [m]\setminus \{j_0\}}(|E^j|+k+3)+|E^{j_0}|+3. \end{aligned}$$

Recalling (6.5), we have

$$\begin{aligned} \textsc {r} (\mathbf p)\le & {} |E| -|E_{cl}|+(|R|+|\bar{R}|) +(m-1)(k+3)+3\\= & {} |E|-3m+3m +(k-2)m+5m-k\\= & {} L-(5m-k). \end{aligned}$$

Then \(k>5m\) implies \(\textsc {r} (\mathbf p)<L\), a contradiction. Thus for every \(j\in [m]\) we have \(\textsc {r} _{C^j}(\mathbf p)\ge |E^j|+k+1\), which along with Claim 4(ii) implies

$$\begin{aligned} D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \hbox { and }\mathbf {p}\cap [k+1,k+3]\ne \emptyset . \end{aligned}$$

Suppose that there exists \(i_0\in [n]\) such that \(\mathbf {p}\cap [k_{i_0}-1,k_{i_0}+1]\notin \{\{k_{i_0}+1,k_{i_0}-1\},\{k_{i_0} \}\}\). Recall from (6.2) that there exists \(j_0\in [m]\) such that \((i_0,j_0)\in R\). Notice from \(\mathbf {p}\cap [k+1,k+3]\ne \emptyset \) that \(\mathbf {p}\cap [2,k_{i_0}-2]\ne \emptyset \), because \([k+1,k+3]\subseteq [2,k_{i_0}-2]\) as guaranteed by (6.3). If \(\mathbf {p}\cap [k_{i_0}-1,k_{i_0}+1]=\{k_{i_0}+1\}\), then Claim 7(ii) implies that \(\textsc {r} _{V^{j_0}_{i_0}}(\mathbf p)\le |E^{j_0}_{i_0}|-6m+5\) and further that

$$\begin{aligned} \textsc {r} (\mathbf p)= & {} \textsc {r} _{V_S}(\mathbf p)+\sum _{(i,j)\in R}\textsc {r} _{V_i^j}(\mathbf p)+\sum _{(i,j)\in \bar{R}}\textsc {r} _{\bar{V}_i^j}(\mathbf p)+\sum _{j\in [m]}\textsc {r} _{C^j}(\mathbf p)\\\le & {} |E_S|+|E_{cs}|+\sum _{(i,j)\in R\setminus \{(i_0,j_0)\}}(|E_i^j|+1)+(|E_{i_0}^{j_0}|-6m+5)\\&+ \sum _{(i,j)\in \bar{R}}(|\bar{E}_i^j|+1)+\sum _{j\in [m] }(|E^j|+k+3) \\= & {} |E| -|E_{cl}|+(|R|+|\bar{R}|-1)-6m+5 +m(k+3) \\= & {} |E|-3m+(3m-1) +m(k-2)+5-m\\= & {} L+4-m. \end{aligned}$$

Then \(m\ge 5\) implies a contradiction to \(\textsc {r} (\mathbf p)\ge L\), which reduces us to the case \(\mathbf p\cap [k_{i_0},k_{i_0}+1]=\emptyset \) and \(\textsc {r} _{V^{j_0}_{i_0}}(\mathbf p)<|E^{j_0}_{i_0}|-12m+1\) as stated in Claim 7(i). Since \(|E^{j_0}_{i_0}|-12m+1\) is obviously smaller than \(|E^{j_0}_{i_0}|-6m+5\), we still have \(\textsc {r} (\mathbf p)<L\). The contradiction shows that no such an \(i_0\in [n]\) exists, and therefore the conditions in Claims 5 and 6 hold. This enables us to construct a truth assignment \(\pi \) as follows: for each \(1\le i\le n\), if \(\mathbf {p}\cap [k_i-1,k_i+1]=\{k_i+1,k_i-1\}\), we assign “FALSE” to variable \(x_i\). Otherwise, that is \(\mathbf {p}\cap [k_i-1,k_i+1]=\{k_i\}\), we assign \(x_i\) “TRUE”. As argued above, \(D^j \setminus B_{\xi -1}(\mathbf p) \ne \emptyset \) for all \(j\in [ m]\). Therefore \(\pi \) is indeed a satisfactory truth assignment for I. This completes the “only if” part and the whole proof of Theorem 1. \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Cao, Z., Chen, X., Hu, X. et al. Approximation algorithms for pricing with negative network externalities. J Comb Optim 33, 681–712 (2017). https://doi.org/10.1007/s10878-015-9988-1

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10878-015-9988-1

Keywords

Navigation