Next Article in Journal
Causal Geometry
Next Article in Special Issue
On Grid Quorums for Erasure Coded Data
Previous Article in Journal
Causal Intuition and Delayed-Choice Experiments
Previous Article in Special Issue
Optimal Linear Error Correcting Delivery Schemes for Two Optimal Coded Caching Schemes
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Cache-Aided General Linear Function Retrieval

1
Electrical Engineering and Computer Science Department, Technische Universität Berlin, 10587 Berlin, Germany
2
Department of Electrical Engineering, University of North Texas, Denton, TX 76203, USA
3
Electrical and Computer Engineering Department, University of Utah, Salt Lake City, UT 84112, USA
4
Electrical and Computer Engineering Department, University of Illinois Chicago, Chicago, IL 60607, USA
*
Author to whom correspondence should be addressed.
Entropy 2021, 23(1), 25; https://doi.org/10.3390/e23010025
Submission received: 7 November 2020 / Revised: 22 December 2020 / Accepted: 22 December 2020 / Published: 26 December 2020

Abstract

:
Coded Caching, proposed by Maddah-Ali and Niesen (MAN), has the potential to reduce network traffic by pre-storing content in the users’ local memories when the network is underutilized and transmitting coded multicast messages that simultaneously benefit many users at once during peak-hour times. This paper considers the linear function retrieval version of the original coded caching setting, where users are interested in retrieving a number of linear combinations of the data points stored at the server, as opposed to a single file. This extends the scope of the authors’ past work that only considered the class of linear functions that operate element-wise over the files. On observing that the existing cache-aided scalar linear function retrieval scheme does not work in the proposed setting, this paper designs a novel coded caching scheme that outperforms uncoded caching schemes that either use unicast transmissions or let each user recover all files in the library.

1. Introduction

Content caching is an efficient technique to handle the increase of requests for massive amounts of data and content over communication networks. By leveraging low-cost memory components at the user sides, caching reduces peak-time traffic by prefetching contents closer to users during off-peak time, thereby reducing the transmission delay or equivalently increasing the bandwidth in communication systems. Traditional caching techniques aim at prefetching popular content by predicting the user demands, thus realizing a “local caching gain” (i.e., that scales with the amount of local memory) [1]. Maddah-Ali and Niesen (MAN) showed that it is possible to actually attain a “global caching gain” (i.e., that scales with the global amount of memory in the network) by using codes [2]. The idea is that, if a single transmission can serve a number of users simultaneously, the network load can be reduced by the same factor thus speeding-up communications significantly.
In the MAN setting, a server has a library of N files and broadcasts to K users through an error-free shared-link. Each user has a cache of size of at most M files. The MAN scheme consists of two phases: placement phase, where the server pushes content from the library to the local caches without knowledge of user future demands, and delivery phase, where each user requests one file and the server broadcasts coded packets such that each user can correctly recover its desired file. The objective is to minimize the worst-case load over all possible user demands, that is, the number of files that must be communicated so that any demands can be satisfied. The MAN scheme is optimal under the constraint of uncoded cache placement (i.e., each user directly stores a collection of segments of the library files in its cache) when N K [3,4]. By removing the redundant transmissions in the MAN scheme when a file is requested multiple times, Yu, Maddah-Ali, and Avestimehr (YMA) derived a scheme that is optimal under the constraint of uncoded cache placement for N < K [5]. In general, the YMA scheme is order optimal to within a factor of 2 [6], that is, coded placement can at best half the load of the YMA scheme.
On the motivation that linear and multivariate polynomial queries naturally arise in modern engineering problems and deep learning algorithms such as matrix-vector, matrix-matrix multiplications, in [7] the authors posed the question of what is the optimal worst-case load when the cache-aided users are interested in retrieving a scalar linear function of the files rather than a single file. For the class of functions considered in [7], which are restricted to operate element-wise on the file entries, it was surprisingly shown that the YMA load can be achieved, that is, there is no penalty in terms of load in retrieving scalar linear functions under the constraint of uncoded cache placement. It was noted in [7] that the proposed scalar linear function scheme can be extended to all scenarios to which the original MAN scheme has been extended, such as for example demand-private retrieval [8] and Device-to-Device networks [9,10]. In addition, the scalar linear function scheme [7] can be used as a building block to provide demand-privacy and content-security against colluding users [11,12].
In this paper, we move to a more general case of cache-aided linear function retrieval than in [7], where users can request general linear combinations of all symbols in the library, and not necessarily restricted to operate element-wise on the file entries. For example, each user aims to compute some statistics of a bunch of data such as local weighted averages (which are general linear functions) of the data; these are very common tasks in many applications depending on the data and on the weights.
Instead, each user may want to compute some statistics of a bunch of data such as average, or compute local weighted averages (which are general linear functions) of the data. We think that it is a very common task in many applications depending on the data and on the weights. So in our paper, if the Academic Editor agrees, we will replace the application in deep neutral networks by the application in computing local weighted averages.
Besides the novel and realistic problem formulation, our main contributions are as follows. We first introduce a baseline scheme that either lets each user recover all the symbols in the library or uses unicast transmissions to satisfy each user. The main challenge to implement a coded caching strategy in this problem is that each symbol in a user’s demand is a linear combination of all the symbols in the library. Inspired by the grouping coded caching strategy in [13], which was used to reduce the sub-packetization level (The sub-packetization level is the smallest file length necessary to realize an achievable scheme.), we propose a scheme that treats the demand of each user as a matrix-vector multiplication and uses the grouping strategy to generate multicast messages after possibly performing invertible linear matrix operations. The proposed scheme outperforms the baseline scheme in all parameter regimes.

1.1. Paper Organization

The rest of this paper is organized as follows. Section 2 formulates the shared-link cache-aided general linear function retrieval problem. Section 3 provides the main result of this paper. Section 4 provides some numerical evaluations. Section 5 concludes the paper. Some proofs may be found in Appendices.

1.2. Notation Convention

