# Demand Private Coded Caching

The work by Maddah-Ali and Niesen demonstrated the benefits in reducing the transmission rate in a noiseless broadcast network by joint design of caching and delivery schemes. In their setup, each user learns the demands of all other users in the delivery phase. In this paper, we introduce the problem of demand private coded caching where we impose a privacy requirement that no user learns any information about the demands of other users. We provide an achievable scheme and compare its performance using the existing lower bounds on the achievable rates under no privacy setting. For this setting, when N≤ K we show that our scheme is order optimal within a multiplicative factor of 8. Furthermore, when N > K and M≥ N/K, our scheme is order optimal within a multiplicative factor of 4.

There are no comments yet.

## Authors

• 3 publications
• ### Fundamental Limits of Demand-Private Coded Caching

We consider the coded caching problem with an additional privacy constra...
01/18/2021 ∙ by Chinmay Gurjarpadhye, et al. ∙ 0

• ### Demand-Private Coded Caching and the Exact Trade-off for N=K=2

The distributed coded caching problem has been studied extensively in th...
11/16/2019 ∙ by Sneha Kamath, et al. ∙ 0

• ### Optimal Demand Private Coded Caching for Users with Small Buffers

Coded Caching is an efficient technique to reduce peak hour network traf...
01/21/2021 ∙ by K. K. Krishnan Namboodiri, et al. ∙ 0

• ### Fundamental Limits of Caching for Demand Privacy against Colluding Users

This work investigates the problem of demand privacy against colluding u...
08/09/2020 ∙ by Qifa Yan, et al. ∙ 0

• ### Fundamental Limits of Device-to-Device Private Caching with Trusted Server

In the coded caching problem as originally formulated by Maddah-Ali and ...
12/19/2019 ∙ by Kai Wan, et al. ∙ 0

• ### Device-to-Device Private Caching with Trusted Server

In order to preserve the privacy of the users demands from other users, ...
09/26/2019 ∙ by Kai Wan, et al. ∙ 0

• ### Coded Caching via Line Graphs of Bipartite Graphs

We present a coded caching framework using line graphs of bipartite grap...
05/23/2018 ∙ by Prasad Krishnan, et al. ∙ 0

##### This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

## I Introduction

The phase in which the server stores a fraction of all the files in the caches of users is called as placement phase, and the phase in which the server broadcasts is called as delivery phase [Maddah14]. Each user decodes the demanded file using the cache content and the broadcast message received. It is assumed that all the files are of equal size and the transmission rate is the number of bits transmitted per size of one file. For any and , an achievable scheme is provided for each cache size , and its order optimality is shown to be within a multiplicative factor of 12. Improved achievable rates were obtained in [Amiri17, Zhang18, Vilardebo18, Yu18] and the lower bounds on the achievable rates were improved in [Ghasemi17, Wang18]. The optimal rates when the cache content is not allowed to be coded were characterized in [Yu18, Wan16].

Security aspects in coded caching have been considered under information theoretic security in some recent works [Sengupta15]. Security against a wiretapper who observes the broadcasted message has been studied in [Sengupta15]. In this work, the security is obtained by distributing keys among users. They provided an approximate characterization of memory-rate trade-off for this problem. Privacy aspects have also been studied in coded caching [Ravindrakumar18] in the following sense. Each user should not obtain any information about any other file than the requested one. A feasible scheme has been proposed by distributing keys in the placement phase, and the order optimality of this scheme is shown to be within a constant factor [Ravindrakumar18].

In this paper, we study the coded caching setup introduced by Maddah-Ali and Niesen [Maddah14] under the constraint that no user learns any information about the demands of the other users. For files and users, we obtain an achievable scheme from a coded caching scheme for files users with no privacy requirement. The memory-rate pair achieved by our scheme is given in Theorem 1. Since the coded caching with demand privacy is a more constrained problem compared to the problem without the privacy requirement, any converse for the problem under no privacy also holds as a converse for the problem with the privacy requirement. By comparing our achievable memory-rate pair with the lower bounds on the achievable memory-rate pair under no privacy, in Theorem 2, we show that our scheme is order optimal within a multiplicative factor of 8 when . We also show that when , our scheme is order optimal within a multiplicative factor of 4 if .

Recently, an idependent and parallel work [Wan19] on demand privacy for coded caching was posted on arXiv on 28 August 2019. The problem formulation of [Wan19] is very similar to ours. We studied the problem of demand privacy for coded caching for the case of single request from users, the setup studied in [Maddah14]. The authors in [Wan19] studied the cases of single request as well as multiple requests from the users. So it is good to compare our results with theirs for the single request case. For the single request case, the achievable schemes in these two works are very different. In both of these works, the tightness of the achievable rates are shown by comparing it with the existing converse results on coded caching problem under no privacy requirement. The general scheme in [Wan19] is shown to be order optimal when . In contrast, we show that our scheme is order optimal within a factor of 8 when . A special case where all users demand distinct files was also studied in [Wan19]. This assumption implies that . They have provided an improved scheme for this special case which is order optimal within a factor of when . We show that when , our scheme is order optimal within a factor of when

