I Introduction
The increase in wireless data traffic necessitates the role of broadcast communication, where a single server is delivering information payloads to multiple clients at the same time. The network coding paradigm is especially useful in this regard, enabling the coding of information intended for multiple clients and delivering the coded information at once to all of them. Coded caching, which exploits network coding for the specific broadcast setting where each of the clients have local storage (called cache), was proposed in [1] and has emerged as a valuable technique to use the communication channel efficiently.
The coded caching scenario as in [1], consists of clients indexed by some set of size and possessing some cache, connected to a single server through an error free shared link. The library of files at the server consists of files of same size, which are denoted as . Each file consists of nonoverlapping subfiles of same size, where is known as the subpacketization level. The subfiles of are labelled as , ( is assumed to take values from abelian group) where is a set of size . The centralized coded caching framework consists of two phases : the placement phase and the delivery phase. In the placement phase (which occurs during off peak times), the communication channel is utilized so that each client stores some fraction of each file in the library in its cache ( being the parameter reflecting the cache size). In the delivery phase (during peak hours), the demands of the users pop up. In the coded caching paradigm, the server broadcasts coded transmissions such that the demands of all the users are satisfied. As in [1], the rate of the coded caching scheme is defined as the ratio of the number of bits transmitted to the size of each file, and can be calculated as
when each transmission is of the same size as any subfile.
Though the coded caching framework presented in [1] achieves an optimal rate, its exponential increase in subpacketization with respect to the number of users at constant is a major setback for its practical implementation. The scheme presented in [2] gives reduced subpacketization by using a combinatorial structure that designs both the placement and the delivery phase together, called as the Placement Delivery Array (PDA). This idea has been further extended in [3] by using strong edge coloring of an associated bipartite graph. In [4], resolvable designs derived from linear block codes have been used to reduce subpacketization. All of these schemes offered reductions in subpacketization as compared to [1], at the cost of some increase in the rate, for constant memory fraction . However, to the best of our knowledge, most of the schemes (for reasonable values of ) available in literature require subpacketization exponential in . A subpacketization subexponential in has been obtained in [5] using a line graph model for coded caching along with a projective geometry based scheme. For constant rate, the scheme in [5] achieves a subpacketization level of , however demanding that the uncached fraction, .
The first contribution of this work is to present a new binary matrix model for coded caching. In Section II, we introduce the concept of using a constant rowweight binary matrix for describing the coded caching scheme. We call these as caching matrices. The 1s in the binary matrix indicate uncached subfiles in the users. Identity submatrices of the caching matrix correspond to transmissions which enable the clients (involved in any transmission) to decode precisely one missing subfile each from that transmission. Thus, ‘covering’ the 1s in the caching matrix using identity submatrices provides a valid delivery scheme. The framework we present using binary matrices are closely (and obviously, as the reader shall see) related to the PDA schemes. However the advantage is that this viewpoint opens up a much larger space, viz. the space of all constant rowweight binary matrices, for searching for good caching schemes.
Following this, we use the binary matrix model for constructing novel caching schemes derived from a variety of combinatorial designs. Towards that end, Section III describes important terminologies related to combinatorial designs. In Sections VVIII, we elaborate on the construction of caching matrices using different combinatorial designs. In particular, we employ Steiner systems (designs with special properties), balanced incomplete block designs, and transversal designs, to construct caching matrices. When we employ existing designs from combinatorics literature to these constructions, the caching schemes which we get demand a low uncached fraction, i.e., . This is a disadvantage. However this disadvantage is traded off by a deep reduction in the rate as well as the subpacketization levels, with the schemes achieving a constant rate or even a rate that is , with subpacketization levels being . Section IV summarizes all our constructions and discusses the asymptotics of each. We end the paper in Section IX with some promising directions that can possibly help us to remedy the issue of high cache requirements at the users.
Notations and Terminology: For any positive integer , we denote by the set . For a set and some positive integer , we denote the set of all sized subsets of by . For a matrix whose rows are indexed by a finite set and columns are indexed by a finite set , the element in the row and column is denoted as . For sets denotes the elements in but not in . For some element , we also denote by .
Ii A binary matrix model for coded caching
In this section we describe how a coded caching scheme can be derived from a binary matrix with constant row weight.
Definition 1 (Caching Matrix).
Consider a matrix with entries from with rows indexed by a sized set and columns indexed by a sized set such that the number of ’s in each row is constant (say ). Then the matrix defines a caching scheme with users (indexed by ), subpacketization (indexed by ) and as follows:

User caches if and does not cache it if .
We then call the matrix as a  Caching Matrix.
A subfile is said to be missing at a user if it is not available at its cache. The demand of a user in the delivery phase is denoted by for some . In order to construct a transmission scheme, we first describe one transmission based on the above described matrix based caching scheme, which will serve a number of users. Note that a submatrix of can be specified by a subset of the row indices and a subset of column indices . We now define an identity submatrix of matrix .
Definition 2 (Identity Submatrix).
An submatrix of the matrix is an identity submatrix of size
if its columns correspond to the identity matrix of size
permuted in some way.Lemma 1.
Consider an identity submatrix of given by rows and columns , such that , while where . For each , the subfile is not available at user and can be decoded from the transmission .
Proof:
By definition of identity submatrix, for each the subfile is not available at user but is available at the users . Hence each user can decode the subfile which is not available at its cache from the transmission . ∎
We shall use Lemma 1 to describe the complete transmission scheme. For that purpose we introduce few more terminologies.
For a caching matrix , suppose for some and . The entry is said to be covered by the identity submatrix if and correspond to some row and column index of respectively.
Definition 3 (Identity Submatrix Cover).
Consider a set consisting of identity submatrices of a caching matrix such that any in is covered by atleast one such that . Then, is called an Identity Submatrix Cover of .
We now describe how an identity submatrix cover is used to form a transmission scheme.
Theorem 1.
Consider an identity submatrix cover of a caching matrix . Then the transmission corresponding to according to Lemma 1, is a valid transmission scheme (i.e the scheme satisfies all the user demands) for the caching scheme defined by and the rate of the transmission scheme, .
Proof:
Pick some arbitrary missing subfile of user . Then and this entry of will be covered by atleast one of the identity submatrices, say in since is an identity submatrix cover of . The transmission corresponding to the identity submatrix given by Lemma 1 will ensure that the subfile will be decoded by the corresponding user where it is missing. Hence, the transmissions corresponding to enables decoding of any arbitrary missing subfile. Since the number of identity submatrices in is , the rate of the transmission scheme is, . ∎
We also need the idea of an overlap between identity submatrices of , which enables us to prove some results in this paper.
Definition 4 (Overlap).
An overlap between identity submatrices occurs when some entry in matrix is covered by more than one identity submatrix of .
Iii introduction to Combinatorial designs
In the previous section, we have developed a binary matrix model for the caching problem. In sections VVIII, we will use combinatorial designs to construct caching matrices. For that purpose we first review some of the basic definitions related to designs and their constructions. For more details reader is referred to [6][7].
Definition 5 (Design ).
A design is a pair such that the following properties are
satisfied:
(D1). is a set of elements called points, and
(D2). is a collection (i.e., multiset) of nonempty subsets of called blocks.
We now define designs.
Definition 6 (designs).
Let and be positive integers such that . A design (or simply design) is a design such that the following properties are satisfied:
(T1). ,
(T2). Each block contains exactly points, and
(T3). Every set of distinct points is contained in exactly blocks.
Consider a nonempty such that . Then there are exactly
(1) 
blocks in that contain all the points in . It can also be shown that is the number of blocks in designs.
Example 1.
[Parametrized Constructions] A design with (i.e  design) is called a Steiner system and its existence is discussed in [8]. A construction of Steiner system for and is presented in [9]. Other general constructions for Steiner systems can be found in [7]. Here we use a specific construction.