Calligraphic symbols denote sets, bold symbols denote vectors and matrices, and sans-serif symbols denote system parameters. We use | · | to represent the cardinality of a set or the length of a vector; [ a : b ] : = a , a + 1 , , b and [ n ] : = [ 1 : n ] ; ⊕ represents bit-wise XOR; [ a ] + : = max { a , 0 } ; F q represents a finite field with order q ; A T and A 1 represent the transpose and the inverse of matrix A , respectively; rank q ( A ) represents the rank of matrix A on field F q ; I n represents the identity matrix with dimension n × n ; ( A ) m × n represents the dimension of matrix A is m × n ; we let x y = 0 if x < 0 or y < 0 or x < y .

2. System Model

Different from [7], here we consider the case where the users’ desired linear functions are no longer scalar or operating element-wise across the files entries, thus we consider the whole library as a single file.
The ( K , F , L , q ) shared-link cache-aided general linear function retrieval problem consists of a central server with access to a library of F independent and identically distributed (i.i.d.) symbols over a finite filed F q , denoted by w = ( w 1 , , w F ) T ( F q ) F . We often treat w as a column vector, which should be clear from the context. The server is connected to K cache-aided users through an error-free shared-link. The system has two phases.
  • In the placement phase, the server pushes up to M symbols into the local cache of each user, where M [ 0 : F ] , without knowing what the users will demand later. The cached content of user k [ K ] is denoted by
    Z k = ϕ k ( w ) ,
    where ϕ k is the placement function for user k defined as
    ϕ k : ( F q ) F ( F q ) M , k [ K ] .
    M is referred to as the cache (or memory) size. If each user directly copies M symbols from the library into its cache, the cache placement is said to be uncoded.
  • In the delivery phase, each user wants to retrieve L linear combinations of all the symbols in the library, where L [ 1 : F ] .
    The demand of user k [ K ] is represented by the matrix D k ( F q ) L × F , meaning user k aims to retrieve
    y k = D k w ( F q ) L ,
    Let the collection of all demand matrices be D : = [ D 1 ; ; D K ] ( F q ) K L × F . We assume that the server and all users know D which is communicated on a separate channel, thus not impacting the downlink load next—see also Remark 4. ( Notice that differently from the cache-aided matrix multiplication problem in [14], where the matrix on the each side of the desired multiplication is one of the library files, in this paper each user k [ K ] desires D k w where D k is known by all the users in the delivery phase and w represents the vector of all symbols in the library.)
    According to all the users’ demand matrix D , the server broadcasts the message
    X = ψ ( D , w ) ,
    where ψ is the encoding function
    ψ : ( F q ) K L × F × ( F q ) F ( F q ) R ,
    for some R [ 0 : F ] . R is referred to as the load.
Achievability: For the ( K , F , L , q ) shared-link cache-aided general linear function retrieval problem, we say that the pair ( M , R ) is achievable if for any possible demand D there exist placement functions in (2) and a delivery function in (5) such that
H ( D k w | D , Z k , X ) = 0 , k [ K ] .
Optimal memory-load tradeoff: For the ( K , F , L , q ) shared-link cache-aided general linear function retrieval problem, the objective is to determine the minimum worst-case downlink load (or load for simplicity) defined as
R ( M ) = min ϕ 1 , , ϕ K , ψ { R : ( M , R ) is achievable } .
Optimal memory-load tradeoff in the limit for large file size: Since solving the problem in (7) for any given ( K , F , L , q ) is challenging, in the following we shall consider the regime where the file size F is as large as desired and we thus let the system parameters scale with the file length as follows
M : = μ F , μ [ 0 , 1 ] ,
L : = λ F , λ [ 0 , 1 ] ,
R : = ρ F , ρ [ 0 , 1 ] .
For fixed ( K , λ ) we aim to characterize the minimum worst-case normalized downlink load (or normalized load for simplicity)
ρ ( μ ) = min ϕ 1 , , ϕ K , ψ { ρ : ( M , R ) = ( μ F , ρ F ) is achievable for some ( F , q ) } .
Remark 1
(Relationship to [7]). The cache-aided scalar linear function retrieval problem in [7] is a special case of the formulation here. More precisely, let F = N L (i.e., 1 N = λ ), where N indicates the number of files and λ F is the file length. The demand of user k [ K ] is represented by the vector y k = ( y k , 1 , y k , 2 , , y k , N ) ( F q ) N by which we mean that the user is requesting
D k = y k , 1 I L , y k , 2 I L , , y k , N I L ( F q ) L × N L ,
where I n is the identity matrix with dimension n × n . In the restricted setting where the demands are as in (12) the optimal load under the constraint of uncoded cache placement is the lower convex envelop of the points
M L , R scalar L = N t K , K t + 1 K min { K , N } t + 1 K t , t [ 0 : K ] ,
( μ , ρ scalar ) = t K , λ K t + 1 K min { K , N } t + 1 K t , t [ 0 : K ] ,
where for a given value of t in (13) the subpacketization level L must be an integer multiple of K t .
Remark 2
(A minrank solution). For the ( K , F , L , q ) shared-link cache-aided general linear function retrieval problem, the best linear scheme, inspired by [15,16], is a follows. Linear placement: user k [ K ] caches Z k = P k w ( F q ) M for some P k ( F q ) M × F . Linear delivery: the server sends, in the worst case, a number of symbols given by
R minrank = min P 1 , , P K max D 1 , , D K min T 1 , , T K rank D 1 + T 1 P 1 D 2 + T 2 P 2 D K + T K P K ,
where T k ( F q ) L × M , k [ K ] .
Solving the minrank problem in (15) is hard [15,16], thus in the following we shall design a scheme with lower complexity.
Remark 3
(A baseline scheme). For the ( K , F , L , q ) shared-link cache-aided general linear function retrieval problem, the load
R baseline = min K L , F M ρ baseline = min K λ , 1 μ ,
can be achieved by an uncoded caching strategy as follows.
  • In order to achieve the load K L , we transmit one by one the elements of y k , k [ K ] , in (3). The main limitation of this unicast transmission scheme is the lack of multicast gain.
  • In order to achieve F M we let each user recover all the symbols in the library. In the placement phase, each user caches the first M symbols in the library. In the delivery phase, the server transmits all the remaining F M symbols. The main limitation of this scheme is that, if L < F M , the users do not need to recover all the symbols in the library in order to retrieve their desired function.
