Some New Coded Caching Schemes With Smaller Subpacketization via Some Known Results

Coded caching is widely regarded as an important tool to reduce pressure on the data transmission during the peak trafﬁc times in heterogeneous wireless networks. In this paper, we will provide two concatenating constructions of coded caching schemes based on the schemes derived by Shangguan et al. in 2018 and Yan et al. in 2017, respectively. Then we show that our new schemes have good performance in reducing packet number. Furthermore, in some case, we present that our schemes have better performances on user number, memory ratio, packet number and transmission rate than the schemes obtained by Chittoor et al. in 2019 and Krishnan in 2018.


I. INTRODUCTION
The demand for high-definition video streaming services such as YouTube and Netflix is driving the rapid growth of Internet traffic. In order to mitigate the effect of this increased load on the underlying communication infrastructure, content delivery networks deploy storage memories or caches throughout the network.
Caching is an effective approach to reduce pressure on the data transmission during the peak traffic times in heterogeneous wireless networks by storing contents into memories across the network during the off-peak traffic times. Maddah-Ali and Niesen in [14] introduced coded caching scheme, which is applied in many fields due to its advantage in reducing congestion during the peak traffic times (see [8]- [10], [13], [14], [16], and references therein).
Most studies focus on a centralized (K , M , N ) caching system [14], where a central server coordinates all the transmissions. The server hosting a collection of N files is connected through an error-free broadcast link to K users, each of them has a cache memory of size M files. In a coded caching scheme, there are two phases called the placement phase during off-peak times and the delivery phase during The associate editor coordinating the review of this manuscript and approving it for publication was Jose Saldana . peak times. In the placement phase, all the user caches store content related to the N files. Most importantly, this is done without any prior knowledge of user requests. In the delivery phase, each user requests one of the N files from the server. Based on the requests and the stored contents of the user caches during the placement phase, the server transmits coded packets of a length of at most R files over the broadcast link to the users. Using the contents of its cache and the received coded transmissions from the server, each user could reconstruct its requested file. Formally, denote the N files by W = {W 1 , W 2 , · · · , W N } and the K users by K = {1, 2, · · · , K }. An F-division (K , M , N ) coded caching scheme consists of two phases: • Placement Phase: For any 1 ≤ n ≤ N , the file W n is divided into F equal packets, i.e., W n = {W n,j : j = 1, 2, · · · , F}. For any 1 ≤ k ≤ K , denote the set of packets cached by user k as Z k , where the size of Z k is less than or equal to M .
• Delivery Phase: User k, 1 ≤ k ≤ K , requests one file from W, denoted by W d k . Once the server received the users' request d = (d 1 , d 2 , · · · , d K ), it broadcasts XOR of packets with the size at most R d F packets to users. Finally, user k, 1 ≤ k ≤ K , can recover its requested file W d k with the help of received signal and the packets in its caches Z k .   Denote the maximum transmission amount among all the requests during the delivery phase by R, i.e., R is always called the rate of a coded caching scheme, which is preferable as small as possible.