without any restriction on the demand vectors.

The paper is organized as follows. We give our problem formulation in Section II. Our results are presented in Section III, and the proofs are given in Section IV. We conclude the paper in Section V with some simulation results.

## Ii Problem formulation and definitions

A server with files is connected to users via a noiseless broadcast link. We assume that files are independent, and each file is of length bits and takes values uniformly in the set . User has a local cache of size bits for some real number . In the placement phase, the server fills the cache of each user. In the delivery phase, each user demands file from the server, where . Let denote the demands of all users, and let denote all demands, but , i.e., . All users convey their demands to the server without revealing it to other users. Then, the server broadcasts a message of size bits to all the users. Here is a real number, and is defined as the rate of transmission. Using the received message and the cache content, each user recovers file .

In addition to the recovery requirement, we have a privacy requirement that user should not gain any information about . To achieve this, we consider some shared randomness which is shared between user

and the server, and it is not known to the other users. The shared randomness can be achieved during the placement phase since the placement is done secretly for each user. Random variables

take values in some finite alphabets , respectively. The set of random variables is denoted by . The random variables are independent of each other.

A caching scheme consists of cache encoding functions, the transmission encoding function, and decoding functions. For , the cache encoding function for the -th user is given by

 Ck:Sk×[2F]N→[2MF], (1)

and the cache content is given by . The transmission encoding function

 E:[2F]N×D1⋯×DN×S1×⋯×SK→[2RF], (2)

outputs the transmitted message . And finally, user has decoding function

 Gk:Dk×Sk×2RF×2MF→[2F], (3)

which recovers user ’s demanded file . A memory-rate pair is said to be achievable with demand privacy if a scheme satisfies the following two conditions:

 H(WDk|Zk,X,Dk)=0∀k=1,…,K, (4)

and

 I(¯¯¯¯¯D~k;Zk,X,Dk)=0∀k=1,…,K. (5)

For files and users and memory , memory-rate trade-off is defined as

 R∗p(N,K,M) =inf{R:(M,R) is achievable with demand privacy}. (6)

A memory-rate pair is achievable under no privacy if it satisfies (4). In this case, the memory-rate trade-off is defined as

 R∗(N,K,M) =inf{R:(M,R) is achievable}. (7)

## Iii Main results

First let us consider a trivial scheme which achieves demand privacy. In the caching phase, caches of all users are filled with the same out of files. Then in the broadcast phase, the rest of files are transmitted. In this scheme, all users can obtain all files, and the rate of transmission is . It is easy to see that this scheme satisfies (4) and (5). Next we give a coded caching instance for which we give a scheme with rate strictly less than and it satisfies (4) and (5). Let us consider a simple example with and .

###### Example 1

Let and denote the files and , respectivley. For , next we show a scheme which achieves demand privacy (5) . Let us denote the 6 bits of and by and , respectively. Each user stores 3 bits of each file. In the caching phase, there are two choices for the cache content for each user. Let

. Then the cache content of user , denoted by , is given in Table I. The realization of is known only to user and the server.

After knowing the demand requests, in the delivery phase, the server chooses one of the 4 transmissions given in Table II. The choice is determined by the random variables and and it is given in Table II. For example, if and , then the server chooses transmission . Using Tables I and II, it is easy to verify that this scheme satisfies the decoding condition (4). Now let us see how this scheme achieves demand privacy. Let us consider the case of and . Then from the point of view of user 1, with transmission user 2 may be decoding file using cache or he may be decoding file using cache . User 2 also has similar inference. As we can observe that not revealing the caching function along with the clever choice of transmission preserves the demand privacy against the other user. In this example, each of the transmission consists of 4 bits. Since , this scheme achieves a rate . In contrast, the optimal rate wihout any privacy requirement for this example is shown [Maddah14] to be .

The scheme described in Example 1 for can be generalized for any arbitrary and . Our scheme achieves the memory-rate pair given in the following theorem. The achievable memory-rate pair in the following theorem is the achievable memory-rate pair using the scheme given in [Yu18] for files and users and memory .

###### Theorem 1

For files, users and memory , the following holds:

 R∗p(N,K,M)≤Rp(N,K,M):=(NKKM+1)−(NK−NKM+1)(NKKM), if M∈{0,1/K,2/K,…,N}. (8)
###### Definition 1

Let denote the lower convex envelope of the points given in (8).

We have the following corollary.