The main contribution of this paper is to find schemes that, despite the lack of structure on the demand matrices in general, achieve a smaller load than (16).
Remark 4
(Uplink and downlink loads). Besides downlink load, uplink load is also considered in the distributed matrix-matrix multiplication problem [17,18,19]. In this work, the communication cost of uploading the demand matrix to the server is not a focus, i.e, we assume that each user communicates the whole demand matrix to the server and all other users on a separate channel that is not the bottleneck in the system. This assumption can be also justified as follows. Let D ( k ) denotes the set of possible demand matrices of user k [ K ] , referred to as demand range, that is, user k chooses one matrix in D ( k ) as its demand. We assume that D ( k ) is known by the server and all users. The communication cost to let the server and the other users know the realization of the demand matrix is negligible compared to the number of transmissions from the server if k [ K ] log q ( | D ( k ) | ) F .

3. Main Result

Based on Remark 3, the main challenge is to design a coded caching strategy that (i) lets each user directly recover the desired linear combinations, instead of recovering all the library symbols, and (ii) attains coded caching gain, as opposed to serving the users one-by-one with unicast transmissions. The main contribution of this paper is the following theorem, which is proved in Appendix A.
Theorem 1.
For the ( K , λ ) shared-link cache-aided general linear function retrieval problem, we have:
  • if μ = α g 1 g + ( 1 α ) g g + 1 where g [ K 1 ] and α [ 0 , 1 ] , the following normalized load is achievable
    ρ ach : = K g λ , if α g K g λ min ρ 1 , ρ 2 if α g K g λ ,
    ρ 1 : = α g + min K g + 1 λ , ( 1 α ) g + 1 ,
    ρ 2 : = K g min α g , λ + min K g + 1 λ α g + , ( 1 α ) g + 1 ;
  • if μ = α K 1 K + ( 1 α ) where α [ 0 , 1 ] , the following normalized load is achievable
    ρ ach = ρ 3 = min α K , λ .
Next, we provide the intuition behind the proposed scheme in Theorem 1, which is based on three ingredients:
  • We start by the achievable scheme for (20) with α = 1 . We aim to design the cache placement such that each user caches a fraction K 1 K of the file and the uncached part of file by this user is known by the remaining K 1 users. With this cache placement, the delivery consists of a single multicast message with multicasting gain K . More precisely, the construction of the proposed scheme is as follows.
    ecalling that, in Remark 1 with t = K 1 , each user misses a fraction 1 / K of each file and that missing fraction is known by the remaining K 1 users; with t + 1 = K , the delivery consists of a single multicast message with multicasting gain K that is the sum of each user’s missing fraction of the demanded file. In our context, this idea becomes the following scheme.
    Assume K divides F . We use here a Matlab-like notation for submatrices. The library is partitioned into K equal length subfiles as follows
    I k : = ( k 1 ) F K + 1 : k F K , k [ K ] ,
    w k : = w ( I k ) ( F q ) F K , k [ K ] ,
    w = ( w 1 , , w K ) ;
    user k [ K ] caches Z k = ( w j : j [ K ] \ { k } ) ; the server delivers the multicast message
    X = k [ K ] D k ; : , I k w k ( F q ) L , if F K > L k [ K ] w k ( F q ) F K , if F K L ,
    where D k ; : , I k represents the sub-matrix of D k including the columns with indices in I k . In X, each user k [ K ] knows all but the requested vector
    D k ; : , I k w k , if F K > L ; w k , if F K L , ,
    such that user k can recover either of them. Thus an achieved normalized memory-load tradeoff is
    ( μ , ρ ) = 1 1 K , min 1 K , λ .
  • We then introduce the achievable scheme for (17) with α { 0 , 1 } . Assume now the K users are portioned into g groups of K g users each, where g [ K 1 ] . Let the users in the same group share the same cache content and recover all the linear combinations demanded by the users in the group. Then the normalized memory-load tradeoff is as in (25) but with K replaced by with g and L replaced by K g L . Therefore, we get that the following normalized memory-load points are achievable
    ( μ , ρ ) = 1 1 g , min 1 g , λ K g , g [ K ] .
  • The rest of the proof of Theorem 1 consists of a method to ‘interpolate’ among the points in (26), as explained in Appendix A. Unlike cache-aided scalar linear function retrieval in [7], the difficulty in the considered problem is that connecting two normalized memory-load points by a line segment is generally impossible. The main reason is that if we partition w as w = [ w ; w ] and use a different cache placement strategy on each part, each demanded function D k w is in the form
    D k w = D k w + D k w ;
    thus it cannot be divided into two separate parts, where the first part only contains the linear combinations of w and the second part only contains the linear combinations of w . An example to highlight this limitation and our approach to overcome it is provided at the end of this section.
Remark 5
(Comparison to the baseline scheme). We show here that the proposed scheme in Theorem 1 outperforms the baseline scheme in (3).
  • Case μ = α g 1 g + ( 1 α ) g g + 1 where g [ K ] and α [ 0 , 1 ] : From (17) and (19), it can be seen that
    ρ ach K g λ K λ .
    From (17) and (18), it can be seen that
    ρ ach α g + 1 α g + 1 = 1 μ .
    Hence, from (28) and (29), we can prove ρ ach ρ baseline in this case.
  • Case μ = α K 1 K + ( 1 α ) where α [ 0 , 1 ] : Since in this case α K = 1 μ , from (20) we can prove ρ ach ρ baseline in this case.