A. PRIOR WORK
In this paper, we will pay our attention to the centralized coded caching schemes which many works focus on, for instances, [1], [2], [7], [12], [14], [17], [24]- [28] etc. The packet number F is one of the most important parameters in such schemes as F is finite in practice and the complexity of a coded caching scheme increases when F increases. Maddah-Ali and Niesen [14] introduced the first deterministic coded caching scheme for an F-division (K , M , N ) coded caching scheme with F = K KM /N , where KM /N is an integer. Obviously, the packet number F = K KM /N increases too quickly with K to be used in practice when K is large. There are some works paid attention to coded caching schemes with lower subpacketization level, for instances, [5], [11], [18], [20], [21], [26], [27] etc.
In this paper, we focus on the deterministic schemes when K < N . In [21], the authors pointed out that all the deterministic coded caching schemes can be recast into placement delivery array (PDA) introduced by Yan et al. [26] when K ≤ N . This implies that PDA is a good tool to construct coded caching schemes. By means of PDA, Cheng et al. [4] generalized the constructions in [18] and [26], and obtained some schemes with more flexible memory size where F is minimum for fixed R. We list these schemes and the schemes from [5], [11] . We also list some latest coded caching schemes in TABLE 2, which are given by Chittoor et al. [6]. From TABLE 2, the packet numbers of the schemes in [14] and [26] increase exponentially with the user numbers, while the rates of such schemes are optimal and asymptotically optimal, respectively. The packet number of the scheme in [27] increases exponentially, polynomially and linearly with the user numbers when the parameter a increases. The packet number of the scheme in [2] increases linearly with the user number. In [27] and [2] the authors further reduced the packet numbers by increasing rates respectively.
Clearly, we would like to construct a coded caching scheme with F as small as possible for fixed parameters K , M /N and R. In fact, we can also construct a coded caching scheme with K as large as possible for fixed parameters F, M /N and R. Concatenating construction is naturally studied when we construct a scheme with large number of users. Furthermore, given the parameters F, M /N , R, some concatenating constructions of PDAs with large number of users (i.e., large number of columns) have been studied. The first one is called grouping method [19]. Cheng et al. in [3] generalized the grouping method. We should point out that sometimes the new schemes obtained by generalized grouping method in [3] have better performances than the scheme directly constructed. For example, from TABLE 2 in [11], the authors listed a scheme with K = 63, M N = 16 21 , F 1 = 651 and R 1 = 15 7 when k = 6, t = 1, q = 2, and m = 3. From Lemma 3 in Section II, we have a (K 1 = 42, 84, 64, 105) PDA when (m, q, z) = (1,21,16). Applying Lemma 4 in Section II with the above PDA and K = 63, we have a = R 1 and F 2 = 168 < 651 = F 1 . From the above discussions, grouping method is an efficient way to reduce the packet number. However, in the grouping method, since all the users are divided into several groups with equal size and each group of users uses the same scheme, the resulting scheme has the same coded gain as the original scheme. The interested reader is referred to [3], [19] for more details. There are other results by means of concatenating constructions such as [15], [22], and so on.

B. CONTRIBUTIONS
In this paper, we will propose concatenating constructions such that the coded gain of the new scheme is lager than that of the original scheme, while the cache size increase slowly. We list the new classes of schemes in TABLE 3.
In Subsection III-C, we will show that our schemes include the scheme with M N = 1 − ( q−1 q ) t from [18] and the scheme with M N = 1 q from [26] as special cases. Furthermore, our schemes have larger user number and smaller packet number than the schemes in [4] which are listed in Lines 2 and 3 of TABLE 1, while having larger transmission rate than those schemes in [4]. We also show that the new schemes have smaller packet number than the schemes in [5] and [11] by some examples.
The rest of this paper is organized as follows. We firstly introduce the relationship between coded caching scheme and PDA in Section II. Then two classes of the schemes in Theorems 1 and 2 are derived in Section III, and their detailed performance analyses are proposed in Section IV. Finally, we conclude the paper in Section V.