###### Corollary 1

The rate region given by is achievable.

In Theorem 2, we discuss the tightness of the achievable rate region given in Corollary 1.

###### Theorem 2

, defined in Definition 1, satisfies the following:

1. For , it is within a multiplicative gap of 8 from the optimal region, i.e., .

2. For , if , then it is within a multiplicative gap of 4 from the optimal region, i.e., .

3. For all and , it is optimal for , i.e., .

## Iv Proofs of the results

### Iv-a Proof of Theorem 1

In the following, coded caching schemes for files and users and memory with and without demand privacy are called as -private scheme and -non-private scheme, respectively. We derive an -private scheme from an -non-private scheme. In particular, we use the scheme given in [Yu18] as the -non-private scheme to prove the theorem. For the -non-private scheme, let and denote user ’s cache encoding function and the decoding function, respectively, where , and let denote the transmission encoding function. The definitions of and are similar to the definitions given in (1),  (2) and  (3), respectively without any shared randomness.

First let us consider the procedure of choosing the caches in -private scheme from the -non-private scheme. Let the shared key be distributed as . Then -th user’s cache encoding function in -private scheme is given by for .

Now we explain the procedure in choosing from . Let and denote a demand vector in -private scheme and in the -non-private scheme, respectively. The transmission encoding function in the -non-private scheme is determined by the demand vector . Whereas, in -private scheme, it is determined by the demand vector and the shared keys . So, we denote and by and , respectively. For given and , in -private scheme, the server chooses a from the -non-private scheme as follows:

For given and , let

 ck:=(sk−dk)modN for k=1,…,K. (9)

Further, let

 ¯c:=(c1,…,cK).

Now consider the -length vector in obtained by applying right cyclic shifts on . Then is given by . Here, we can observe that a uniquely determines a . The encoding function in -private scheme is chosen as .

In the -non-private scheme, the server also communicates the demand vector in the transmission to enable the decoding at each user. Thus, the broadcast message contains the demand vector and a function of the files. For demand vector , let in the -non-private scheme. Thus, the transmitted message in the -non-private scheme is given by . In -private scheme, the transmitted message is given by .

The decoding at -th user in -private scheme is as follows. Since is broadcasted, for which happens in the -non-private scheme is known to the user. Then, the user follows the decoding of -th user in the -non-private scheme because the user has the cache of -th user in the -non-private scheme. For a given , the -th user’s demand in the -non-private scheme is given by

 ¯dnp(i)=i(modN)−ck for (k−1)N

The decodability follows since is same as . We can observe that the rate of transmission in -private scheme is equal to that of the -non-private scheme. Next lemma shows that -private scheme also provides the demand privacy.

###### Lemma 1

-private scheme achieves the demand privacy defined in (5).

###### Proof.

To prove this lemma, we show that for ,

 I(¯¯¯¯¯D~k;Zk,Dk,X,¯¯¯¯¯¯W)=0, (10)

which implies (5). For a given , let be such that . Then, we get

 Pr(¯¯¯¯¯D~k =¯¯¯d~k|Zk=(ck(sk,¯¯¯¯w),sk),X=(¯c,xnp¯c(¯¯¯¯w)),Dk=dk,Sk=sk,¯¯¯¯¯¯W=¯¯¯¯w) =Pr(¯¯¯¯¯D~k=¯¯¯d~k|Dk=dk,Sk=sk,¯C=¯c,¯¯¯¯¯¯W=¯¯¯¯w) (11) =Pr(¯¯¯¯¯D~k=¯¯¯d~k|Dk=dk,Sk=sk,¯C=¯c) (12) =Pr(¯¯¯¯S~k=¯¯¯s~k) (13) =(1N)K−1. (14)

Here, (11) follows because is a deterministic function of , and is a deterministic function of and . (12) follows since is independent of and . (13) follows due to the fact that is a function of and as given in (9). (14) follows since for all . Thus, we have (10) which proves the lemma. ∎

For the -non-private scheme, is an achievable rate for . This shows the achievability of in (8) for .

### Iv-B Proof of Theorem 2

To prove the theorem, we first give some notations and inequalities. First recall that and denote the optimal rate with privacy and without privacy as defined in (6) and (7), respectively. is the achievable rate given in Theorem 1. Let denote the achievable rate with no privacy using the scheme given in [Yu18] for files, users, and memory . For parameter , it is given by

 RYMA(N,K,M) =(Kr2+1)−(K−min(N,K)r2+1)(Kr2),r2∈{0,1,…,K}. (15)

Similarly, let denote an achievable rate with no privacy using the scheme in [Maddah14]. For , it is given by

 RMN(N,K,M) =K(1−MN)min⎛⎝11+KMN,NK⎞⎠. (16)