Remark 6
(Connection to Remark 1). For the proposed scheme achieving (25), the cache placement is the same as the cache-aided scalar linear function retrieval scheme in Remark 1 with t = K 1 .
ecalling that, in Remark 1 with t = K 1 , each user misses a fraction 1 / K of each file and that missing fraction is known by the remaining K 1 users; with t + 1 = K , the delivery consists of a single multicast message with multicasting gain K that is the sum of each user’s missing fraction of the demanded file. In our context, this idea becomes the following scheme.
Notice that, for the considered cache-aided general linear function retrieval problem where μ = t K and t [ K ] , we could use the cache-aided scalar linear function retrieval scheme in Remark 1 to deliver K t + 1 pieces of the requested vectors. The scheme would achieve
( μ , ρ ) = t K , λ K t + 1 , t [ K ] ,
which reduces to (25) for t = K 1 . By the grouping argument we would achieve
( μ , ρ ) = t g , λ K g g t + 1 , t [ g ] , g [ K ] .
Let then fix one g [ K ] and one t [ g 2 ] , and analyse the achieved normalized load in (31). We will show that
ρ = λ K g g t + 1 ρ baseline .
as follows. It can be seen that
λ K g g t + 1 K λ g t + 1 g
K λ
ρ baseline ,
where (34) follows since t [ g 2 ] and thus g t + 1 g . This shows that, with the exception for the normalized memory-load points with t = g 1 , the scheme in (31) is inferior to the baseline scheme in (16), and will thus not be pursued in the rest of the paper.
We finish this section with an example to illustrate the main ideas of the proposed scheme.
Example 1.
We consider a system with K = 6 users, cache fraction μ = 47 72 , and demand fraction λ = 1 12 . It can be seen that
μ = 47 72 = α g 1 g + ( 1 α ) g g + 1 α = 1 12 , g = 2 .
Placement Phase. It can be seen that the memory size is between μ 1 = g 1 g = 1 2 and μ 2 = g g + 1 = 2 3 . We partition w into two parts as w = [ w 1 ; w 2 ] where w 1 ( F q ) F / 12 and w 2 ( F q ) 11 F / 12 . Furthermore,
  • w 1 is partitioned into two equal-length subfiles, w 1 = [ w { 1 } 1 ; w { 2 } 1 ] , each of which has F 24 symbols. We divide the 6 users into 2 groups where G 1 1 = { 1 , 3 , 5 } and G 2 1 = { 2 , 4 , 6 } . We let users in G 1 1 cache w { 1 } 1 and let users in G 2 1 cache w { 2 } 1 .
  • w 2 is partitioned into three equal-length subfiles, w 2 = [ w { 1 , 2 } 2 ; w { 1 , 3 } 2 ; w { 2 , 3 } 2 ] , each of which has 11 F 36 symbols. We divide the 6 users into 3 groups, where G 1 2 = { 1 , 4 } , G 2 2 = { 2 , 5 } , and G 3 2 = { 3 , 6 } . We let users in G 1 2 cache w { 1 , 2 } 2 and w { 1 , 3 } 2 , let users in G 2 2 cache w { 1 , 2 } 2 , w { 2 , 3 } 2 , and let users in G 3 2 cache w { 1 , 3 } 2 and w { 2 , 3 } 2 .
Each user caches F 24 + 2 × 11 F 36 = 47 F 72 symbols, thus satisfying the memory size constraint.
Delivery Phase. With some permutation on the rows of w , the demand of user 1 can be expressed as
D 1 w = D 1 , { 1 } w { 1 } 1 + D 1 , { 1 , 2 } w { 1 , 2 } 2 + D 1 , { 1 , 3 } w { 1 , 3 } 2 + D 1 , { 2 } w { 2 } 1 + D 1 , { 2 , 3 } w { 2 , 3 } 2 .
User 1 can recover D 1 , { 1 } w { 1 } 1 + D 1 , { 1 , 2 } w { 1 , 2 } 2 + D 1 , { 1 , 3 } w { 1 , 3 } 2 from its cache, and similarly for the other users. Thus in the delivery phase, the users need to recover
B 1 : = D 1 , { 2 } w { 2 } 1 + D 1 , { 2 , 3 } w { 2 , 3 } 2 ,
B 2 : = D 2 , { 1 } w { 1 } 1 + D 2 , { 1 , 3 } w { 1 , 3 } 2 ,
B 3 : = D 3 , { 2 } w { 2 } 1 + D 3 , { 1 , 2 } w { 1 , 2 } 2 ,
B 4 : = D 4 , { 1 } w { 1 } 1 + D 4 , { 2 , 3 } w { 2 , 3 } 2 ,
B 5 : = D 5 , { 2 } w { 2 } 1 + D 5 , { 1 , 3 } w { 1 , 3 } 2 ,
B 6 : = D 6 , { 1 } w { 1 } 1 + D 6 , { 1 , 2 } w { 1 , 2 } 2 .
If we treat each sum in (38)–(43) as a block and use the MAN strategy to delivery these blocks, we would transmit B 1 + B 2 , B 3 + B 4 , B 5 + B 6 for a total of F 4 symbols. Hence, the scheme achieves the same normalized load as the proposed scheme in (26) with μ 1 = 1 2 ; in other words, a portion of the memory of size μ μ 1 = 47 72 1 2 = 11 72 would be wasted. We next propose two novel schemes to let each user recover its desired sum in (38)–(43) while leveraging the whole memory.
The solution that achieves ρ 1 in (18). Focus on the demanded sum of user 1 in (38). The key idea is to let user 1 recover D 1 , { 2 } w { 2 } 1 and D 1 , { 2 , 3 } w { 2 , 3 } 2 separately. In particular,
  • For the first term in B 1 in (38), since the dimension of D 1 , { 2 } is F 12 × F 24 and the sub-demand matrix D 1 , { 2 } is known by each user, we let user 1 directly recover w { 2 } 1 , which contains F 24 symbols, and then compute D 1 , { 2 } w { 2 } 1 . Similarly, we let users 3 , 5 recover w { 2 } 1 , and users 2 , 4 , 6 recover w { 1 } 1 . Thus in the delivery phase, the server transmits
    w { 1 } 1 + w { 2 } 1 ,
    for a total of F 24 symbols, where users 1 , 3 , 5 know w { 1 } 1 and users 2 , 4 , 6 know w { 2 } 1 .
  • For the second term in B 1 in (38), since the dimension of D 1 , { 2 , 3 } is F 12 × 11 F 36 and the sub-demand matrix D 1 , { 2 , 3 } is known by each user, user 1 needs to recover all symbols in D 1 , { 2 , 3 } w { 2 , 3 } 2 . We denote C 1 , { 2 , 3 , 5 , 6 } 2 : = D 1 , { 2 , 3 } w { 2 , 3 } 2 since it is known by users 2 , 3 , 5 , 6 . Hence, in order to let each user recover the first term in its desired sum, the server transmits
    C 1 , { 2 , 3 , 5 , 6 } 2 + C 2 , { 1 , 3 , 4 , 6 } 2 + C 3 , { 1 , 2 , 4 , 5 } 2 ,
    C 4 , { 2 , 3 , 5 , 6 } 2 + C 5 , { 1 , 3 , 4 , 6 } 2 + C 6 , { 1 , 2 , 4 , 5 } 2 ,
    for a total of F 6 symbols.