A construction of Steiner system with parameters is presented in [6], where is a prime power such that .
In the following examples and some others in this paper, we drop the parentheses and the commas in writing the blocks explicitly (for instance block is written as ).
Example 2.
A 3(8,4,1) design (Steiner system)
.
Definition 7 (Balanced Incomplete Block Design).
Designs with are called Balanced Incomplete Block Designs, (BIBD) denoted as (, , )BIBD.
By (1) it follows that every (, , )BIBD has exactly blocks and, every point occurs in exactly
(2) 
blocks.
Example 3.
A (9,3,1)BIBD.
. The number of blocks are and each element in occurs exactly in blocks.
We now define Symmetric BIBD.
Definition 8 (Symmetric BIBD).
A BIBD in which (or, equivalently, ) is called a symmetric BIBD.
There are only finitely many nontrivial symmetric BIBDs with that are known [10]. As stated in [6], for any two blocks in a symmetric BIBD
(3) 
Example 4.
A symmetric BIBD
Example 5.
[Parametrized Constructions] Some constructions of BIBD known in literature are given below:

Symmetric BIBDs with parameters , , are constructed in [6] using a projective plane of order , where is a prime power such that .

BIBDs with parameters , , are constructed in [6] using an affine plane of order where, is a prime power such that .

A construction of symmetricBIBDs using affine resolvable BIBDs is presented in [11].
We now define Transversal Designs.
Definition 9 (Transversal Designs).
A transversal design of order or groupsize , blocksize , and index , denoted as , is a triple , where
(TD1). is a set of elements.
(TD2). is a partition of into sets (the groups), each of size .
(TD3). is a collection of sized subsets of (the blocks).
(TD4). Every pair of elements from is contained either in exactly one group or in exactly blocks, but not both.
Transversal designs in which , are denoted by TD. From the above properties, we see that = and each element of occurs in blocks for [12].
Example 6.
A TD design is given as follows.
.
Example 7.
[Parametrized Constructions] Some constructions of TD known in literature [6] are as follows:

A transversal design with parameters can be constructed using orthogonal arrays, where is a prime power such that .

A transversal design with parameters can be constructed using orthogonal arrays, where is a prime power such that .
We will use in some constructions the following idea of the incidence matrix of a design.
Definition 10 (Incidence Matrix).
Let () be a design where = and = . The incidence matrix of () is the binary matrix defined by the rule
Example 8.
Incidence Matrix for (7,3,1)BIBD is given below
Iv Summary of Results
Table IV summarizes all the caching parameters related to the coded caching schemes to be constructed from the various designs in the forthcoming sections. The parameters are based on those of the designs using which they are constructed. Applying the results of Table IV to the parameterized constructions of designs as given in Section III, we get the following results.
=1.0mm
Combinatorial Designs  
BIBD () Section V  
Symmetric BIBD () Section VI  
design () (Scheme ) Section VIIA  
design () (Scheme ) Section VIIB  
Transversal Design () Section VIII 
Iva Specific Constructions
IvA1 BIBDs
The parameters of the transmission scheme (described in Section V) for the constructions described in Example 5 are as follows:

Symmetric BIBDs with parameters , , will give a coded caching scheme with parameters , , Rate , .

BIBDs with parameters , , will give a coded caching scheme with parameters , , Rate , .
Note that for the above two schemes, we have , and while
IvA2 Steiner systems
For the constructions described in Example 1, the parameters of the transmission scheme presented in Section VII are as follows:
Scheme
designs with parameters , will give a coded caching scheme with parameters , , Rate , .
We note that for the above construction of the coded caching scheme, we have and
Scheme
designs with parameters , will give a coded caching scheme with parameters , , Rate , .
Observe that for this scheme, the parameters of the coded caching scheme , while rate is also
IvA3 Transversal Designs
The parameters of the transmission scheme (presented in Section VIII) for the constructions described in Example 7 are as follows:

A transversal design with parameters , will give a coded caching scheme with parameters , , Rate , .

A transversal design with parameters , will give a coded caching scheme with parameters , , Rate , .
For both of the above constructions, we have and
In the forthcoming sections, we provide constructions for caching schemes based on the above combinatorial designs. Each construction is contingent on the existence of the design of the considered type. In each such case, we define the caching matrix using the given design and obtain its parameters and based on the design parameters. We then define and prove an identity submatrix cover of the caching matrix based on the properties of the design. The format for the proof of the identity submatrix cover in each of the following constructions is the same, which we describe sequentially as follows.

We describe a method to pick a submatrix of the caching matrix, which we prove to be an identity submatrix in the following way.

We show that the submatrix has equal number of rows and columns.

We then show that each row and column of the submatrix has weight one.