In Theorem 1, we showed that . It was shown in [Yu19] (see Appendix J) that the lower convex envelop of the points in (15

) is same as the piecewise linear interpolation of adjacent points. So,

defined in Definition 1 satisfies the following:

 Rpc(N,K,M)=RYMA(N,NK,M)∀M≥0.

Then we have the following inequalities which hold for all :

 R∗(N,K,M)(a)≤R∗p(N,K,M)(b)≤Rpc(N,K,M)=RYMA(N,NK,M)(c)≤RMN(N,NK,M), (17)

follows from the fact that the optimal rate required with demand privacy is larger than that of without privacy, follows since an achievable rate is lower-bounded by the optimal rate, and the inequality in is shown in [Yu18].

Proof of part 1): ()

To prove , we show that if , then

 RMN(N,NK,M)R∗(N,K,M)≤8. (18)

Then the result follows from (17). To obtain (18), we first show that

 RMN(N,NK,M)RMN(N,K,M)≤2 % for M∈{0,N/K,2N/K,…,N}. (19)

For , we have

 RMN(N,NK,M)RMN(N,K,M)=Nmin(11+KM,1K)min(11+KMN,NK). (20)

Case 1:

We first find and .

 11+KM ≥11+K(1−N/K) =1K−N+1 >1K for N>1.

So, . Further,

 11+KMN ≥11+KN(1−N/K) =NK.

So . Hence (20) gives 1.

Case 2:

In this case, we get

 min(11+KM,1K)=1K if % 1−NK≤M≤1−1K

and

 min⎛⎝11+KMN,NK⎞⎠=11+KMN if 1−NK≤M≤1−1K.

Then from (20), it follows that

 RMN(N,NK,M)RMN(N,K,M) =NK(1+KMN) =NK+M if 1−NK≤M≤1−1K ≤2,

where the last inequality follows since and .

Case 3 :

In this case, we obtain

 min(11+KM,1K)=11+KM%if1−1K≤M≤N

and

 min⎛⎝11+KMN,NK⎞⎠=11+KMN if 1−1K≤M≤N.

Then from (20), we get the following

 RMN(N,NK,M)RMN(N,K,M) =N1+KM(1+KMN) =N+KM1+KM =N−11+KM+1. (21)

Further,

 M≥1−1K ⟹KM≥K−1, ⟹KM≥N−1(Since K≥N), ⟹KM+1≥N−1, ⟹N−11+KM≤1.

Then from (21), we get . Thus, we have (19).

Let the region obtained by linearly interpolating the adjacent memory points given in (16). Then it follows from (19) that

 RMN(N,NK,M)RMNlin(N,K,M)≤2∀M≥0. (22)

We have the following lemma.

###### Lemma 2

For , the following holds:

 RMNlin(N,K,M)R∗(N,K,M)≤4∀M≥0. (23)
###### Proof.

See Appendix A. ∎

From (22) and  (23), we obtain (18). This completes the proof of part 1).

Proof of part 2): (, )

We first show that

 Rp(N,K,M)RYMA(N,K,M)≤2 for M∈{N/K,2N/K,…,N}. (24)

Since , we get for all , i.e., ,

 RYMA(N,K,M) =(Kr2+1)−(K−min(N,K)r2+1)(Kr2) =(Kr2+1)(Kr2) =K−r2r2+1. (25)

Since , we get for all , i.e., ,

 Rp(N,K,M) =(NKr1+1)−(NK−Nr1+1)(NKr1) ≤(NKr1+1)(NKr1) =NK−r1r1+1. (26)

By dividing (26) by (25), we get

 Rp(N,K,M)RYMA(N,K,M) ≤(NK−r1)(r2+1)(r1+1)(K−r2). (27)

For all , it follows from (27) that

 Rp(N,K,M)RYMA(N,K,M) ≤N(r2+1)Nr2+1 ≤1+N−1Nr2+1 ≤2, (28)

using for . Thus (24) follows.

Since the lower convex envelop of the points is same as the piecewise linear interpolation of adjacent points [Yu18], we obtain using (28)

 Rpc(N,K,M)RYMA(N,K,M)≤2∀M≥N/K. (29)

Furthermore, it was shown in [Yu18] that

 RYMA(N,K,M)R∗(N,K,M)≤2∀M≥0. (30)

Then from (29) and (30), we obtain

 Rpc(N,K,M)R∗(N,K,M)≤4∀M≥N/K.

Since , it follows that

 Rpc(N,K,M)R∗p(N,K,M)≤4∀M≥N/K.

Proof of part 3):

For in gives

 Rp(N,K,NK−1K) =(NKNK)−(NK−NNK)(NKNK−1) =1(NKNK−1) =1NK.

For , we have . It was shown in [Maddah14, Theorem 2] that for