Hence, in the delivery phase the server transmits F 24 + F 6 = 5 F 24 symbols, and the normalized load is ρ 1 = 5 24 , which coincides with (18).
The solution that achieves ρ 2 in (19). The idea is to partition each user’s demand into two parts after having removed its cached content, where the partition is the result of a clever invertible linear transformation; we then have two steps, one for each of the two parts.
We first focus on the demand of user 1 in (38), i.e.,
B 1 = D 1 , { 2 } w { 2 } 1 + D 1 , { 2 , 3 } w { 2 , 3 } 2 = D 1 , { 2 } D 1 , { 2 , 3 } w { 2 } 1 w { 2 , 3 } 2 .
The main strategy here is to take a linear transformations of (47) as follows
B 1 = T 1 F 12 × F 12 D 1 , { 2 } F 12 × F 24 D 1 , { 2 , 3 } F 12 × 11 F 36 w { 2 } 1 F 24 × 1 w { 2 , 3 } 2 11 F 36 × 1 ,
where T 1 is full-rank and the bottom F 12 F 24 = F 24 symbols in B 1 are linear combinations of w { 2 , 3 } 2 only (i.e., these linear combinations do not contain any term in w { 2 } 1 ). This is possible because B 1 contains F 12 linear combinations of all symbols in [ w { 2 } 1 ; w { 2 , 3 } 2 ] , while w { 2 } 1 contains F 24 symbols. Hence, we can re-express B 1 as
B 1 = B 1 , { 2 , 6 } F 24 × 1 B 1 , { 2 , 3 , 5 , 6 } F 24 × 1 ,
where B 1 , { 2 , 6 } contains F 24 linear combinations of the symbols in w { 2 } 1 and w { 2 , 3 } 2 , which are both known by users 2 and 6, while B 1 , { 2 , 3 , 5 , 6 } contains F 24 linear combinations of the symbols in w { 2 , 3 } 2 which are known by users in { 2 , 3 , 5 , 6 } . It will be clarified later that the server transmits B 1 , { 2 , 6 } with coded caching gain equal to g = 2 (i.e., the multicast message satisfies two users simultaneously), and B 1 , { 2 , 3 , 5 , 6 } with coded caching gain equal to g + 1 = 3 .
Following the same line or reasoning, we can express the demands of the other users as
B 2 = [ B 2 , { 1 , 3 } ; B 2 , { 1 , 3 , 4 , 6 } ] ;
B 3 = [ B 3 , { 2 , 4 } ; B 3 , { 1 , 2 , 4 , 5 } ] ;
B 4 = [ B 4 , { 3 , 5 } ; B 4 , { 2 , 3 , 5 , 6 } ] ;
B 5 = [ B 5 , { 4 , 6 } ; B 5 , { 1 , 3 , 4 , 6 } ] ;
B 6 = [ B 6 , { 1 , 5 } ; B 6 , { 1 , 2 , 4 , 5 } ] .
The transmission contains two steps.
  • In the first step, we let each user k [ 6 ] recover the first term of its demand B k . In this step, the server transmits
    B 1 , { 2 , 6 } + B 2 , { 1 , 3 } ,
    B 3 , { 2 , 4 } + B 4 , { 3 , 5 } ,
    B 5 , { 4 , 6 } + B 6 , { 1 , 5 } ,
    which contains F 8 symbols.
  • In the second step, we let each user k [ 6 ] recover the second term of its demand B k . In this step, the server transmits
    B 1 , { 2 , 3 , 5 , 6 } + B 2 , { 1 , 3 , 4 , 6 } + B 3 , { 1 , 2 , 4 , 5 } ,
    B 4 , { 2 , 3 , 5 , 6 } + B 5 , { 1 , 3 , 4 , 6 } + B 6 , { 1 , 2 , 4 , 5 } ,
    for a total of F 12 symbols. From the received multicast messages and its cache content, each user k [ K ] can recover B k , and then compute B k from T k 1 B k .
The normalized load is ρ 2 = 1 8 + 1 12 = 5 24 , which conincides with (19).
In conclusion, the normalized load of the proposed scheme is ρ ach = min { ρ 1 , ρ 2 } = 5 24 , while the baseline scheme in (16) achieves the normalized load equals 25 72 .

4. Numerical Evaluations

We provide here some numerical evaluations on the performance of the proposed scheme in (17). In Figure 1a we consider the case ( K , λ ) = ( 6 , 1 / 15 ) and in Figure 1b the case ( K , λ ) = ( 6 , 1 / 10 ) . In Figure 2a we consider the case ( K , λ ) = ( 10 , 1 / 50 ) and in Figure 2b the case ( K , λ ) = ( 10 , 1 / 10 ) . From the figures, we observe that:
  • In both settings our proposed scheme in Theorem 1 outperforms the baseline scheme, as proved in Remark 5.
  • Fix K and μ . When λ grows, the gap between the proposed scheme and the baseline scheme reduces. When λ = 1 K , the proposed scheme and the baseline scheme have the same load; this is because at the corner points of the proposed scheme in (26) we achieve the load 1 μ which is the same as the baseline scheme.
  • In addition, we also plot the cache-aided scalar linear function retrieval scheme in (14), which only works for the case where the demand matrices are with the form in (12). This comparison shows that, if the demand matrices are structured, we can design caching schemes that leverage the special structure of the demands to achieve a load that is no larger than the load for the worst-case demands. Moreover, the more the structure the more the gain compared to in (17).

5. Conclusions

In this paper, we formulated the cache-aided general linear function retrieval problem, where each user requests some linear combinations of all the symbols in the library. The formulated problem generalizes the cache-aided scalar linear function retrieval problem. We proposed a novel scheme that strictly improves on an uncoded caching baseline scheme. Further directions include designing improved coded caching schemes for arbitrary users’ demand ranges (the setting considered here), as well as for given specific users’ demand ranges. In addition, the derivation of a converse bound is also part of on-going work.