We then show that the identity submatrices picked have no overlaps.

Finally we show that all the ’s of the caching matrix are covered by the collection of identity submatrices, thus proving that the collection forms an identity submatrix cover.
V BIBD (with ) based Coded Caching Scheme
Consider a ()BIBD . We order the elements in in some arbitrary way. For distinct , we say that if comes before in the ordering of . Let the elements in block be denoted as where . By (2), each element in will occur in blocks. Thus each row of the incidence matrix has weight . Therefore, (). Hence, the incidence matrix of design will give a caching matrix.
For , let . Note that , by the property of BIBD. In the next lemma, we describe a single identity submatrix of matrix .
Lemma 2.
For any , let us denote as where i.e is the element in the block . Consider the submatrix of whose columns are indexed by and rows are indexed by . Then is an identity submatrix of of size .
Proof:
Note that there are columns in submatrix of . Now we show that there are rows. Due to the fact that is a BIBD with , the elements only and does not lie in any other for any . Thus the elements for any . Hence, there are rows in .
Let us consider the row indexed by . Again by the property that , it holds in that the only column index corresponding to which there is a in the row indexed by is and no other column. Thus each row of has a single entry in some column.
Let be some arbitrary column of . Since only if , thus the column has a only in the row . Hence, is an identity submatrix of of size . ∎
In next two lemmas we will prove that there is no overlap between the identity submatrices and that these identity submatrices will cover all the entries where in matrix .
Lemma 3.
For distinct , there is no , with such that is covered by both and , where and are as defined in Lemma 2.
Proof:
Suppose is covered by both . By the definition of and , it implies that . Let the element and be present in and position of where . Therefore, , by our construction. But . This gives a contradiction. Hence, there is no which is covered by both and . ∎
Lemma 4.
The set of matrices forms an identity submatrix cover of .
Proof:
The total number of ’s in matrix is equal to the product of the number of ’s in each row and the number of rows, and thus equal to . For each (note that ), there exists an identity submatrix . From Lemma 2 and 3, we see that each identity submatrix is of size and no two such identity submatrices have overlaps. These identity submatrices will cover number of ’s in matrix which is equal to total number of ’s in . Hence, forms an identity submatrix cover of . ∎
We thus have the following theorem summarizing the caching scheme.
Theorem 2.
The incidence matrix of a () BIBD forms a caching matrix. Further there is a transmission scheme with rate .
Proof:
The parameters of the caching matrix have already been defined. By Lemma 2, 3 and 4, we have an identity submatrix cover consisting of identity submatrices. Hence in Theorem 1, and rate .
∎
Example 9.
Consider the BIBD as given in Example 8. We describe the identity submatrix (as per Lemma 2) corresponding to element ‘’ in . Element ‘’ is present in blocks . Then the columns of identity submatrix matrix are indexed by and rows are indexed by (since are the next elements present after ‘’ in blocks respectively) of matrix . Similarly, the identity submatrix corresponding to element ‘’ in has column indices and row indices as and respectively in matrix . In this manner, the submatrices , gives us a rate transmission scheme.
Vi Symmetric BIBD (with ) based Coded Caching Scheme
Consider a symmetric ()BIBD with nonrepeated blocks (i.e is a set, not a multiset). Let the blocks in the BIBD be denoted as . Consider a set containing items given by . Consider a binary matrix whose columns are indexed by elements of and rows are indexed by elements of . The matrix is defined by the rule
The number of rows and the number of columns in matrix are and respectively. Note that any occurs precisely in blocks (by (2)). Therefore, it follows that each row and column of matrix has a constant weight equal to and respectively. Hence, matrix gives a caching matrix. We now describe an identity submatrix of .
Lemma 5.
For each and such that , let be the blocks containing apart from . Consider the submatrix of whose columns are indexed by and rows are indexed by . Then, is an identity submatrix of of size .
Proof:
Clearly the number of rows and columns are . Fix some arbitrary row indexed by . Note that and there is precisely one other such that , since this is a BIBD with . Therefore the row contains a only in the column indexed by the unique such that .
Fix some arbitrary column indexed by . Thus . By (3), any two blocks intersect at points, so we must have some unique such that . Therefore, the column indexed by contains only in the row indexed by and no other row of submatrix . Hence, is an identity submatrix of of size .
∎
In the next two lemmas we will prove that there is no overlap between the identity submatrices and that these identity submatrices will cover all the entries where in matrix .
Lemma 6.
Any , will be covered by exactly one identity submatrix in the set where the identity submatrices are as defined in Lemma 5.
Proof:
Suppose is covered by some identity submatrix as defined in Lemma 5. Then by Lemma 5, it must be the case that and . Since , there is precisely one block apart from which contains . Thus we can choose and this is the only choice for . Hence, the entry is covered only by the identity submatrix . This completes the proof. ∎
Lemma 7.
The set of matrices forms an identity submatrix cover of .
Proof:
The total number of ’s in matrix is equal to the product of the number of ’s in each column and the number of columns, and thus equal to . Each (note that , occurs in blocks since is a symmetric BIBD. Thus by Lemma 5, corresponding to each , we get identity submatrices each of size . By Lemma 6, there is no overlap between any pair of identity submatrices among the set of all identity submatrices . Thus the number of ’s covered by all identity submatrices () which is equal to the total number of ’s in . Hence, forms an identity submatrix cover of . ∎
We now describe the following theorem summarizing the caching scheme.
Theorem 3.
The matrix of symmetric ()BIBD with non repeated blocks, forms a caching matrix. Further there is a transmission scheme with rate .
Proof:
The parameters of the caching matrix have already been defined. By Lemma 5, 6 and 7, we have an identity submatrix cover consisting of identity submatrices. Hence in Theorem 1, and rate .
∎
Example 10.
Consider the BIBD as given in Example 4. Let be an identity submatrix corresponding to element ‘’ in and block ‘’ in . Element ‘’ is present in blocks . Then by our construction, the columns of identity submatrix matrix are indexed by {} and rows are indexed by (i.e ) respectively of matrix . In this manner we can obtain an identity submatrix cover of using the matrices , which gives us a transmission scheme with rate .
Vii design based Coded Caching Schemes
We now describe two design based caching scheme.
Viia Scheme
Let denote a  design. Let the blocks in this design be denoted as where . We construct a binary matrix as follows.
Let the rows of be indexed by all the sized subsets of . Let the columns be indexed by . For some ,
the matrix is defined by the rule,
The number rows in matrix is . The number of columns in matrix is . The number of ’s in each row of is . Hence, the matrix gives a caching matrix.
In the next lemma we describe an identity submatrix of matrix . Towards that end, we need to denote a few sets. For some , define , i.e the set of blocks containing . By (1), . Denote by . For any , denote by the set , i.e the set of all sized subsets of .
Lemma 8.
For some and , consider the submatrix of whose rows are indexed by ( as defined above) and the columns are indexed by . Then is an identity submatrix of of size .
Proof:
Clearly, the number of columns in is . First note that the rows in are all distinct, i.e for . If not, note that . But this contradicts the fact that any  sized subset of occurs in only one block. Thus , and is a square matrix of size .
Now consider a row of indexed by for some particular . Suppose a column indexed by for some has a in the row indexed by . Then it means that . But there is precisely one block such that , which is precisely (as ). Thus each row of has only one entry which is .
Now, consider a column of indexed by for some . Suppose for some , the row indexed by has in the column indexed by . Then it must be that and hence . Once again, because of the property of design with , we have that (else , which is a contradiction). Hence, each column of has precisely only one entry that is . This proves the lemma. ∎
In the next two lemmas we will prove that there is no overlap between the identity submatrices and that these identity submatrices will cover all the entries where in matrix .
Lemma 9.
Any such that will be covered by exactly one identity submatrix of (as defined in Lemma 8).
Proof:
Let be covered by an identity submatrix of . As , we have that . By definition of in Lemma 8, we must first have . Further it must be that for some which contains . Therefore, , which means (as ). Hence the unique transmission which covers is where is such that is the unique set in . ∎
Lemma 10.
The set of matrices forms an identity submatrix cover of .
Proof:
The total number of ’s in is equal to the product of the number of ’s in each row and the number of rows, and thus equal to . The size of each identity submatrix is . Since we have an identity submatrix for each
Comments
There are no comments yet.