II. PLACEMENT DELIVERY ARRAY FOR CODED CACHING SCHEME
In this section, we will show the relationship between coded caching scheme and placement delivery array, which introduced by Yan et al. in [26].
Definition 1: ( [26]) Suppose that K , F, Z and S are positive integers. P = (p i,j ), 1 ≤ i ≤ F, 1 ≤ j ≤ K , is an F × K array composed of a specific symbol '' * " and positive integers 1, 2, · · · , S, Then P is a (K , F, Z , S) placement delivery array (PDA for short) if C1. the symbol '' * " occurs exact Z times in each column; C2. each integer appears at least once in the array; C3. for any two distinct entries p i 1 ,j 1 and p i 2 ,j 2 , p i 1 ,j 1 = p i 2 ,j 2 = s is an integer only if a. i 1 = i 2 , j 1 = j 2 , i.e., they lie in distinct rows and distinct columns; and b. p i 1 ,j 2 = p i 2 ,j 1 = * , i.e., the corresponding 2 × 2 subarray formed by rows i 1 , i 2 and columns j 1 , j 2 must be of the following form s * * s or * s s * . Algorithm 1 Caching Scheme Based on PDA in [26] 1: procedure Placement(P, W)
During the off-peak traffic times, i.e., the placement phase, from Line 2, for any n ∈ [1,4], divide each file W n into F = 4 packets, i.e., According to Lines 3-5, user k, 1 ≤ k ≤ 4, caches the packets in Z k , where During the peak traffic times, i.e., the delivery phase, suppose the request vector is d = (1, 2, 3, 4). From Lines 8-10, we can obtain the transmitting process as following: Intuitively, in a (K , F, Z , S) PDA P, p i,j = * implies that user j has already cached the packets indexed by i of all the files in the server; p i,j = s for a certain integer s implies VOLUME 8, 2020 that all the packets indexed i of all the files are not stored by user j. Hence the server should find out all the entries The property of the PDA guarantees all the users can get the requested files.
From Lemma 1, in order to obtain an F-division (K , M , N ) coded caching scheme, one only need to construct an appropriate PDA. The following schemes, which are listed in TABLE 1, are the latest results on PDAs having good advantages on packet number or transmission rate.
Lemma 2: ( [4]) Suppose that q, z, m and t are positive integers with q ≥ 2, q > z and m > t. Then there exists an ( m t q t , (This is the scheme in the third row of TABLE 1) In order to fit for large number of users, a generalization of grouping method was proposed by Cheng et al.,in [3]. That is, given a PDA which can realize a scheme with K 1 users and memory ratio M /N , one can obtain a PDA which can realize a scheme with any number of users K ≥ K 1 and the same memory ratio M /N . Lemma 4 (Generalizing Grouping Method [3]): Suppose there exists a (K 1 , F, Z , S) PDA. Then, for any

III. CONSTRUCTIONS
In this section, we first introduce the characterizations of the previously known concatenating constructions. Then we propose the main idea of our concatenating method. Finally, based on the original PDAs in [18] and [26], we obtain two new classes PDAs.

A. RESEARCH MOTIVATION
It is well known that grouping method, which was proposed by Shanmugam et al. in [19], is an effective method for reducing packet number. The authors in [19] obtained new PDAs from known PDAs in the following way: regard each column of the original PDA as an entirety and then combine these entries in a new array. Here we sketch the grouping method by the following useful notation. For any array where a + * = * . Given a (K , F, Z , S) PDA P , the authors obtained an (mK , F, Z , mS) PDA P = (P , P + S, P + 2S, . . . , P + (m − 1)S).
From the process of a coded caching scheme generated by a PDA, in each time slot s, the coded gain equals the number of occurrences of the integer s in the PDA. Clearly the number of occurrences of each integer in P is the same as that of P . This implies that the coded gain of the schemes generated by the constructions in [19] is the same as that of the schemes generated by the original PDAs.

B. MAIN IDEA AND A RELATED EXAMPLE
From the above introduction, it is interesting to design new concatenating constructions satisfying the following conditions: • the number of '' * "s increases slowly; • the number of occurrences of each integer in the resulting PDA is larger than that of the original PDA.
In this paper, we will give such a concatenating construction. Our main idea is as follows.
• Given a (K , F, Z , S) PDA P, one can replace x integer entries of each column in P by '' * "s, and derive a (K , F, Z + x, S ) PDA P .
• Construct a (K + K , F, Z + x, S ) PDA (P , P ). With the number of '' * "s in each column increasing, one has a good chance to add a well-designed F × K array P to P without increasing the number S , such that each column of P has the same memory ratio as the columns of P .
Obviously, in this case we should consider the structure features of original PDAs. So such a method is not fit for all the PDAs. In fact, the following PDAs from [18] and [26] can be used as the original PDA of our new concatenating construction.
Lemma 5: ( [18]) Suppose that q, t and m are positive integers with q ≥ 2 and m ≥ t. Then there exists an ( m In the following subsection, we will propose a new PDA with Z F = 1 − ( q−z q ) t and a new PDA with Z F = z q for any z ∈ [1, q) based on the PDA with Z F = 1 − ( q−1 q ) t from [18] and the PDA with Z F = 1 q from Lemmas 5 and 6 respectively. Let us take an example to show our specific method. 86308 VOLUME 8, 2020 Example 2: Given a (6,9,3,18) PDA as follows.
Obviously, comparing with P, the number of '' * "s in each column of P increases. This implies that we have an opportunity to design a desired array P by using the symbols in P . In our construction, we construct such an array based on P , i.e., for each i ∈ [0, 2], Add P to P , we have a (12,9,6,9) PDA, i.e., In this subsection, we formally introduce our constructions. In order to show our constructions, the parameters K , F, Z and S of a PDA will be represented by q-ary sequences. Construction 1: Suppose that q, z, m and t are positive integers with 0 < z < q and 0 < t < m. Let and where X β i ,z = {β i , β i −1, . . . , β i −(z−1)} q and the operations are performed modulo q. Theorem 1: Suppose that q, z, m and t are positive integers with 0 < z < q and 0 < t < m. Then the array P t,m,q,z given in (3) is an m The proof of Theorem 1 can be found in Appendix A. Construction 2: If t = 1, from (1), we can obtain Construct an array H m,q,z = (P, C) as follows.
• P = (p a,b ), a ∈ F, b ∈ K, is the q m × mq q−1 q−z array derived by Construction 1. (c a,b ), a ∈ F, b ∈ K 1 is a q m × q array define as follows.

IV. PERFORMANCE ANALYSES
In this section, we compare our new constructions with schemes obtained by generalizing grouping method from Lemma 4 and the schemes from [5], [11] which are the most latest results.

A. COMPARISON OF THE SCHEMES FROM THEOREM 1 AND GENERALIZING GROUPING METHOD
Suppose that m, t, q and z are positive integers satisfying m > t and q > z. We compare performances of the scheme from Theorem 1 and the scheme generated by generalizing grouping method based the original scheme from Lemma 2. From Theorem 1, we have an ( m From Lemma 2, we have a (K 1 , F, Z , S) PDA where By (5) and (7) we have From the above formulas, we can see R G 1 = R Th1 and F G 1 ≥ F Th1 . This implies that if q−1 q−z > 1, Scheme 1 has the same user number, memory ratio and transmission rate while has smaller packet number than Scheme 2. We list some examples with (q, z) = (5, 3) in the following table. When t = 1, q = 5 and z = 3, according to (5) and (7), Similarly we can also compare performances of the scheme from Theorem 1 and the scheme generated by generalizing grouping method based the original scheme from Lemma 3.

B. COMPARISON OF THE SCHEMES FROM THEOREM 2 AND GENERALIZING GROUPING METHOD
Suppose that m, q and z are positive integers satisfying q > z. We now compare performances of the scheme from Theorem 2 and the scheme generated by generalizing grouping method based the original scheme from Lemma 3.
From Theorem 2, we have a (q(m q−1 q−z + 1), q m , zq m−1 , (q − z)q m ) PDA, which generates a (K , M , N ) scheme, say Scheme 3, with From Lemma 3, we have a (K 1 , F, Z , S) PDA where which generates a q−1 q−z q m -division ((m + 1)q, M , N ) coded caching scheme with M N = z q and rate R = (q − z)/ q−1 q−z . For any positive integer K > K 1 , from Lemma 4, we have a (K , h 1 F, h 1 Z , hS) PDA, which generates an h 1 F-division (K , M , N ) coded caching scheme, say Scheme 4, with M N = Z F and R = K . By (9), the parameters of Scheme 4 are: By (8) and (10), we have When gcd(m q−1 q−z + 1, m + 1) = 1, for instance, m + 1 is a prime power, Obviously, when m is large, R Th2 approximates to 1, and F G 2 is much larger than F Th2 . In such a case, Scheme 3 has the same user number, memory ratio and almost the same transmission rate while has much smaller packet number than Scheme 4. We list some examples with m = 20 in the following table.

V. CONCLUSION
In this paper, two concatenating constructions of coded caching schemes are obtained. Then we showed that our schemes can effectively reduce packet number. Furthermore, in some case, our schemes have better performances on user number, memory ratio, packet number and transmission rate than the schemes in [5] and [11]. The concatenating constructions in this paper are based on the PDAs in [18] and [26]. However, such constructions are not suitable for all the known PDAs. So it is interesting to give special concatenating constructions for some known PDAs, such that the coded gain of the new scheme is lager than that of the original scheme, while the cache size increase slowly.  = (s 0 , . . . , s γ i + s m+i + η i (q − z) + 1, · · · , s m−1 ) q and b = (β 0 , β 1 , . . . , β t−1 , γ 0 , γ 1 , . . . , γ t−1 , η 0 , . . . , η t−1 ) We only need to consider the following cases, where all the operations are performed modulo q.
-If a = a , which implies s appears in the row a at least twice, then α γ i = α γ i . According to (13) and (14), we can obtain This implies that Since s m+i ∈ [0, q − z) and η i ∈ [0, q−1 q−z ), then i.e., s m+i +η i (q−z)+1 < q, a contradiction to (15). Hence s occurs at most once in each row. So C3-a) holds.
Together with (17), we have If η i < η i , we have Since 0 ≤ η i , η i < q−1 q−z and 1 ≤ j, s m+i < q − z, we have This implies s m+i + 1 = (η i − η i )(q − z) + j, a contradiction to (19). That is the subcase η i > η i is impossible. If η i > η i , (18) can be written as And s m can get every value in {0, . . . , q − z − 2, q − z − 1} q when m−1 k=0 α k goes through [0, q) \ Y β,z . So the alphabet of C is also S. From the above discussions, we know that S = (q − z)q m .
We only need to consider the following cases, where all the operations are performed modulo q.