Author Contributions

Conceptualization, K.W., H.S., M.J., D.T., and G.C.; methodology, K.W., H.S., M.J., D.T., and G.C.; writing—original draft preparation, K.W.; writing—review and editing, K.W., H.S., M.J., D.T., and G.C.; funding acquisition, H.S., M.J., D.T., and G.C. All authors have read and agreed to the published version of the manuscript.

Funding

The work of K. Wan and G. Caire was partially funded by the European Research Council under the ERC Advanced Grant N. 789190, CARENET. The work of H. Sun was supported in part by NSF Award 2007108. The work of M. Ji was supported in part by NSF Awards 1817154 and 1824558. The work of D. Tuninetti was supported in part by NSF Award 1910309.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Proof of Theorem 1

By a grouping strategy, we can achieve the normalized memory-load points in (26). In the following, inspired by Example 1, we introduce a general interpolation method among the points in (26).
We let Mod ( b , a ) represent the modulo operation on b with integer divisor a and we let Mod ( b , a ) { 1 , , a } (i.e., we let Mod ( b , a ) = a if a divides b).

Appendix A.1. g [ K 1 ] and α g K g λ

We first consider the case where g [ K 1 ] and α g K g λ . Recall that μ = α g 1 g + ( 1 α ) g g + 1 > g 1 g . In this case, we directly use the caching scheme in (26) for the memory size g 1 g with achieved normalized load
min K g λ , 1 g = K g λ ,
which coincides with (17).

Appendix A.2. g [ K 1 ] and α g K g λ

We then focus on the case where g [ K 1 ] and α g K g λ .
Placement Phase. The placement is done by the memory-sharing between the proposed placements in (26) for M 1 = g 1 g and M 2 = g g + 1 . We divide w into two parts, w = [ w 1 ; w 2 ] where the dimension of w 1 is α F × 1 and the dimension w 2 is ( 1 α ) F × 1 .
For the first part, we further partition w 1 into g non-overlapping and equal-length subfiles, w 1 = [ w T 1 : T [ g ] , | T | = g 1 ] , where the dimension of each subfile w T 1 is α F g × 1 . Each user k [ K ] caches w T 1 where T [ g ] , | T | = g 1 , and Mod ( k , g ) T .
For the second part of each file, we further partition w 2 into g + 1 non-overlapping and equal-length subfiles, w 2 = [ w T 2 : T [ G + 1 ] , | T | = g ] , where the dimension of each subfile w T 2 is ( 1 α ) F g + 1 × 1 . Each user k [ K ] caches w T 2 where T [ g + 1 ] , | T | = G , and Mod ( k , g + 1 ) T .
In total, each user caches
( g 1 ) α F g + g ( 1 α ) F g + 1 = μ F
symbols, satisfying the memory size constraint.
Delivery Phase. For each T 1 [ g ] where | T 1 | = g 1 , we define D k , T 1 as the sub-matrix of D k which contains the columns corresponding to the symbols in w T 1 1 . In addition, for each T 2 [ g + 1 ] where | T 2 | = g , we define D k , T 2 as the sub-matrix of D k which contains the columns corresponding to the symbols in w T 2 2 .
We can express the demand of user k [ K ] as
D k w = T 1 [ g ] : | T 1 | = g 1 D k , T 1 w T 1 1 + T 2 [ g + 1 ] : | T 2 | = g D k , T 2 w T 2 2 = T 1 [ g ] : | T 1 | = g 1 , Mod ( k , g ) T 1 D k , T 1 w T 1 1 + T 2 [ g + 1 ] : | T 2 | = g , Mod ( k , g + 1 ) T 2 D k , T 2 w T 2 2
+ D k , [ g ] \ { Mod ( k , g ) } w [ g ] \ { Mod ( k , g ) } 1 + D k , [ g + 1 ] \ { Mod ( k , g + 1 ) } w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 .
It can be seen that user k knows all the terms in (A4) except
B k : = D k , [ g ] \ { Mod ( k , g ) } w [ g ] \ { Mod ( k , g ) } 1 + D k , [ g + 1 ] \ { Mod ( k , g + 1 ) } w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 .
Hence, in the delivery phase user k should recover B k . We then propose two solutions for this objective.
The solution that achieves ρ 1 in (18). We let user k recover
B k , 1 : = D k , [ g ] \ { Mod ( k , g ) } w [ g ] \ { Mod ( k , g ) } 1 ,
B k , 2 : = D k , [ g + 1 ] \ { Mod ( k , g + 1 ) } w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 .
For the first term B k , 1 , the dimension of D k , [ g ] \ { Mod ( k , g ) } is λ F × α F g and D k , [ g ] \ { Mod ( k , g ) } is known by each user. Recall that in this case we have α F g λ F . Hence, we let user k directly recover w [ g ] \ { Mod ( k , g ) } 1 . Thus in the delivery phase, we let the server transmit
i [ g ] w [ g ] \ { i } 1 ,
with α F g symbols. It can be seen that each user k [ K ] desires w [ g ] \ { Mod ( k , g ) } 1 and caches all the other terms in (A8), such that user k can recover w [ g ] \ { Mod ( k , g ) } 1 .
For the second term B k , 2 , the dimension of D k , [ g + 1 ] \ { Mod ( k , g + 1 ) } is λ F × ( 1 α ) F g + 1 . Notice that B k , 2 only contains linear combinations of the second parts of files in the library. For the second part of each file, the users in
G i 2 = { k [ K ] : Mod ( k , g + 1 ) = i }
cache the same content, where i [ g + 1 ] . Thus we can use the proposed delivery scheme in (26). More precisely, for each i [ g + 1 ] , we generate a virtual user v i with the demand
D i w [ g + 1 ] \ { i } 2 = D G i 2 ( 1 ) , [ g + 1 ] \ { i } D G i 2 ( 2 ) , [ g + 1 ] \ { i } D G i 2 ( | G i 2 | ) , [ g + 1 ] \ { i } w [ g + 1 ] \ { i } 2 .
Notice that the dimension of D i is | G i 2 | λ F × ( 1 α ) F g + 1 . So virtual user v i only needs to recover at most min K g + 1 λ , 1 α g + 1 F symbols in (A9). We denote the set of these symbols by P i , [ g + 1 ] \ { i } , which is known by all the other virtual users. We then let the server transmit
i [ g + 1 ] P i , [ g + 1 ] \ { i } ,
with min K g + 1 λ , 1 α g + 1 F symbols, such that each virtual user can recover its demand.
In total, the server transmits
α F g + min K g + 1 λ , 1 α g + 1 F = ρ 1 F
symbols, which coincides with (18).
The solution that achieves ρ 2 in (19). Recall that the demanded sum of user k is
B k = D k , [ g ] \ { Mod ( k , g ) } w [ g ] \ { Mod ( k , g ) } 1 + D k , [ g + 1 ] \ { Mod ( k , g + 1 ) } w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2
= D k , [ g ] \ { Mod ( k , g ) } D k , [ g + 1 ] \ { Mod ( k , g + 1 ) } w [ g ] \ { Mod ( k , g ) } 1 w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 .
We can take a linear transformations on B k as follows
B k = T k D k , [ g ] \ { Mod ( k , g ) } D k , [ g + 1 ] \ { Mod ( k , g + 1 ) } w [ g ] \ { Mod ( k , g ) } 1 w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 ,
where T k is full-rank with dimension λ F × λ F , and the bottom λ α g + F symbols in B k are some linear combinations of w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 (i.e., these linear combinations do not contain any term in w [ g ] \ { Mod ( k , g ) } 1 ). This is possible because B k contains λ F linear combinations of all symbols in [ w [ g ] \ { Mod ( k , g ) } 1 ; w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 ] , while w [ g ] \ { Mod ( k , g ) } 1 contains α F g symbols. Hence, we can re-express B k as
B k = B k , 1 min α F g , λ F × 1 B k , 2 λ α g + F × 1 .
The delivery phase is divided into two steps. In the first step, we first let each user k [ K ] recover B k , 1 . Notice that B k , 1 is the set of some linear combinations of the symbols in w [ g ] \ { Mod ( k , g ) } 1 w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 . w [ g ] \ { Mod ( k , g ) } 1 is known by any user j 1 [ K ] where Mod ( j 1 , g ) k ; w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 is known by any user j 2 [ K ] where Mod ( j 2 , g + 1 ) k . Assume that k = a k g + Mod ( k , g ) , where a k = k g 1 and Mod ( k , g ) [ g ] . In Appendix B, we prove the following lemma.
Lemma A1.
Each user k 1 = a k g + j where j [ g ] \ { Mod ( k , g ) } and k 1 [ K ] , caches both w [ g ] \ { Mod ( k , g ) } 1 and w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 .
For each i K g , we let the server transmit
j [ g ] : ( i 1 ) g + j K B ( i 1 ) g + j , 1 .
From Lemma A1, each user ( i 1 ) g + j knows all except B ( i 1 ) g + j , 1 such that it can recover B ( i 1 ) g + j , 1 . In this step, the server transmits K g min α g , λ F symbols.
In the second step, we then let each user k [ K ] recover B k , 2 , which contains linear combinations of w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 . We can use the same delivery scheme as we used to delivery the second term in the first solution (i.e., B k , 2 in (A7) which contains λ F linear combinations of w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 ). Here we do not repeat the scheme. Notice that B k , 2 contains λ α g + F linear combinations of w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 . Hence, in this step the server transmits min K g + 1 λ α g + , 1 α g + 1 F symbols.
After recovering B k , each user k [ K ] reconstructs
B k = T k 1 B k ,
and then recovers its demand.
In total, the achieved normalized load is
K g min α g , λ + min K g + 1 λ α g + , 1 α g + 1 = ρ 2 ,
coinciding with (19).

Appendix A.3. Proof of (20)

Finally, we focus on the case μ = α K 1 K + ( 1 α ) where α ( 0 , 1 ) . In this case, the proposed scheme is a direct extension from the proposed scheme in (25). More precisely,
  • we directly use the caching scheme in (25) for the memory size K 1 K with the achieved normalized load equal to λ .
  • In this case, the number of symbols which are not cached by user is α F K . Hence, we can let each user directly recover the uncached symbols with the achieved normalized load equal to α K .
This concludes the proof.

Appendix B. Proof of Lemma A1

Recall that k = a k g + Mod ( k , g ) , where a k = k g 1 and Mod ( k , g ) [ g ] . We focus on one user k 1 = a k g + j where j [ g ] \ { Mod ( k , g ) } . Since j = Mod ( k 1 , g ) Mod ( k , g ) , it can be easily seen that w [ g ] \ { Mod ( k , g ) } 1 is cached by user j. In the rest of this proof, we show that user j also caches w [ g + 1 ] \ { Mod ( k , g + 1 ) } 2 ; or equivalently, Mod ( k 1 , g + 1 ) Mod ( k , g + 1 ) .
We prove it by contradiction. Assume that Mod ( k 1 , g + 1 ) = Mod ( k , g + 1 ) = j . Hence, we can re-express k as k = a k ( g + 1 ) + j and re-express k 1 as k 1 = a k 1 ( g + 1 ) + j , where a k = k g + 1 1 and a k 1 = a k = k 1 g + 1 1 .
Since k = a k g + Mod ( k , g ) = a k ( g + 1 ) + j , we have
a k g = a k ( g + 1 ) + j Mod ( k , g ) .
In addition, we have
k 1 = a k g + j = a k 1 ( g + 1 ) + j
By taking (A17) into (A18), we have
a k g + j = a k 1 ( g + 1 ) + j
( ) a k ( g + 1 ) + j Mod ( k , g ) + j = a k 1 ( g + 1 ) + j
( a k a k 1 ) ( g + 1 ) = Mod ( k , g ) j .
Since Mod ( k , g ) [ g ] and j [ g ] , it can be seen that (A19) holds if and only if a k a k 1 = 0 , which leads to k = k 1 and contradicts with Mod ( k , g ) Mod ( k 1 , g ) . Hence, we proved that Mod ( k 1 , g + 1 ) Mod ( k , g + 1 ) and proved Lemma A1.

References

  1. Borst, S.; Gupta, V.; Walid, A. Distributed caching algorithms for content distribution networks. In Proceedings of the 2010 Proceedings IEEE INFOCOM, San Diego, CA, USA, 14–19 March 2010; pp. 1478–1486. [Google Scholar]
  2. Maddah-Ali, M.A.; Niesen, U. Fundamental Limits of Caching. IEEE Trans. Inf. Theory 2014, 60, 2856–2867. [Google Scholar] [CrossRef] [Green Version]
  3. Wan, K.; Tuninetti, D.; Piantanida, P. On the Optimality of Uncoded Cache Placement. In Proceedings of the IEEE Information Theory Workshop (ITW), Cambridge, UK, 11–14 September 2016. [Google Scholar]
  4. Wan, K.; Tuninetti, D.; Piantanida, P. An Index Coding Approach to Caching With Uncoded Cache Placement. IEEE Trans. Inf. Theory 2020, 2020. 66, 1318–1332. [Google Scholar] [CrossRef]
  5. Yu, Q; Maddah-Ali, M.A.; Avestimehr, S. The Exact Rate-Memory Tradeoff for Caching with Uncoded Prefetching. IEEE Trans. Inf. Theory 2018, 64, 1281–1296. [Google Scholar] [CrossRef]
  6. Yu, Q; Maddah-Ali, M.A.; Avestimehr, S. Characterizing the Rate-Memory Tradeoff in Cache Networks Within a Factor of 2. IEEE Trans. Inf. Theory 2019, 65, 647–663. [Google Scholar] [CrossRef]
  7. Wan, K.; Sun, H.; Ji, M.; Tuninetti, D.; Caire, G. On Optimal Load-Memory Tradeoff of Cache-Aided Scalar Linear Function Retrieval. arXiv 2020, arXiv:2001.03577. [Google Scholar]
  8. Wan, K.; Caire, G. On Coded Caching with Private Demands. IEEE Trans. Inf. Theory 2020. [Google Scholar] [CrossRef]
  9. Ji, M.; Caire, G.; Molisch, A.F. Fundamental Limits of Caching in Wireless D2D Networks. IEEE Trans. Inf. Theory 2016, 62, 849–869. [Google Scholar] [CrossRef] [Green Version]
  10. Yapar, C.; Wan, K.; Schaefer, R.F.; Caire, G. On the Optimality of D2D Coded Caching With Uncoded Cache Placement and One-Shot Delivery. IEEE Trans. Commun. 2019, 67, 8179–8192. [Google Scholar] [CrossRef] [Green Version]
  11. Yan, Q.; Tuninetti, D. Fundamental Limits of Caching for Demand Privacy against Colluding Users. arXiv 2020, arXiv:2008.03642. [Google Scholar]
  12. Yan, Q.; Tuninetti, D. Key Superposition Simultaneously Achieves Security and Privacy in Cache-Aided Linear Function Retrieval. arXiv 2020, arXiv:2009.06000. [Google Scholar]
  13. Shanmugam, K.; Ji, M.; Tulino, A.M.; Llorca, J.; Dimakis, A.G. Finite-Length Analysis of Caching-Aided Coded Multicasting. IEEE Trans. Inf. Theory 2016, 2016. 62, 5524–5537. [Google Scholar] [CrossRef] [Green Version]
  14. Wan, K.; Sun, H.; Ji, M.; Tuninetti, D.; Caire, G. Cache-Aided Matrix Multiplication Retrieval. arXiv 2020, arXiv:2007.00856. [Google Scholar]
  15. Bar-Yossef, Z.; Birk, Y.; Jayram, T.S.; Kol, T. Index Coding with Side Information. IEEE Trans. Inf. Theory 2011, 57, 1479–1494. [Google Scholar] [CrossRef]
  16. Lee, N.; Dimakis, A.G.; Heath, R.W. Index Coding with Coded Side-Information. IEEE Commun. Lett. 2015, 19, 319–322. [Google Scholar] [CrossRef] [Green Version]
  17. Jia, Z.; Jafar, S.A. Cross Subspace Alignment Codes for Coded Distributed Batch Computation. arXiv 2019, arXiv:1909.13873. [Google Scholar]
  18. Chang, W.; Tandon, R. On the Upload versus Download Cost for Secure and Private Matrix Multiplication. arXiv 2019, arXiv:1906.10684. [Google Scholar]
  19. Kakar, J.; Khristoforov, A.; Ebadifar, S.; Sezgin, A. Uplink-downlink tradeoff in secure distributed matrix multiplication. arXiv 2019, arXiv:1910.13849. [Google Scholar]
Figure 1. The shared-link cache-aided general linear function retrieval problem K = 6 . (a) λ = 1 15 , (b) λ = 1 10 .
Figure 1. The shared-link cache-aided general linear function retrieval problem K = 6 . (a) λ = 1 15 , (b) λ = 1 10 .
Entropy 23 00025 g001
Figure 2. The shared-link cache-aided general linear function retrieval problem K = 10 . (a) λ = 1 50 , (b) λ = 1 10 .
Figure 2. The shared-link cache-aided general linear function retrieval problem K = 10 . (a) λ = 1 50 , (b) λ = 1 10 .
Entropy 23 00025 g002
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wan, K.; Sun, H.; Ji, M.; Tuninetti, D.; Caire, G. Cache-Aided General Linear Function Retrieval. Entropy 2021, 23, 25. https://doi.org/10.3390/e23010025

AMA Style

Wan K, Sun H, Ji M, Tuninetti D, Caire G. Cache-Aided General Linear Function Retrieval. Entropy. 2021; 23(1):25. https://doi.org/10.3390/e23010025

Chicago/Turabian Style

Wan, Kai, Hua Sun, Mingyue Ji, Daniela Tuninetti, and Giuseppe Caire. 2021. "Cache-Aided General Linear Function Retrieval" Entropy 23, no. 1: 25. https://doi.org/10.3390/e23010025

APA Style

Wan, K., Sun, H., Ji, M., Tuninetti, D., & Caire, G. (2021). Cache-Aided General Linear Function Retrieval. Entropy, 23(1), 25. https://doi.org/10.3390/e23010025

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop