\section{Introduction}
\label{intro}
With smartphones, mobile applications and expanded connectivity, people are consuming more video content than ever. That increase in mobile video consumption is taking a toll on the internet, which has seen data traffic increase many-fold in a few years. However, the high temporal variability of on-demand video services leaves the network underutilized during off-peak hours. Utilizing the channel resources by employing low-cost cache memory to store contents at the user end during off-peak times is an effective way to ease the network traffic congestion in peak hours. In the conventional caching scheme, the users' demands are met by filling the caches during the placement phase (in off-peak hours without knowing the user demands) and by transmitting the remaining requested file contents in the uncoded form during the delivery phase (in the peak hours after knowing the user demands). In coded caching, introduced in \cite{MaN}, it was shown that by employing coding in the delivery phase, among the requested contents, it is possible to bring down the network load further compared to the conventional caching scheme. In \cite{MaN}, Maddah-Ali and Niesen consider a single server broadcast network, where the server is connected to $K$ users through an error-free shared link. The server has a library of $N$ files, and the user caches have a capacity of $M$ files, where $M\leq N$ (since each user is equipped with a dedicated cache memory, we refer to this network as the dedicated cache network). During the placement phase, the server stores file contents (equivalent to $M$ files) in the caches without knowing the user demands. In the delivery phase, each user requests a single file from the server. In the delivery phase, the server makes coded transmission so that the users can decode their demanded files by making use of the cache contents and the coded transmission. The goal of the coded caching problem is to jointly design the placement and the delivery phases such that the rate (the size of transmission) in the delivery phase is minimized. The scheme in \cite{MaN} achieved a rate $K(1-M/N)/(1+KM/N)$, which is later shown to be the optimal rate under uncoded placement \cite{YMA,WTP}. In \cite{CFL}, it was shown that by employing coding among the contents stored in the placement phase in addition to the coding in the delivery phase, a better rate-memory trade-off could be achieved. By using coded placement, further improvement in the rate was obtained by the schemes in \cite{AmG,TiC,Vil1,ZhT,Vil2}. The works in \cite{STC,WLG,WBW,GhR}, came up with different converse bounds for the optimal rate-memory trade-off of the coded caching scheme for the dedicated cache network.

Motivated by different practical scenarios, coded caching was extended to various network models, including multi-access networks \cite{HKD}, shared cache networks \cite{PUE} etc. In the multi-access coded caching (MACC) scheme proposed in \cite{HKD}, the number of users, $K$ was kept to be the same as the number of caches. Further, each user was allowed to access $r<K$ neighbouring caches in a cyclic wrap-around fashion. The coded caching scheme under the cyclic-wrap model was studied in \cite{ReK1,SPE,ReK2,MaR,SaR,CWLZC}. Those works proposed different achievable schemes, all restricted to uncoded cache placement. In \cite{NaR1}, the authors proposed a coded caching scheme with an MDS code-based coded placement technique and achieved a better rate-memory trade-off in the low memory regime compared to the schemes with uncoded placement. Further, by deriving an information-theoretic converse, the scheme in \cite{NaR1} was shown to be optimal in \cite{NaR2}. The MACC problem (in the cyclic wrap-around network) was studied by incorporating security and privacy constraints in \cite{NaR3,NaR4}. The first work that considered a multi-access network with more users than the caches is \cite{KMR}. The authors established a connection between MACC problem and design theory and obtained classes of MACC schemes from resolvable designs. The works in \cite{MKR1,DaR} also relied on design theory to obtain MACC schemes.

In this paper, we consider the combinatorial multi-access network model introduced in \cite{MKR2}, which consists of $C$ caches and $K=\binom{C}{r}$ users, where $r$ is the number of caches accessed by a user. The combinatorial MACC scheme presented in \cite{MKR2} achieves the rate $R=\binom{C}{t+r}/\binom{C}{t}$ at cache memory $M=Nt/C$, where $t\in\{1,2,\dots,C\}$. The optimality of that scheme under uncoded placement was shown in \cite{BrE}. In addition to that, in \cite{BrE}, the system model in \cite{MKR2} was generalized to a setting where more than one user can access the same set of $r$ caches. In \cite{ChR}, the authors addressed the combinatorial MACC problem with privacy and security constraints.

\begin{figure}[t]
	\captionsetup{justification = centering}
	\captionsetup{font=small,labelfont=small}
	\begin{center}
		\captionsetup{justification = centering}
		\includegraphics[width = 0.9\columnwidth]{network.eps}
		\caption{$(C,r,M,N)$ Combinatorial multi-access Network. }
		\label{network}
	\end{center}
\end{figure}

\subsection{Contributions}
In this paper, we study the combinatorial multi-access setting introduced in \cite{MKR2} and make the following technical contributions:
\begin{itemize}
	\item In \cite{MKR2}, the authors proposed a combinatorial MACC scheme that achieves the optimal rate under uncoded placement. However, in the scheme in \cite{MKR2}, a user get multiple copies of the same subfile from different caches that it accesses. In order to remove that redundancy, we introduce an MDS code-based coded placement technique. The coded subfiles transmitted in the delivery phase of our proposed scheme (Scheme 1) remain the same as the transmissions in the scheme in \cite{MKR2}. Thereby, our proposed scheme in Theorem \ref{thm:scheme1} achieves the same rate as the scheme in \cite{MKR2} at a lesser cache memory value. For every $M>N/C$, Scheme 1 outperforms the scheme in \cite{MKR2} in terms of the rate achieved.
	\item For $0\leq M\leq N/C$, Scheme 1 has the same rate as the scheme in \cite{MKR2}. Thus we present another achievability result for the combinatorial MACC scheme in Theorem \ref{thm:scheme2}. The new coding scheme (Scheme 2) achieves the rate $N-CM$ for $0\leq M\leq \frac{N-\binom{C-1}{r}}{C}$, which is strictly less than the optimal scheme with uncoded placement when the number of files with the server is no more than the number of users in the system. In effect, by employing coding in the placement phase, we brought down the rate (except at $M=N/C$) further compared to the optimal scheme under uncoded placement.
	\item We derive an information-theoretic lower bound on the optimal rate-memory trade-off of the combinatorial MACC scheme (Theorem \ref{lowerbound}). While deriving the lower bound, we do not impose any restriction on the placement phase. Thus, the lower bound is applicable even if the scheme employs coding in the placement phase. By using the derived lower bound, we show that Scheme 1 is optimal for higher values of $M$, specifically when $\frac{M}{N}\geq \frac{\binom{C}{r}-1}{\binom{C}{r}}$ (Theorem \ref{optimality1}). Further, we show that Scheme 2 is optimal when $N\leq \binom{C}{r}$ (Theorem \ref{optimality2}).

\end{itemize}

\subsection{Notations}
For a positive integer $n$, $[n]$ denotes the set $ \left\{1,2,\hdots,n\right\}$. For two positive integers $a,b$ such that $a\leq b$, $[a:b] = \{a,a+1,\hdots,b\}$. For two non-negative integers $n,m$, we have $\binom{n}{m} =\frac{n!}{m!(n-m)!}$, if $n\geq m$, and $\binom{n}{m}=0$ if $n<m$. Uppercase letters (excluding the letters $C,K,M,N$ and $R$) are used to denote random variables (the letters $C,K,M,N$ and $R$ are reserved for denoting system parameters). The set of random variables $\{V_a,V_{a+1},\dots,V_b\}$ is denoted as $V_{[a:b]}$. Calligraphic letters are used to denote sets. Further, for a set of positive integers $\mathcal{I}$, $V_{\mathcal{I}}$ represents a set of random variables indexed by the elements in $\mathcal{I}$ (for instance, $V_{\{2,4,5\}}=\{V_2,V_4,V_5\}$). Bold lowercase letters represent vectors, and bold uppercase letters represent matrices. The identity matrix of size $n\times n$ is denoted as $\mathbf{I}_n$. Further, $\mathbb{F}_q$ represents the finite field of size $q$. Finally, for a real number $z$, $(z)^+=\max(0,z)$.

The rest of the paper is organized as follows. Section \ref{system} describes the system model, and Section \ref{prelims} describes useful preliminaries. The main results on the achievability and converse are presented in Section \ref{main}. The proofs of the main results are given in Section \ref{proofs}.
\section{System Model and Problem Formulation}
\label{system}
The system model as shown in Fig. \ref{network} consists of a central server with a library of $N$ independent files, $W_{[1:N]}\triangleq \{W_1,W_2,\dots,W_N\}$, each of size 1 unit (we assume that 1 unit of a file is constituted by $f$ symbols from the finite field of size $q$)\footnote{We assume that $q$ is such that all MDS codes considered in this work exist over $\mathbb{F}_q$.}. There are $C$ caches, each with capacity $M$ units ($0\leq M\leq N$). i.e., each cache can store contents equivalent to $M$ files. There are $K$ users in the system, and each of them can access $r$ out of the $C$ caches, where $r<C$. We assume that there exists a user corresponding to any choice of $r$ caches from the total $C$ caches. Thus the number of users in the system is $K=\binom{C}{r}$. Further, each user is denoted with a set $\mathcal{U}$, where $\mathcal{U}\subset [C]$ such that $|\mathcal{U}|=r$. That is, a user is indexed with the set of caches that it accesses. In other words, user $\mathcal{U}$ has access to all the caches in the set $\mathcal{U}$. A system under the aforementioned setting is called the $(C,r,M,N)$ combinatorial multi-access network. The coded caching scheme under this model was introduced in \cite{MKR2}

The $(C,r,M,N)$ combinatorial MACC scheme works in two phases, the placement phase and the delivery phase. In the placement phase, the server populates the caches with the file contents. The cache placement is done without knowing the demands of the users. The placement can be either coded or uncoded. By uncoded placement, we mean that files are split into subfiles and kept in the caches as such, while coded placement means that coded combinations of the subfiles are allowed to be kept in the caches. The number of subfiles into which a file is split is termed the subpacketization number. The contents stored in cache $c$, $c\in [C]$, is denoted as $Z_c$. In the delivery phase, user $\mathcal{U}$ requests file $W_{d_\mathcal{U}}$ from the server, where $d_\mathcal{U}\in [N]$, and the demand vector $\mathbf{d} = (d_\mathcal{U}:\mathcal{U}\subset [C],|\mathcal{U}|=r)$. In the demand vector, we arrange the users (subsets of size $r$) in the lexicographic order. Corresponding to the demand vector, the server makes a transmission $X$ of size $R$ units. We assume that the broadcast channel from the server to the users is error-free. The non-negative real number $R$ is said to be the rate of transmission. Finally, user $\mathcal{U}$ should be able to decode $W_{d_\mathcal{U}}$ using transmission $X$ and the accessible cache contents $Z_c,c\in \mathcal{U}$. That is, for $\mathcal{U}\subset [C]$ such that $|\mathcal{U}|=r$
\begin{equation}
\label{decodability}
H(W_{d_\mathcal{U}}|Z_\mathcal{U},X)=0,
\end{equation}
where $Z_\mathcal{U} =\{Z_c: c\in \mathcal{U}\}$.
\begin{defn}
	For the $(C,r,M,N)$ combinatorial MACC scheme, a rate $R$ is said to be achievable if the scheme satisfies \eqref{decodability} with a rate less than or equal to $R$ for every possible demand vector. Further, the optimal rate-memory trade-off is
	\begin{equation}
	R^*(M) =\inf \{R: R \text{ is achievable}\}.
	\end{equation}
\end{defn}

\section{Preliminaries}
\label{prelims}
In this section, we discuss the preliminaries required for describing the coding scheme as well as the converse bound.
\subsection{Review of the combinatorial MACC scheme in \cite{MKR2}}
In the sequel, we describe the combinatorial MACC scheme presented in \cite{MKR2}. Here onwards, we refer to the scheme in \cite{MKR2} as the \textit{MKR scheme}.

In the placement phase, the server divides each file into $\binom{C}{t}$ non-overlapping subfiles of equal size, where $t\triangleq CM/N\in [C]$. Th subfiles are indexed with $t$-sized subsets of $[C]$. Therefore, we have, $W_n = \{W_{n,\mathcal{T}}:\mathcal{T}\subseteq [C],|\mathcal{T}|=t\}$ for all $n\in [N]$. The server fills cache $c$ as follows:
\begin{equation}
	Z_c = \left\{W_{n,\mathcal{T}}:\mathcal{T}\ni c, \mathcal{T}\subseteq [C],|\mathcal{T}|=t,n\in [N]\right \}
\end{equation}
for every $c\in [C]$. According to the above placement, the server stores $\binom{C-1}{t-1}$ subfiles of all the files in a cache. Thus, we have, $M/N =\binom{C-1}{t-1}/\binom{C}{t}=t/C$. Now, assume that user $\mathcal{U}$ demands file $W_{d_\mathcal{U}}$ from the server. In the delivery phase, the server makes coded transmissions corresponding to every $\mathcal{S}\subseteq [C]$ such that $|\mathcal{S}|=t+r$. The server transmission is as follows:
\begin{equation}
	\bigoplus_{\substack{\mathcal{U}\subseteq \mathcal{S}\\|\mathcal{U}|=r}} W_{d_\mathcal{U},\mathcal{S}\backslash \mathcal{U}}.
\end{equation}
Therefore, the number of coded subfiles transmitted is $\binom{C}{t+r}$, where each coded subfile is $1/\binom{C}{t}^{\text{th}}$ of a file size. Thus the rate of transmission is $\binom{C}{t+r}/\binom{C}{t}$.

Notice that user $\mathcal{U}$ gets subfile $W_{n,\mathcal{T}}$ for all $n\in [N]$ from the cache placement if $|\mathcal{U}\cap \mathcal{T}|\neq 0$. Now, let us see how does the user get subfile $W_{d_\mathcal{U},\mathcal{T}}$ if $|\mathcal{U}\cap \mathcal{T}|= 0$. Consider the transmission corresponding to the $(t+r)$-sized set $\mathcal{S}=\mathcal{U}\cup \mathcal{T}$. In the coded message
\begin{equation*}
	\bigoplus_{\substack{\mathcal{U}\subseteq \mathcal{S}\\|\mathcal{U}|=r}} W_{d_\mathcal{U},\mathcal{S}\backslash \mathcal{U}}=W_{d_\mathcal{U},\mathcal{T}}\oplus \bigoplus_{\substack{\mathcal{U'}\subseteq \mathcal{S}\\|\mathcal{U}'|=r\\\mathcal{U}'\neq \mathcal{U}}} W_{d_{\mathcal{U}'},\mathcal{S}\backslash \mathcal{U}'}.
\end{equation*}
user $\mathcal{U}$ has access to $W_{d_{\mathcal{U}'},\mathcal{S}\backslash \mathcal{U}'}$ for every $\mathcal{U}'\neq \mathcal{U}$, since $|\mathcal{U}\cap\mathcal{S}\backslash \mathcal{U}'|\neq 0$.  Therefore, user $\mathcal{U}$ can decode the demanded file $W_{d_\mathcal{U}}$.

\subsection{Maximum distance separable (MDS) codes \cite{MaS}}
An $[n,k]$ maximum distance separable (MDS) code is an erasure code that allows recovering the $k$ message/information symbols from any $k$ out of the $n$ coded symbols. Consider a systematic $[n,k]$ MDS code (over the finite field $\mathbb{F}_q$) generator matrix $\mathbf{G}_{k\times n} = [\mathbf{I}_k|\mathbf{P}_{k\times n-k}]$. Then, we have
\begin{align*}
[m_1,m_2,\dots,m_k,c_1,c_2,\dots,c_{n-k}]=[m_1,m_2,\dots,m_k]\mathbf{G}
\end{align*}
where the message vector $[m_1,m_2,\dots,m_k]\in \mathbb{F}_q^k$.

\subsection{Han's Inequality \cite{Han}}
To derive a lower bound on $R^*(M)$, we use the following lemma which gives an inequality on subset of random variables.
\begin{lem}[Han's Inequality \cite{Han}]
	\label{Entropy}
	Let $V_{[1:m]}=\{V_1,V_2,\dots,V_m\}$ be a set of $m$ random variables. Further, let $\mathcal{A}$ and $\mathcal{B}$ denote subsets of $[1:m]$ such that $|\mathcal{A}|=a$ and $|\mathcal{B}|=b$ with $a\geq b$. Then, we have
	\begin{equation}
	\frac{1}{\binom{m}{a}}\sum_{\substack{\mathcal{A}\subseteq [1:m] \\ |\mathcal{A}|=a}} \frac{H(V_{\mathcal{A}})}{a}\leq \frac{1}{\binom{m}{b}}\sum_{\substack{\mathcal{B}\subseteq [1:m] \\ |\mathcal{B}|=b}} \frac{H(V_{\mathcal{B}})}{b}
	\end{equation}
	where $V_{\mathcal{A}}$ and $V_{\mathcal{B}}$ denote the set of random variables indexed by the elements in $\mathcal{A}$ and $\mathcal{B}$, respectively.
\end{lem}
\subsection{Motivating Example}
\label{motex}
Even though the scheme in \cite{MKR2} is optimal under uncoded placement, with an example, we show that further reduction in rate is possible with the help of coded placement.
\begin{figure}[t]
	\captionsetup{justification = centering}
	\captionsetup{font=small,labelfont=small}
	\begin{center}
		\captionsetup{justification = centering}
		\includegraphics[width = 0.9\columnwidth]{example.eps}
		\caption{$(4,2,M,N)$ Combinatorial multi-access Network. }
		\label{examplefigure}
	\end{center}
\end{figure}

\begin{table*}[h!]
	\begin{center}

		\resizebox{0.8\linewidth}{!}{
			\begin{tabular}{|c|c|c|c|}
				\hline
				Cache 1 &Cache 2 &Cache 3 &Cache 4 \\
				\hline
				\hline
				$W_{n,12}; \forall n\in [6]$ & $W_{n,12}; \forall n\in [6]$ & $W_{n,13}; \forall n\in [6]$ & $W_{n,14}; \forall n\in [6]$\\

				$W_{n,13}; \forall n\in [6]$ & $W_{n,23}; \forall n\in [6]$ & $W_{n,23}; \forall n\in [6]$ & $W_{n,24}; \forall n\in [6]$\\

				$W_{n,14}; \forall n\in [6]$ & $W_{n,24}; \forall n\in [6]$ & $W_{n,34}; \forall n\in [6]$ & $W_{n,34}; \forall n\in [6]$\\
				\hline
			\end{tabular}
		}
		\caption{$(C=4,r=2,M=3,N=6)$: Cache contents \cite{MKR2}}
		\label{exampleplacement}
	\end{center}
\end{table*}

\begin{table*}[ht!]
	\begin{center}

		\resizebox{0.95\linewidth}{!}{
			\begin{tabular}{|c|c|c|c|}
				\hline
				Cache 1 &Cache 2 &Cache 3 &Cache 4 \\
				\hline
				\hline
				$W_{n,12}^{(1)}; \forall n\in [6]$ & $W_{n,12}^{(2)}; \forall n\in [6]$ & $W_{n,13}^{(2)}; \forall n\in [6]$ & $W_{n,14}^{(2)}; \forall n\in [6]$\\

				$W_{n,13}^{(1)}; \forall n\in [6]$ & $W_{n,23}^{(1)}; \forall n\in [6]$ & $W_{n,23}^{(2)}; \forall n\in [6]$ & $W_{n,24}^{(2)}; \forall n\in [6]$\\

				$W_{n,14}^{(1)}; \forall n\in [6]$ & $W_{n,24}^{(1)}; \forall n\in [6]$ & $W_{n,34}^{(1)}; \forall n\in [6]$ & $W_{n,34}^{(2)}; \forall n\in [6]$\\

				$W_{n,12}^{(2)}+W_{n,13}^{(2)}; \forall n\in [6]$ & $W_{n,12}^{(1)}+W_{n,23}^{(2)}; \forall n\in [6]$ & $W_{n,13}^{(1)}+W_{n,23}^{(1)}; \forall n\in [6]$ & $W_{n,14}^{(1)}+W_{n,24}^{(1)}; \forall n\in [6]$\\

				$W_{n,13}^{(2)}+W_{n,14}^{(2)}; \forall n\in [6]$ & $W_{n,23}^{(2)}+W_{n,24}^{(2)}; \forall n\in [6]$ & $W_{n,23}^{(1)}+W_{n,34}^{(2)}; \forall n\in [6]$ & $W_{n,24}^{(1)}+W_{n,34}^{(1)}; \forall n\in [6]$\\
				\hline
			\end{tabular}
		}
		\caption{$(C=4,r=2,M=2.5,N=6)$: Cache contents}
		\label{examplecodedplacement}
	\end{center}
\end{table*}

Consider the $(C=4,r=2,M=3,N=6)$ combinatorial multi-access network in Fig. \ref{examplefigure}. There are $\binom{4}{2}=6$ users in the system, each denoted with a set $\mathcal{U}$, where $\mathcal{U} \subset [C]$ such that $|\mathcal{U}|=2$. Let us first see the MKR scheme \cite{MKR2}, where the placement is uncoded. In the placement phase, the server divides each file into 6 non-overlapping subfiles of equal size. Further, each subfile is denoted with a set $\mathcal{T}$, where $\mathcal{T}\subset[C]$ such that $|\mathcal{T}|=2$. Thus, we have $W_n =\{W_{n,12},W_{n,13},W_{n,14},W_{n,23},W_{n,24},W_{n,34}\}$ for all $n\in [6]$. Note that, even though the subfile indices are sets, we omitted the curly braces for simplicity. The server populates the $k^{\text{th}}$ cache as follows:
\begin{equation*}
Z_k = \{W_{n,\mathcal{T}}: k\in \mathcal{T},\mathcal{T}\subset[C], |\mathcal{T}|=2\}.
\end{equation*}
The contents stored in the caches are given in Table \ref{exampleplacement}.
From the cache placement, user $\mathcal{U}$ has access to all the subfiles (of every file) except those indexed with 2-sized subsets of $[C]\backslash \mathcal{U}$. For example, user $\{12\}$ has access to all the subfiles except subfile $W_{n,34}$.

In the delivery phase, the users reveal their demands. Let $W_{d_\mathcal{U}}$ be the file demanded by user $\mathcal{U}$. Then the server transmits $W_{d_{12},34}+W_{d_{13},24}+W_{d_{14},23}+W_{d_{23},14}+W_{d_{24},13}+W_{d_{34},12}$. The claim is that all the users will get their demanded file from the above placement and delivery phases. For example, user $\{12\}$ has access to all the subfiles except subfile $W_{n,34}$. However, user $\{12\}$ can get $W_{d_{12},34}$ by subtracting the remaining subfiles from the transmitted message. Similarly, it can be verified that all the users will get their demanded files. Thus the rate achieved is 1/6. This achieved rate is, in fact, optimal under uncoded placement \cite{BrE}. Notice that every subfile is cached in two caches. For instance, subfile $W_{n,12}$ is cached in cache 1 and cache 2. Thus user $\{12\}$ who accesses those two caches get multiple copies of the same subfile. This leads to the question of whether we can do better than the MKR scheme.

Now, we employ a coded placement technique and achieve the same rate 1/6 at $M=2.5$. The coding scheme is described hereinafter. The server divides each file into 6 subfiles of equal size, and each subfile is indexed with a set $\mathcal{T}$, where $\mathcal{T} \subset [C]$ such that $|\mathcal{T}|=2$. Thus, we have  $W_n =\{W_{n,12},W_{n,13},W_{n,14},W_{n,23},W_{n,24},W_{n,34}\}$ for all $n\in [6]$. Further, each subfile is divided into 2 mini-subfiles both having half of a subfile size, we have $W_{n,\mathcal{T}} =\{W_{n,\mathcal{T}}^{(1)},W_{n,\mathcal{T}}^{(2)}\}$ for all subfiles. The cache placement is summarized in Table \ref{examplecodedplacement}. Each cache contains 5 mini-subfiles (3 uncoded and 2 coded mini-subfiles), each of size $1/12^{th}$ of a file size. Thus, the size of the caches is $2.5$.

Let $W_{d_\mathcal{U}}$ be the file demanded by user $\mathcal{U}$ in the delivery phase. Then the server transmits $W_{d_{12},34}+W_{d_{13},24}+W_{d_{14},23}+W_{d_{23},14}+W_{d_{24},13}+W_{d_{34},12}$. Notice that, this coded message is the same as the transmitted message in the MKR scheme. Thus the rate achieved is also the same as the MKR scheme, which is 1/6. Now, it remains to show that the users can decode their demanded files. Since our scheme follows the same delivery policy as the MKR scheme, it is enough to show that a user in our scheme can decode the subfiles, which are accessible for the corresponding user (user accessing the same set of caches) in the MKR scheme. Consider user $\mathcal{U}$ who accesses the cache $k$ for all $k\in \mathcal{U}$. Consider user $\{12\}$ accessing cache 1 and cache 2. The user gets $W_{n,12}^{(1)}$ from cache 1 and $W_{n,12}^{(2)}$ from cache 2, and thus it obtains the subfile $W_{n,12}=\{W_{n,12}^{(1)},W_{n,12}^{(2)}\}$ for all $n\in [6]$. Using $W_{n,12}^{(2)}$, the user can decode $W_{n,13}^{(2)}$ and $W_{n,14}^{(2)}$ from cache 1. Similarly, from cache 2, the subfiles $W_{n,23}^{(2)}$ and $W_{n,24}^{(2)}$ can be decoded using $W_{n,12}^{(1)}$. That means, user $\{12\}$ obtains the subfiles $W_{n,12},W_{n,13},W_{n,14},W_{n,23}$ and $W_{n,24}$ for every $n\in [6]$. From Table \ref{examplecodedplacement}, it can be verified that a user $\mathcal{U}$ gets all the subfile $W_{n,\mathcal{T}}$ such that $\mathcal{T}\cap \mathcal{U}\neq \phi$. Thus a user can decode the subfiles, which are accessible for the corresponding user in the MKR scheme in the placement phase. In essence, by employing a coded placement technique, we could achieve the same rate, but for a smaller cache memory value.

Next, we show that for the $(C=4,r=2,M=3,N=6)$ coded caching scheme, it is possible to meet all the user demands without the server transmission. In other words, for the $(C=4,r=2,M=3,N=6)$ coded caching scheme, rate $R=0$ is achievable. In the placement phase, each file is divided into 2 subfiles of equal size, $W_n=\{W_{n,1},W_{n,2}\}$ for all $n\in [6]$. Then encode $(W_{n,1},W_{n,2})$ with a $[4,2]$ MDS code generator matrix $\mathbf{G}_{2\times 4}$. Thus, we have the coded subfiles
\begin{equation*}
(C_{n,1},C_{n,2},C_{n,3},C_{n,4}) = (W_{n,1},W_{n,2})\mathbf{G}_{2\times 4}.
\end{equation*}
Then the server fills the caches as follows: $Z_1 = \{C_{n,1};n\in[6]\}$, $Z_2 = \{C_{n,2};n\in[6]\}$, $Z_3 = \{C_{n,3};n\in[6]\}$, and $Z_4 = \{C_{n,4};n\in[6]\}$. From this placement, one user gets two coded subfiles from the caches (one from each cache). Since, any two columns of matrix $\mathbf{G}$ are independent, users can decode all the files, without further transmissions.
\section{Main Results}
\label{main}
In this section, we present two achievability results for the $(C,r,M,N)$ combinatorial MACC scheme. Further, we derive an information-theoretic lower bound on the optimal rate-memory trade-off, $R^*(M)$.
\begin{thm}
	\label{thm:scheme1}
	Let $t\in [C-r+1]$. Then, for the $(C,r,M,N)$ combinatorial MACC scheme, the rate $\binom{C}{t+r}/\binom{C}{t}$ is achievable at cache memory
	\begin{equation}
	\label{thm1eqn}
		M=\begin{cases}
			N\left(\frac{t}{C}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{r-1}\frac{r-i}{r}\binom{r}{i-1}\binom{C-r}{t-r+i-1}\right); \text{if } t\geq r.\\
			N\left(\frac{t}{C}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{t-1}\frac{t-i}{r}\binom{r}{t-i+1}\binom{C-r}{i-1}\right); \text{if } t< r.
		\end{cases}
	\end{equation}
\end{thm}
Proof of Theorem \ref{thm:scheme1} is given in Section \ref{proof:thm1}. \hfill$\blacksquare$

In Section \ref{proof:thm1}, for the $(C,r,M,N)$ combinatorial MACC problem, we explicitly present a coding scheme making use of coded placement. As we have seen in the example in Section \ref{motex}, coding in the placement phase helps to avoid redundancy in the cached contents (accessed by a user) in the MKR scheme \cite{MKR2}. The parameter $t$ in the MKR scheme represents the number of times the entire server library is duplicated among the caches. So, when $t=1$, there is no duplication in cached contents. Thus, performance improvement by coding is available when $t>1$. Further, the placement phase of the MKR scheme is independent of $r$, whereas our scheme takes $r$ into consideration during the cache placement. Also, our scheme needs to divide each file into $\tilde{r}!\binom{C}{t}$, where $\tilde{r}=\min(r,t)$. At the same time, the MKR scheme needs a lesser subpacketization of $\binom{C}{t}$.

The MKR scheme achieves the rate $\binom{C}{t+r}/\binom{C}{t}$ at $M=Nt/C$, which is optimal under uncoded placement. However, when $t>1$, notice that we achieve the same rate at a lesser value of $M$ with the help of coding in the placement phase. If $t=1$, we have cache memory $M=N/C$. For $0\leq M\leq N/C$, the scheme in Theorem \ref{thm:scheme1} has the same rate-memory trade-off as the MKR scheme. For every $M>N/C$, our proposed scheme performs better than the MKR scheme in terms of the rate achieved. In Fig. \ref{plot1}, we plot the rate-memory trade-off in Theorem \ref{thm:scheme1} along with that of the MKR scheme. For $0\leq M\leq 7$ ($t=1$ gives $M=7$), both the schemes have the same rate-memory trade-off. However, for $M> 7$, our scheme has a strictly lower rate compared to the MKR scheme. It is worth noting that, in order to achieve $R(M)=0$, it is sufficient to have $M=N/r$, whereas, in the optimal scheme with uncoded placement, $M=N(C-r+1)/C$ is required to achieve $R(M)=0$.

\begin{figure}[t]
	\captionsetup{justification = centering}
	\captionsetup{font=small,labelfont=small}
	\begin{center}
		\captionsetup{justification = centering}
		\includegraphics[width = \columnwidth]{fig1.eps}
		\caption{$(8,3,M,56)$ Combinatorial MACC scheme. A comparison between the MKR scheme and Scheme 1 for $M\geq 6$ }
		\label{plot1}
	\end{center}
\end{figure}

 Next, we present a combinatorial MACC scheme that performs better than the MKR scheme in the lower memory regime. In the following theorem, we present an achievability result for $ M\leq (N-\binom{C-1}{r})/C$.

\begin{thm}
	\label{thm:scheme2}
	For the $(C,r,M,N)$ combinatorial MACC scheme with $N>\binom{C-1}{r}$, the rate $R(M) = N-CM$ is achievable for $0\leq M\leq (N-\binom{C-1}{r})/C$.
\end{thm}
Proof of Theorem \ref{thm:scheme2} is given in Section \ref{proof:thm2}. \hfill$\blacksquare$

When the number of files $N$ is such that $\binom{C-1}{r}<N\leq \binom{C}{r}$, the rate $R(M) = N-CM$ is strictly less than the rate of the MKR scheme for $0\leq M\leq (N-\binom{C-1}{r})/C$. In Fig.\ref{plot3}, we compare the performance of the $(5,3,M,10)$ combinatorial MACC scheme under uncoded and coded placements. The rate-memory trade-off of the optimal scheme under uncoded placement (MKR scheme) is denoted as $R^*_{uncoded}(M)$, whereas $R_{coded}(M)$ is obtained from Theorem \ref{thm:scheme1} and Theorem \ref{thm:scheme2}, where the placement is coded.

\begin{figure}[t]
	\captionsetup{justification = centering}
	\captionsetup{font=small,labelfont=small}
	\begin{center}
		\captionsetup{justification = centering}
		\includegraphics[width = \columnwidth]{fig3.eps}
		\caption{$(5,3,M,10)$ Combinatorial MACC scheme: A comparison between uncoded placement and coded placement }
		\label{plot3}
	\end{center}
\end{figure}

Now, we present a lower bound on the optimal rate-memory trade-off for the $(C,r,M,N)$ combinatorial MACC scheme.
\begin{thm}
	\label{lowerbound}
	For the $(C,r,M,N)$ combinatorial MACC scheme
	\begin{align}
	R^*(M) \geq \max_{\substack{s\in \{r,r+1,r+2,\hdots,C\} \\ \ell\in \left\{1,2,\hdots,\ceil{N/\binom{s}{r}}\right\}}} \frac{1}{\ell}&\Big\{N-\frac{\omega_{s,\ell}}{s+\omega_{s,\ell}}\Big(N-\ell\binom{s}{r}\Big)^+ \notag\\- &\Big(N- \ell\binom{C}{r}\Big)^+-sM\Big\} \label{lowereqn}
	\end{align}
where $\omega_{s,\ell} = \min(C-s,\min\limits_i \binom{s+i}{r}\geq \ceil{\frac{N}{\ell}})$.
\end{thm}
Proof of Theorem \ref{lowerbound} is given in Section \ref{proof:thm3}. \hfill$\blacksquare$

The lower bound in Theorem \ref{lowerbound} has two parameters: $s$, which is related to the number of caches, and $\ell$, which is associated with the number of transmissions. To obtain this lower bound, we consider $s\in [r:C] $ caches and $\binom{s}{r}$ users who access caches only from those $s$ caches. From $\ceil{{N}/{\binom{s}{r}}}$ number of transmissions, all the $N$ files can be decoded at the $\binom{s}{r}$ users' end by appropriately choosing the demand vectors. Further, we split the total $\ceil{{N}/{\binom{s}{r}}}$ transmissions into $\ell$ transmissions and the remaining $\ceil{{N}/{\binom{s}{r}}}-\ell$ transmissions. Then, we bound the uncertainty in those two cases separately. This bounding technique is similar to the approach used in \cite{STC} and \cite{NaR2}, where lower bounds were derived for the dedicated cache scheme and the MACC scheme with cyclic wrap-around, respectively. For the $(4,2,M,6)$ combinatorial MACC scheme, the improvement in rate using coded placement can be observed from Fig. \ref{plot2}. Also, notice that the rate-memory trade-off in Theorem \ref{thm:scheme1}, Theorem \ref{thm:scheme2} are optimal when $M\geq 2.5$, and $M\leq 0.75$, respectively.

\begin{figure}[t]
	\captionsetup{justification = centering}
	\captionsetup{font=small,labelfont=small}
	\begin{center}
		\captionsetup{justification = centering}
		\includegraphics[width = \columnwidth]{fig2.eps}
		\caption{$(4,2,M,6)$ Combinatorial MACC scheme: The MKR scheme, Scheme 1, Scheme 2 and the lower bound }
		\label{plot2}
	\end{center}
\end{figure}

Using the lower bound in Theorem \ref{lowerbound}, we show the following optimality results. First, we prove that the rate-memory trade-off in Theorem \ref{thm:scheme1} is optimal at a higher memory regime.
\begin{thm}
\label{optimality1}
For the $(C,r,M,N)$ combinatorial MACC scheme
\begin{equation}
R^*(M) = 1-\frac{rM}{N}
\end{equation}
for $\frac{\binom{C}{r}-1}{r\binom{C}{r}}\leq \frac{M}{N}\leq \frac{1}{r}$.
\end{thm}
Proof of Theorem \ref{optimality1} is given in Section \ref{proof:thm4}. \hfill$\blacksquare$

Now, we show that the the rate-memory trade-off in Theorem \ref{thm:scheme2} is optimal if the number of users is not more than the number of files.
\begin{thm}
	\label{optimality2}
	For the $(C,r,M,N)$ combinatorial MACC scheme with $\binom{C-1}{r}<N\leq \binom{C}{r}$, we have
	\begin{equation}
	R^*(M) = N-CM
	\end{equation}
	for $0\leq M\leq \frac{N-\binom{C-1}{r}}{C}$.
\end{thm}
Proof of Theorem \ref{optimality2} is given in Section \ref{proof:thm5}. \hfill$\blacksquare$

\section{Proofs}
\label{proofs}
\subsection{Proof of Theorem \ref{thm:scheme1}}
\label{proof:thm1}
In this section, we present a coding scheme (we refer to this scheme as \textit{Scheme 1}) that achieves the rate $\binom{C}{t+r}/\binom{C}{t}$ at cache memory $M$ (corresponding to every $t\in [C-r+1]$) as given in \eqref{thm1eqn}.

Let $t\in [C-r]$ (for $t=C-r+1$, we give a separate scheme at the end of this proof). We consider the cases $t\geq r$ and $t<r$ separately. Let us first consider the former case.

\noindent a1) \textit{Placement phase ($t\geq r$)}: The server divides each file into $\binom{C}{t}$ non-overlapping subfiles of equal size. Each subfile is indexed with a $t$-sized set $\mathcal{T}\subseteq [C]$. We assume $\mathcal{T}$ to be an ordered set. i.e., $\mathcal{T} = \{\tau_1,\tau_2,\dots,\tau_i,\dots,\tau_t\}$ with $\tau_1<\tau_2<\dots<\tau_t$. Also, whenever an ordering among the subfiles -indexed with $t$ sized subsets of $[C]$- is required, lexicographic ordering is followed. We have $W_n =\{W_{n,\mathcal{T}}: \mathcal{T}\subseteq [C],|\mathcal{T}|=t\} $ for every $n\in [N]$. Then each subfile is divided into $r!$ mini-subfiles. That is, for a $\mathcal{T}\subseteq [C]$ such that $|\mathcal{T}|=t$, we have $W_{n,\mathcal{T}}=\{W_{n,\mathcal{T}}^j: j\in [r!]\}$. Let $\mathbf{G}$ be a generator matrix of an $[r!t,r!]$ MDS code. For every $n\in [N]$ and for every $\mathcal{T}\subseteq [C]$ such that $|\mathcal{T}|=t$, the server encodes the subfiles $(W_{n,\mathcal{T}}^j:j\in [r!])$ with $\mathbf{G}$ as follows:
\begin{equation*}
(Y_{n,\mathcal{T}}^{1},Y_{n,\mathcal{T}}^{2},\dots,Y_{n,\mathcal{T}}^{r!t}) = (W_{n,\mathcal{T}}^j:j\in [r!])\mathbf{G}.
\end{equation*}
Consider cache $c$, where $c\in [C]$, and a set $\mathcal{T}\subseteq [C]$, $|\mathcal{T}|=t$ such that $\mathcal{T}\ni c$. Now, for a given $t,c\in [C]$, define a function $\phi_c^t:\{\mathcal{T}\subseteq[C]:\mathcal{T}\ni c,|\mathcal{T}|=t\}\rightarrow [t]$. The function $\phi_c^t(\mathcal{T})$ gives the position of $c$ in the ordered set $\mathcal{T}$ of size $t$. If $\mathcal{T} = \{\tau_1,\tau_2,\dots,\tau_i=c,\dots,\tau_t\}$, where $\tau_1<\tau_2<\dots<\tau_t$, then  $\phi_c^t(\mathcal{T})=i$.\\
\noindent The placement phase consists of $r$ rounds- Round 0, Round 1, $\dots$, Round $r-1$. The content stored in cache $c$ in Round $\alpha$ is denoted as $Z_c^\alpha$. In Round 0, the server fills cache $c$ as
\begin{align*}
Z_c^0 = \Big\{Y_{n,\mathcal{T}}^{\ell_0}&:\ell_0 \in \big[(\phi_c^t(\mathcal{T})-1)(r-1)!+1:\\\phi_c^t(&\mathcal{T})(r-1)!\big],\mathcal{T}\subseteq[C]:\mathcal{T}\ni c,|\mathcal{T}|=t,n\in [N]\Big\}.
\end{align*}
Notice that $(r-1)!\binom{C-1}{t-1}$ coded mini-subfiles (of all the files) are placed in all the caches in Round 0. Before the subsequent rounds, the server further encodes the already encoded mini-subfiles. Let $\mathbf{G}^{(1)}$ be a systematic generator matrix of a $[2\binom{C-1}{t-1}-\binom{C-r}{t-r},\binom{C-1}{t-1}]$ MDS code, and let $\mathbf{G}^{(1)}=[\mathbf{I}_{\binom{C-1}{t-1}}|\mathbf{P}^{(1)}_{\binom{C-1}{t-1}\times \binom{C-1}{t-1}-\binom{C-r}{t-r}}]$. In Round 1, the server picks the coded mini-subfiles $Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}$ for every set  $\mathcal{T}\subseteq[C],|\mathcal{T}|=t$ such that $\mathcal{T}\ni c$, where $q_{\mathcal{T}}^1 = (r-1)!t+\left(\phi_c^t(\mathcal{T})-1\right)(r-2)!$ and $\ell_1\in [(r-2)!]$. Those subfiles are encoded with $\mathbf{P}^{(1)}$ as follows:
\begin{align*}
(Q_{n,c}^{\ell_1,1},Q_{n,c}^{\ell_1,2}&,\dots,Q_{n,c}^{\ell_1,\binom{C-1}{t-1}-\binom{C-r}{t-r}}) =\\& \left(Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\right)\mathbf{P}^{(1)},\\&\hspace{3cm}\forall \ell_1\in [(r-2)!], n\in [N].
\end{align*}
In Round 1, the server places the following content in cache $c$,
\begin{align*}
Z_c^1 =& \Big\{Q_{n,c}^{\ell_1,1},Q_{n,c}^{\ell_1,2},\dots,Q_{n,c}^{\ell_1,\binom{C-1}{t-1}-\binom{C-r}{t-r}}:\ell_1\in [(r-2)!],\\&\hspace{6.5cm}n\in [N]\Big\}.
\end{align*}
In Round 1, $(r-2)!\left(\binom{C-1}{t-1}-\binom{C-r}{t-r}\right)$ number of ``doubly-encoded" mini-subfiles of every file are kept in the caches. Now let us focus on Round $b$, where $b\in [2:r-1]$. Let $\mathbf{G}^{(b)}$ be a systematic generator matrix of a $[2\binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1},\binom{C-1}{t-1}]$ MDS code, and let $\mathbf{G}^{(b)}=[\mathbf{I}_{\binom{C-1}{t-1}}|\mathbf{P}^{(b)}_{\binom{C-1}{t-1}\times \binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}}]$. In Round $b$, the server picks the coded mini-subfiles $Y_{n,\mathcal{T}}^{q_\mathcal{T}^b+\ell_b}$ for every set  $\mathcal{T}\subseteq[C],|\mathcal{T}|=t$ such that $\mathcal{T}\ni c$, where $q_{\mathcal{T}}^b = \frac{r!}{r-b}t+\left(\phi_c^t(\mathcal{T})-1\right)\frac{r!}{(r-b)(r-b+1)}$ and $\ell_b\in \left[\frac{r!}{(r-b)(r-b+1)}\right]$. Those subfiles are encoded with $\mathbf{P}^{(b)}$ as follows:
\begin{align*}
(Q_{n,c}^{\ell_b,1},Q_{n,c}^{\ell_b,2},&\dots,Q_{n,c}^{\ell_b,\binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}}) =\\& \left(Y_{n,\mathcal{T}}^{q_\mathcal{T}^b+\ell_b}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\right)\mathbf{P}^{(b)},\\& \hspace{1cm} \forall \ell_b\in \left[\frac{r!}{(r-b)(r-b+1)}\right], n\in [N].
\end{align*}
In Round $b$, the server places the following content in cache $c$,
\begin{align*}
Z_c^b = \Big\{Q_{n,c}^{\ell_b,1},Q_{n,c}^{\ell_b,2},\dots,Q_{n,c}^{\ell_b,\binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}}:\\\ell_b\in \left[\frac{r!}{(r-b)(r-b+1)}\right], n\in [N]\Big\}.
\end{align*}
In Round $b$, $\frac{r!}{(r-b)(r-b+1)}\left(\binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}\right)$ number of doubly-encoded mini-subfiles of each file are kept in the caches. So, the overall contents stored in cache $c$ is
\begin{equation*}
Z_c = \bigcup\limits_{\alpha=0}^{r-1} Z_c^\alpha, \hspace{0.2cm}\forall c\in [C].
\end{equation*}
Each coded mini-subfile has $\frac{1}{r!\binom{C}{t}}^{th}$ of a file-size. Therefore, the normalized cache memory  is
\begin{align}
	\frac{M}{N} &= \frac{(r-1)!\binom{C-1}{t-1})}{r!\binom{C}{t}}+\notag\\&\qquad\frac{\sum\limits_{b=1}^{r-1}\frac{r!}{(r-b)(r-b+1)}\left(\binom{C-1}{t-1}-\sum\limits_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}\right)}{r!\binom{C}{t}}\notag \\
	&=\frac{t}{C}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{r-1}\frac{r-i}{r}\binom{r}{i-1}\binom{C-r}{t-r+i-1}\label{mbyn1}.
\end{align}
The calculation of $M/N$ value is elaborated in Appendix \ref{AppendixZ}.

\noindent \textit{a2) Placement phase ($t<r$):} The server divides each file into $\binom{C}{t}$ non-overlapping subfiles of equal size. Each subfile is indexed with a $t$-sized set $\mathcal{T}\subseteq [C]$. Thus, we have $W_n =\{W_{n,\mathcal{T}}: \mathcal{T}\subseteq [C],|\mathcal{T}|=t\} $ for every $n\in [N]$. Then each subfile is divided into $t!$ mini-subfiles. That is, for a $\mathcal{T}\subseteq [C]$ such that $|\mathcal{T}|=t$, we have $W_{n,\mathcal{T}}=\{W_{n,\mathcal{T}}^j: j\in [t!]\}$. Let $\mathbf{G}$ be a generator matrix of a $[t!t,t!]$ MDS code. For every $n\in [N]$ and for every $\mathcal{T}\subseteq [C]$ such that $|\mathcal{T}|=t$, the server encodes the subfiles $(W_{n,\mathcal{T}}^j:j\in [t!])$ with $\mathbf{G}$ as follows:
\begin{equation*}
(Y_{n,\mathcal{T}}^{1},Y_{n,\mathcal{T}}^{2},\dots,Y_{n,\mathcal{T}}^{t!t}) = (W_{n,\mathcal{T}}^j:j\in [t!])\mathbf{G}.
\end{equation*}
The placement phase consists of $t$ rounds- Round 0, Round 1, $\dots$, Round $t-1$. The content stored in cache $c$ in Round $\alpha$ is denoted with $Z_c^\alpha$. In Round 0, the server fills cache $c$ as
\begin{align*}
Z_c^0 = \Big\{Y_{n,\mathcal{T}}^{\ell_0}:&\ell_0 \in \left[(\phi_c^t(\mathcal{T})-1)(t-1)!+1:\phi_c^t(\mathcal{T})(t-1)!\right]\,\\&\mathcal{T}\subseteq[C]:\mathcal{T}\ni c,|\mathcal{T}|=t,n\in [N]\Big\}.
\end{align*}
Notice that $(t-1)!\binom{C-1}{t-1}$ coded mini-subfiles (of all the files) are placed in all the caches in Round 0. Before the subsequent rounds, the server further encodes the already encoded mini-subfiles. Let $\mathbf{G}^{(1)}$ be a systematic generator matrix of a $[2\binom{C-1}{t-1}-\binom{r-1}{t-1},\binom{C-1}{t-1}]$ MDS code, and let $\mathbf{G}^{(1)}=[\mathbf{I}_{\binom{C-1}{t-1}}|\mathbf{P}^{(1)}_{\binom{C-1}{t-1}\times \binom{C-1}{t-1}-\binom{r-1}{t-1}}]$. In Round 1, the server picks the coded mini-subfiles $Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}$ for every set  $\mathcal{T}\subseteq[C],|\mathcal{T}|=t$ such that $\mathcal{T}\ni c$, where $q_{\mathcal{T}}^1 = t!+\left(\phi_c^t(\mathcal{T})-1\right)(t-2)!$ and $\ell_1\in [(t-2)!]$. Those subfiles are encoded with $\mathbf{P}^{(1)}$ as follows:
\begin{align*}
(Q_{n,c}^{\ell_1,1},Q_{n,c}^{\ell_1,2},\dots,&Q_{n,c}^{\ell_1,\binom{C-1}{t-1}-\binom{r-1}{t-1}}) =\\& \left(Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\right)\mathbf{P}^{(1)},\\&\hspace{2cm}\forall \ell_1\in [(t-2)!], n\in [N].
\end{align*}
In Round 1, the server places the following content in cache $c$,
\begin{align*}
Z_c^1 = \Big\{Q_{n,c}^{\ell_1,1},Q_{n,c}^{\ell_1,2}&,\dots,Q_{n,c}^{\ell_1,\binom{C-1}{t-1}-\binom{r-1}{t-1}}:\\&\hspace{2cm}\ell_1\in [(t-2)!], n\in [N]\Big\}.
\end{align*}
In Round 1, $(t-2)!\left(\binom{C-1}{t-1}-\binom{r-1}{t-1}\right)$ number of doubly-encoded mini-subfiles of every file are kept in the caches. Now let us focus on Round $b$, where $b\in [2:t-1]$. Let $\mathbf{G}^{(b)}$ be a systematic generator matrix of a $[2\binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1},\binom{C-1}{t-1}]$ MDS code, and let $\mathbf{G}^{(b)}=[\mathbf{I}_{\binom{C-1}{t-1}}|\mathbf{P}^{(b)}_{\binom{C-1}{t-1}\times \binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1}}]$. In Round $b$, the server picks the coded mini-subfiles $Y_{n,\mathcal{T}}^{q_\mathcal{T}^b+\ell_b}$ for every set  $\mathcal{T}\subseteq[C],|\mathcal{T}|=t$ such that $\mathcal{T}\ni c$, where $q_{\mathcal{T}}^b = \frac{t!}{t-b}t+\left(\phi_c^t(\mathcal{T})-1\right)\frac{t!}{(t-b)(t-b+1)}$ and $\ell_b\in \left[\frac{t!}{(t-b)(t-b+1)}\right]$. Those subfiles are encoded with $\mathbf{P}^{(b)}$ as follows:
\begin{align*}
(Q_{n,c}^{\ell_b,1},Q_{n,c}^{\ell_b,2},&\dots,Q_{n,c}^{\ell_b,\binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1}}) =\\& \left(Y_{n,\mathcal{T}}^{q_\mathcal{T}^b+\ell_b}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\right)\mathbf{P}^{(b)},\\ & \hspace{1.2cm}\forall \ell_b\in \left[\frac{t!}{(t-b)(t-b+1)}\right], n\in [N].
\end{align*}
In Round $b$, the server places the following content in cache $c$,
\begin{align*}
Z_c^b =& \Big\{Q_{n,c}^{\ell_b,1},Q_{n,c}^{\ell_b,2},\dots,Q_{n,c}^{\ell_b,\binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1}}:\\&\hspace{2.4cm}\ell_b\in \left[\frac{t!}{(t-b)(t-b+1)}\right], n\in [N]\Big\}.
\end{align*}
In Round $b$, $\frac{t!}{(t-b)(t-b+1)}\left(\binom{C-1}{t-1}-\sum_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1}\right)$ number of doubly-encoded mini-subfiles of each file are kept in the caches. So, the overall contents stored in cache $c$ is
\begin{equation*}
Z_c = \bigcup\limits_{\alpha=0}^{t-1} Z_c^\alpha, \hspace{0.2cm}\forall c\in [C].
\end{equation*}
Each coded mini-subfile has $\frac{1}{t!\binom{C}{t}}^{th}$ of a file-size. Therefore, the normalized cache memory  is
\begin{align}
	\frac{M}{N} &= \frac{(t-1)!\binom{C-1}{t-1}}{t!\binom{C}{t}}+\notag\\&\hspace{1.5cm}\frac{\sum\limits_{b=1}^{t-1}\frac{t!}{(t-b)(t-b+1)}\left(\binom{C-1}{t-1}-\sum\limits_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1}\right)}{t!\binom{C}{t}}\notag\\
	&=\frac{t}{C}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{t-1}\frac{t-i}{r}\binom{r}{t-i+1}\binom{C-r}{i-1}\label{mbyn2}.
\end{align}
The detailed calculation of $M/N$ is provided in Appendix \ref{AppendixY}.

\noindent \textit{b) Delivery phase:} The delivery phase does not depend on whether $t\geq r$ or $t<r$. Let $W_{d_\mathcal{U}}$ be the file demanded by user $\mathcal{U}$, where $\mathcal{U}\subseteq [C]$ and $|\mathcal{U}|=r$. During the delivery phase, the server makes a transmission corresponding to every $(t+r)$-sized subsets of $[C]$. The transmission corresponding to a set $\mathcal{S}\subseteq [C]$ such that $|\mathcal{S}|=t+r$ is
\begin{equation*}
\bigoplus_{\substack{\mathcal{U}\subseteq \mathcal{S}\\|\mathcal{U}|=r}} W_{d_\mathcal{U},\mathcal{S}\backslash \mathcal{U}}.
\end{equation*}
Note that, for a given $t\in [C]$, this delivery phase is the same as the delivery phase in the MKR scheme. There are $\binom{C}{t+r}$ number of $(t+r)$-sized subsets for $[C]$. The server makes transmission corresponding to each of those subsets. Therefore the number of coded subfiles transmitted in the delivery phase is $\binom{C}{t+r}$. Each subfile has $\frac{1}{\binom{C}{t}}^{th}$ of a file-size. Therefore the rate of transmission is ${\binom{C}{t+r}}/{\binom{C}{t}}$.

Next, we show that by employing the above placement and delivery phases, all the users can decode their demanded files. From the coded subfiles placed in the caches, if a user can decode all the subfiles that can be accessed by a corresponding user in the MKR scheme (by corresponding user, we mean that the user accessing the same set of caches), then the decodability of the demanded files is guaranteed. This is because the delivery phase of our proposed scheme is the same as the delivery phase in the MKR scheme. Thus, we show that user $\mathcal{U}$ can decode the subfiles $W_{n,\mathcal{T}}$ such that $\mathcal{U}\cap \mathcal{T}\neq \phi$ from the coded subfiles stored in the accessible caches. That will ensure the decodability of the demanded files. In order to prove that, we consider a user $\mathcal{U}$. Let cache $c$ be one of the $r$ caches the user accesses. Then we show that the user can decode the subfile $W_{n,\mathcal{T}}$ if $\mathcal{T}\ni c$.

\noindent \textit{c1) Decodability ($t\geq r$):} Firstly, note that from any $r!$ coded mini-subfiles from the $r!t$ coded mini-subfiles $\{Y_{n,\mathcal{T}}^{1},Y_{n,\mathcal{T}}^{2},\dots,Y_{n,\mathcal{T}}^{r!t}\}$, one can decode the $r!$ mini-subfiles of the subfile $W_{n,\mathcal{T}}$. That means from  any $r!$ coded mini-subfiles from $\{Y_{n,\mathcal{T}}^{1},Y_{n,\mathcal{T}}^{2},\dots,Y_{n,\mathcal{T}}^{r!t}\}$, one can completely decode the subfile $W_{n,\mathcal{T}}$. Now, consider user $\mathcal{U}$ who has access to cache $c$ for every $c\in \mathcal{U}$. For every $\mathcal{T}\ni c$, cache $c$ contains $(r-1)!$ coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ from Round 0 of the placement phase. Therefore user $\mathcal{U}$ gets $(r-1)!\ell$ distinct coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{T}\cap \mathcal{U}|=\ell$, where $\ell \in [r]$. Thus the user gets $(r-1)!r=r!$ coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{T}\cap \mathcal{U}|=r$. That means, the user can decode the subfile $W_{n,\mathcal{T}}$ if $|\mathcal{T}\cap \mathcal{U}|=r$, from the contents placed in Round 0 alone. In other words, a user can decode $\binom{C-r}{t-r}$ number of subfiles of every file using the contents placed in Round 0. If the user decodes $W_{n,\mathcal{T}}$ then it knows the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{1},Y_{n,\mathcal{T}}^{2},\dots,Y_{n,\mathcal{T}}^{r!t}\}$. Now, consider the contents placed in Round 1 of the placement phase. In Round 1, the server placed $\binom{C-1}{r-1}-\binom{C-r}{t-r}$ number of coded combinations of the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. From the previous decoding (from the contents stored in Round 0), the user knows some $\binom{C-r}{t-r}$ coded mini-subfiles in $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. Using those coded mini-subfiles and the doubly-encoded mini-subfiles $\{Q_{n,c}^{\ell_1,1},Q_{n,c}^{\ell_1,2},\dots,Q_{n,c}^{\ell_1,\binom{C-1}{t-1}-\binom{C-r}{t-r}}\}$, the user can find all the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. That is, corresponding to every $\ell_1\in [(r-2)!]$, user $\mathcal{U}$ can find out a coded mini-subfile of $W_{n,\mathcal{T}}$ if $1\leq |\mathcal{U}\cap \mathcal{T}|\leq r-1$. For $\mathcal{T}$ such that $|\mathcal{U}\cap \mathcal{T}|= r-1$, the user can get $(r-2)!$ distinct coded mini-subfiles of $W_{n,\mathcal{T}}$ from $r-1$ caches (caches indexed with the elements in the set $\mathcal{U}\cap \mathcal{T}$) that it accesses. Also, the user already has $(r-1)!(r-1)$ coded mini-subfiles of $W_{n,\mathcal{T}}$ that were decoded using the contents stored in Round 0 of the placement phase. That is, the user has $(r-1)!(r-1)+(r-2)!(r-1)=r!$ coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$. Thus user can decode the subfile $W_{n,\mathcal{T}}$ if $|\mathcal{U}\cap \mathcal{T}|= r-1$ using the contents stored in Round 0 and Round 1 of the placement phase.

\noindent Let us assume that user $\mathcal{U}$ has decoded $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|\geq r-\beta+1$ for some $\beta \in [r-1]$, from the contents stored in Round 0, Round 1,$\dots$, Round $\beta-1$ of the placement phase. Also, assume that the user has decoded $\frac{r!}{r-\beta+1}\gamma$ number of coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|=\gamma$ for every $\gamma \in [r-\beta]$. Then, we prove that the user can decode the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|\geq r-\beta$. Further, we show that the user can decode $\frac{r!}{r-\beta}\gamma$ number of coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|=\gamma$ for every $\gamma \in [r-\beta-1]$. Note that, we have already shown that this is, in fact, true for $\beta=1$. Now, let us consider the contents stored in Round $\beta$ of the placement phase.  In Round $\beta$, the server placed $\binom{C-1}{r-1}-\sum_{i=1}^{\beta}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}$ number of coded combinations of the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^\beta+\ell_\beta}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$, where $q_{\mathcal{T}}^\beta = \frac{r!}{r-\beta}t+\left(\phi_c^t(\mathcal{T})-1\right)\frac{r!}{(r-\beta)(r-\beta+1)}$ and $\ell_\beta\in \left[\frac{r!}{(r-\beta)(r-\beta+1)}\right]$. We assumed that the user has already decoded the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|\geq r-\beta+1$. The number of sets $\mathcal{T}\subseteq [C]$ such that $|\mathcal{T}|=t$, $\mathcal{T}\ni c$, and $|\mathcal{U}\cap \mathcal{T}|=r-i+1$, $i\in [r-1]$, where $\mathcal{U}\subseteq [C]$ with $|\mathcal{U}|=r\leq t$, and $\mathcal{U}\ni c$ is $\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}$. Thus the user knows some $\sum_{i=1}^{\beta}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}$ coded mini-subfiles in $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^\beta+\ell_\beta}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. Using those coded mini-subfiles and the doubly-encoded mini-subfiles $\{Q_{n,c}^{\ell_\beta,1},Q_{n,c}^{\ell_\beta,2},\dots,Q_{n,c}^{\ell_\beta,\binom{C-1}{t-1}-\sum_{i=1}^{\beta}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}}\}$, the user can find all the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^\beta+\ell_\beta}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. That is, corresponding to every $\ell_\beta\in [\frac{r!}{(r-\beta)(r-\beta+1)}]$, user $\mathcal{U}$ can find out a coded mini-subfile of $W_{n,\mathcal{T}}$ if $1\leq |\mathcal{U}\cap \mathcal{T}|\leq r-\beta$. According to our previous assumption, user $\mathcal{U}$ has decoded $\frac{r!}{r-\beta+1}(r-\beta)$ number of coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|=r-\beta$ (by substituting $\gamma=r-\beta$). In addition to that, the user decoded $\frac{r!}{(r-\beta)(r-\beta+1)}$ coded mini-subfiles of $W_{n,\mathcal{T}}$ from $r-\beta$ caches. Therefore, the user has $\frac{r!}{r-\beta+1}(r-\beta)+\frac{r!}{(r-\beta)(r-\beta+1)}(r-\beta)=r!$ coded mini-subfiles of $W_{n,\mathcal{T}}$. Thus, user $\mathcal{U}$ can decode the subfile $W_{n,\mathcal{T}}$ for all $|\mathcal{U}\cap\mathcal{T}|= r-\beta$. Further, the user has decoded $\frac{r!}{r-\beta+1}\gamma+\frac{r!}{(r-\beta)(r-\beta+1)}\gamma=\frac{r!}{r-\beta}\gamma$ number of coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|=\gamma$ for every $\gamma \in [r-\beta-1]$. By induction on $\beta$, we can see that the user can decode the subfile $W_{n,\mathcal{T}}$ such that $|\mathcal{U}\cap\mathcal{T}|\geq 1$. In other words, user $\mathcal{U}$ can decode the subfile indexed with a set $\mathcal{T}$ such that $\mathcal{U}\cap\mathcal{T}\neq \phi$. That is, from the coded subfiles placed in the caches, a user can decode all the subfiles that can be accessed by a corresponding user in the MKR scheme. Therefore, the decodability of the demanded files is guaranteed if $t\geq r$.

\noindent \textit{c2)  Decodability ($t< r$):} Each subfile was divided into $t!$ mini-subfiles during cache placement. Therefore, from any $t!$ coded mini-subfiles from the $t!t$ coded mini-subfiles $\{Y_{n,\mathcal{T}}^{1},Y_{n,\mathcal{T}}^{2},\dots,Y_{n,\mathcal{T}}^{t!t}\}$, one can decode the $t!$ mini-subfiles of the subfile $W_{n,\mathcal{T}}$, and thus the subfile itself. That is, from any $t!$ coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$, the subfile can be decoded. Consider user $\mathcal{U}$, where $\mathcal{U}\subseteq [C]$ and $|\mathcal{U}|=r$. Consider cache $c$, and assume that cache $c$ is one of the $r$ caches accessed by user $\mathcal{U}$. Note that, $c\in \mathcal{U}$. Cache $c$ contains $(t-1)!$ coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}\ni c$ and $n\in [N]$, from Round 0 of the placement phase.  Therefore user $\mathcal{U}$ gets $(t-1)!\ell$ distinct coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{T}\cap \mathcal{U}|=\ell$, where $\ell \in [t]$. Thus the user gets $(t-1)!t=t!$ coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{T}\cap \mathcal{U}|=t$. That means, the user can decode the subfile $W_{n,\mathcal{T}}$ if $|\mathcal{T}\cap \mathcal{U}|=t$, from the contents placed in Round 0. Thus the user can decode $\binom{r}{t}$ subfiles solely using the contents placed in Round 0. Out of those subfiles, $\binom{r-1}{t-1}$ subfiles are indexed with a set $\mathcal{T}\ni c$. Now, consider the contents placed in cache $c$ in Round 1 of the placement phase. In Round 1, the server placed $\binom{C-1}{r-1}-\binom{r-1}{t-1}$ number of coded combinations of the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$ for every $\ell_1\in [(t-2)!]$. We have already seen that user $\mathcal{U}$ knows some $\binom{r-1}{t-1}$ coded mini-subfiles in $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. Using those coded mini-subfiles and the doubly-encoded mini-subfiles $\{Q_{n,c}^{\ell_1,1},Q_{n,c}^{\ell_1,2},\dots,Q_{n,c}^{\ell_1,\binom{C-1}{t-1}-\binom{r-1}{t-1}}\}$, the user can find all the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^1+\ell_1}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. That is, corresponding to every $\ell_1\in [(t-2)!]$, user $\mathcal{U}$ can find out a coded mini-subfile of $W_{n,\mathcal{T}}$ if $|\mathcal{U}\cap \mathcal{T}|\geq 1$. For $\mathcal{T}$ such that $|\mathcal{U}\cap \mathcal{T}|= t-1$, the user can get $(t-2)!$ distinct coded mini-subfiles of $W_{n,\mathcal{T}}$ from $t-1$ caches (caches indexed with the elements in the set $\mathcal{U}\cap \mathcal{T}$) that it accesses. Also, the user already has $(t-1)!(t-1)$ coded mini-subfiles of $W_{n,\mathcal{T}}$ that were decoded using the contents stored in Round 0 of the placement phase. That is, the user has $(t-1)!(t-1)+(t-2)!(t-1)=t!$ coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$. Thus user can decode the subfile $W_{n,\mathcal{T}}$ if $|\mathcal{U}\cap \mathcal{T}|= t-1$ using the contents stored in Round 0 and Round 1 of the placement phase.

\noindent As the previous case (case where $t\geq r$), we prove the decodability of the subfiles by using mathematical induction. Let us assume that user $\mathcal{U}$ has decoded $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|\geq t-\beta+1$ for some $\beta \in [t-1]$, from the contents stored in Round 0, Round 1,$\dots$, Round $\beta-1$ of the placement phase. Also, assume that the user has decoded $\frac{t!}{t-\beta+1}\gamma$ number of coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|=\gamma$ for every $\gamma \in [t-\beta]$. Then, we prove that the user can decode the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|\geq t-\beta$. Further, we show that the user can decode $\frac{t!}{t-\beta}\gamma$ number of coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|=\gamma$ for every $\gamma \in [t-\beta-1]$. Note that, we have already shown that this is, in fact, true for $\beta=1$. Now, let us consider the contents stored in Round $\beta$ of the placement phase.  In Round $\beta$, the server placed $\binom{C-1}{r-1}-\sum_{i=1}^{\beta}\binom{r-1}{t-i}\binom{C-r}{i-1}$ number of coded combinations of the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^\beta+\ell_\beta}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$, where $q_{\mathcal{T}}^\beta = \frac{t!}{t-\beta}t+\left(\phi_c^t(\mathcal{T})-1\right)\frac{t!}{(t-\beta)(t-\beta+1)}$ and $\ell_\beta\in \left[\frac{t!}{(t-\beta)(t-\beta+1)}\right]$. We assumed that the user has already decoded the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|\geq t-\beta+1$. The number of sets $\mathcal{T}\subseteq [C]$ such that $|\mathcal{T}|=t$, $\mathcal{T}\ni c$, and $|\mathcal{U}\cap \mathcal{T}|=t-i+1$, $i\in [t-1]$, where $\mathcal{U}\subseteq [C]$ with $|\mathcal{U}|=r>t$, and $\mathcal{U}\ni c$ is $\binom{r-1}{t-i}\binom{C-r}{i-1}$. Thus the user knows some $\sum_{i=1}^{\beta}\binom{r-1}{t-i}\binom{C-r}{i-1}$ coded mini-subfiles in $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^\beta+\ell_\beta}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. Using those coded mini-subfiles and the doubly-encoded mini-subfiles $\{Q_{n,c}^{\ell_\beta,1},Q_{n,c}^{\ell_\beta,2},\dots,Q_{n,c}^{\ell_\beta,\binom{C-1}{t-1}-\sum_{i=1}^{\beta}\binom{r-1}{t-i}\binom{C-r}{i-1}}\}$, the user can find all the coded mini-subfiles $\{Y_{n,\mathcal{T}}^{q_\mathcal{T}^\beta+\ell_\beta}: \mathcal{T}\subseteq[C],|\mathcal{T}|=t,\mathcal{T}\ni c\}$. That is, corresponding to every $\ell_\beta\in [\frac{t!}{(t-\beta)(t-\beta+1)}]$, user $\mathcal{U}$ can find out a coded mini-subfile of $W_{n,\mathcal{T}}$ if $1\leq |\mathcal{U}\cap \mathcal{T}|\leq t-\beta$. According to our previous assumption, user $\mathcal{U}$ has decoded $\frac{t!}{t-\beta+1}(t-\beta)$ number of coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|=t-\beta$ (by substituting $\gamma=t-\beta$). In addition to that, the user decoded $\frac{t!}{(t-\beta)(t-\beta+1)}$ coded mini-subfiles of $W_{n,\mathcal{T}}$ from $t-\beta$ caches. Therefore, the user has $\frac{t!}{t-\beta+1}(t-\beta)+\frac{t!}{(t-\beta)(t-\beta+1)}(t-\beta)=t!$ coded mini-subfiles of $W_{n,\mathcal{T}}$. Thus, user $\mathcal{U}$ can decode the subfile $W_{n,\mathcal{T}}$ for all $|\mathcal{U}\cap\mathcal{T}|= t-\beta$. Further, the user has decoded $\frac{t!}{t-\beta+1}\gamma+\frac{t!}{(t-\beta)(t-\beta+1)}\gamma=\frac{t!}{t-\beta}\gamma$ number of coded mini-subfiles of the subfile $W_{n,\mathcal{T}}$ for all $\mathcal{T}$ such that $|\mathcal{U}\cap\mathcal{T}|=\gamma$ for every $\gamma \in [t-\beta-1]$. By induction on $\beta$, we can see that the user can decode the subfile $W_{n,\mathcal{T}}$ such that $|\mathcal{U}\cap\mathcal{T}|\geq 1$. In other words, user $\mathcal{U}$ can decode the subfile indexed with a set $\mathcal{T}$ such that $\mathcal{U}\cap\mathcal{T}\neq \phi$. That is, from the coded subfiles placed in the caches, a user can decode all the subfiles that can be accessed by a corresponding user in the MKR scheme. Therefore, the decodability of the demanded files is guaranteed if $t<r$ as well.

Finally, we consider the case $t=C-r+1$. The parameter $t=C-r+1$ corresponds to $M=N/r$ (shown in Appendix \ref{AppendixA}). In that case, it is possible to achieve rate $R(N/r)=0$ by placing the contents by properly employing coding. That is, from the accessible cache contents itself, all the users can decode the entire library of files. The placement is as follows.\\
The server divides each file into $r$ non-overlapping subfiles of equal size. i.e., $W_n = \{W_{n,1},W_{n,2},\dots,W_{n,r}\}$ for all $n\in [N]$. Let $\mathbf{G}_{r\times C}$ be a generator matrix of a $[C,r]$ MDS code. For every $n\in [N]$, the server does the following encoding procedure:
\begin{equation*}
(\tilde{W}_{n,1},\tilde{W}_{n,2},\dots,\tilde{W}_{n,C}) = (W_{n,1},W_{n,2},\dots,W_{n,r})\mathbf{G}.
\end{equation*}
Then the server fills the caches as
\begin{equation*}
Z_c = \{\tilde{W}_{n,c}, \forall n\in [N]\}.
\end{equation*}
Thus user $\mathcal{U}$ gets access to $Z_c$ for every $c\in \mathcal{U}$. That means, the user has $r$ distinct coded subfiles $\tilde{W}_{n,c}$ for every $c\in \mathcal{U}$ and for all $n\in [N]$. From those coded subfiles the user can decode all the files (from any $r$ coded subfiles, $r$ subfiles of a file can be decoded). This completes the proof of Theorem \ref{thm:scheme2}.\hfill$\blacksquare$

\subsection{Proof of Theorem \ref{thm:scheme2}}
\label{proof:thm2}
In this section, we present a coding scheme (we refer to this scheme as \textit{Scheme 2}).

First, we show the achievability of the rate $R(M) = \binom{C-1}{r}$ at $M = (N-\binom{C-1}{r})/C$ by presenting a coding scheme.

\noindent \textit{a) Placement phase:} The server divides each file into $C$ non-overlapping subfiles of equal size. Thus, we have $W_n = \{W_{n,1},W_{n,2},\dots,W_{n,C}\}$ for all $n\in [N]$. Let $\mathbf{G}$ be a systematic generator matrix of a $[2N-\binom{C-1}{r},N]$ MDS code. Thus we can write $\mathbf{G}=[\mathbf{I}_N|\mathbf{P}_{N\times N-\binom{C-1}{r}}]$, where $\mathbf{I}_N$ is the identity matrix of size $N$. Then the server encodes the subfiles $(W_{1,i},W_{2,i},\dots,W_{N,i})$ using $\mathbf{P}_{N\times N-\binom{C-1}{r}}$, which results in $N-\binom{C-1}{r}$ coded subfiles. That is
\begin{align*}
(Q_{1,i},Q_{2,i},&\dots,Q_{N-\binom{C-1}{r},i}) =\\& (W_{1,i},W_{2,i},\dots,W_{N,i})\mathbf{P}_{N\times N-\binom{C-1}{r}}, \hspace{0.2cm} \forall i\in [C].
\end{align*}
Then the server fills the caches as follows:
\begin{equation*}
Z_i = \{Q_{1,i},Q_{2,i},\dots,Q_{N-\binom{C-1}{r},i}\}, \hspace{.2cm} \forall i\in [C].
\end{equation*}
The $i^{\text{th}}$ cache contains $N-\binom{C-1}{r}$ linearly independent coded combinations of the subfiles $(W_{1,i},W_{2,i},\dots,W_{N,i})$. The size of a coded subfile is the same as the size of a subfile. Thus, we have the total size of a cache, $M = (N-\binom{C-1}{r})/C$.

\noindent \textit{b) Delivery phase:} Let $W_{d_\mathcal{U}}$ be the file demanded by user $\mathcal{U}$ in the delivery phase. Let $n(\mathbf{d})$ denote the number of distinct files demanded by the users, i.e., $n(\mathbf{d}) = |\{W_{d_\mathcal{U}}:\mathcal{U}\subseteq [C],|\mathcal{U}|=r\}|$ If $n(\mathbf{d})\leq \binom{c-1}{r}$, then the server simply broadcasts those $n(\mathbf{d})$ files. Now, consider the case where $n(\mathbf{d})>\binom{C-1}{r}$. Let $n_i(\mathbf{d})$ denote the number of distinct files demanded by the users who do not access the $i^{\text{th}}$ cache, i.e.,
$n_i(\mathbf{d}) = |\{W_{d_\mathcal{U}}:\mathcal{U}\subseteq [C]\backslash\{i\},|\mathcal{U}|=r\}|$. Note that, $n_i(\mathbf{d})\leq \binom{C-1}{r}$ for all $i\in [C]$. If $n_i(\mathbf{d})=\binom{C-1}{r}$, then the server transmits $W_{d_\mathcal{U},i}$ for all $\mathcal{U}\subseteq [C]\backslash\{i\},$ such that $|\mathcal{U}|=r$. That is, the server transmits the $i^{\text{th}}$ subfile of the files demanded by the users who are not accessing cache $i$. If $n_i(\mathbf{d})<\binom{C-1}{r}$, then the server transmits the $i^{\text{th}}$ subfile of those distinct $n_i(\mathbf{d})$ files (files demanded by the users who do not access cache $i$) and the $i^{\text{th}}$ subfile of some other $\binom{C-1}{r}-n_i(\mathbf{d})$ files. The same procedure is done for all $i\in[C]$.

Corresponding to every $i\in [C]$, the server transmits $\binom{C-1}{r}$ subfiles. Each subfile has $1/C^\text{th}$ of a file size. Thus the rate achieved is $\binom{C-1}{r}$. Now, the claim is that all the users can decode their demanded files completely. When $n(\mathbf{d})\leq \binom{C-1}{r}$, the decodability is trivial, as the demanded files are sent as such by the server. Let us consider the case where $n(\mathbf{d})> \binom{C-1}{r}$. Consider user $\mathcal{U}$ who accesses cache $i$ for all $i\in \mathcal{U}$. The user directly receives $W_{d_\mathcal{U},j}$ for all $j\in [C]\backslash \mathcal{U}$. Further, user $\mathcal{U}$ receives the $i^{\text{th}}$ subfile of some $\binom{C-1}{r}$ files, for every $i\in \mathcal{U}$. Also, for all $i\in \mathcal{U}$, the user has access to $N-\binom{C-1}{r}$ coded subfiles of the subfiles $\{W_{1,i},W_{2,i},\dots,W_{N,i}\}$  from cache $i$. Thus the user can decode $W_{n,i}$ for all $n\in [N]$ and $i\in \mathcal{U}$, since any $N$ columns of $\mathbf{G}$ are linearly independent. Therefore, user $\mathcal{U}$ gets $W_{d_\mathcal{U},k}$ for every $k\in [C]$. Hence, all the users can decode their demanded files.

Further, if $M=0$, the rate $R=N$ is trivially achievable by simply broadcasting all the files. Thus, by memory sharing, the rate $R(M) = N-CM$ is achievable for $0\leq M\leq (N-\binom{C-1}{r})/C$. This completes the proof of Theorem \ref{thm:scheme2}. \hfill$\blacksquare$
\subsection{Proof of Theorem \ref{lowerbound}}
\label{proof:thm3}
The server has $N$ files $W_{[1:N]}$. Assume that the users are arranged in the lexicographic order of the subsets (of $[C]$ of size $r$) by which they are indexed. That is, $\{1,2,\dots,r\}$ will be the first in the order, $\{1,2,\dots,r-1,r+1\}$ will be the second and so on. Consider the set of first $s$ caches, where $s\in [r:C]$. The number of users who access caches only from that set is $\binom{s}{r}$. Let us focus on those $\binom{s}{r}$ users. Consider a demand vector $\mathbf{d}_1$ in which those $\binom{s}{r}$ users request for files $W_1,W_2,\dots,W_{\binom{s}{r}}$. That is, the first user (the user comes first in the lexicographic ordering among those $\binom{s}{r}$ users) demands $W_1$, the second user demands $W_2$, and so on. The remaining users request arbitrary files from $W_{[1:N]}$, which we are not interested in. Corresponding to $\mathbf{d}_1$, the server makes transmission $X_1$. From contents in the first $s$ caches $Z_{[1:s]}$ and transmission $X_1$, the considered $\binom{s}{r}$ users can collectively decode the first $\binom{s}{r}$ files (one file at each user). Now, consider a demand vector $\mathbf{d}_2$ in which those $\binom{s}{r}$ users request for files $W_{\binom{s}{r}+1},W_{\binom{s}{r}+2},\dots,W_{2\binom{s}{r}}$, and transmission $X_2$ corresponding to $\mathbf{d}_2$. From cache contents $Z_{[1:s]}$ and transmission $X_2$, those users can collectively decode the files $W_{[\binom{s}{r}+1:2\binom{s}{r}]}$. If we consider $\delta = \Big\lceil\frac{N}{\binom{s}{r}}\Big\rceil$ such demand vectors and the corresponding transmissions, all the $N$ files can be decoded at those $\binom{s}{r}$ user end. Thus, we have
\begingroup
\allowdisplaybreaks
\begin{subequations}
	\begin{align}
	N& = H(W_{[1:N]})\leq H(Z_{[1:s]},X_{[1:\delta]})\\&=    H(Z_{[1:s]})+H(X_{[1:\delta]}|Z_{[1:s]})\label{lb1}.
	\end{align}
\end{subequations}
Consider an integer $\ell \in [1:\delta]$. We can expand \eqref{lb1} as,
\begin{subequations}
	\begin{align}
	N&\leq sM+H(X_{[1:\ell]}|Z_{[1:s]})+H(X_{[\ell+1:\delta]}|Z_{[1:s]},X_{[1:\ell]})\\
	&\leq sM+H(X_{[1:\ell]})+H(X_{[\ell+1:\delta]}|Z_{[1:s]},X_{[1:\ell]},W_{[1:\tilde{N}]})\label{Wls}
	\end{align}
\end{subequations}
where $\tilde{N} = \min(N,\ell \binom{s}{r})$. Using the cache contents $Z_{[1:s]}$ and transmissions $X_{[1:\ell]}$, the files $W_{[1:\tilde{N}]}$ can be decoded, hence \eqref{Wls} follows. Let us define, $\omega_{s,\ell} \triangleq \min(C-s,\min\limits_i \binom{s+i}{r}\geq \ceil{\frac{N}{\ell}})$. We can bound the entropy of $\ell$ transmissions by $\ell R^*(M)$, where each transmission rate is $R^*(M)$. Thus, we have
\begin{subequations}
	\begin{align}
	&N\leq sM+\ell R^*(M)+\notag\\&\qquad H(X_{[\ell+1:\delta]},Z_{[s+1:s+\omega_{s,\ell}]}|Z_{[1:s]},X_{[1:\ell]},W_{[1:\tilde{N}]})\label{lRstar}\\
	&\leq sM+\ell R^*(M)+\underbrace{H(Z_{[s+1:s+\omega_{s,\ell}]}|Z_{[1:s]},X_{[1:\ell]},W_{[1:\tilde{N}]})}_{\triangleq \mu}\notag\\&\qquad+\underbrace{H(X_{[\ell+1:\delta]}|Z_{[1:s+\omega_{s,\ell}]},X_{[1:\ell]},W_{[1:\tilde{N}]})}_{\triangleq \psi} \label{mupsi}.
	\end{align}
\end{subequations}
\endgroup
Now, we find an upper bound on $\mu$ as follows:
\begin{subequations}
	\begin{align}
	\mu &= H(Z_{[s+1:s+\omega_{s,\ell}]}|Z_{[1:s]},X_{[1:\ell]},W_{[1:\tilde{N}]})\\
	&\leq H(Z_{[s+1:s+\omega_{s,\ell}]}|Z_{[1:s]},W_{[1:\tilde{N}]})\\
	&= H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\tilde{N}]})-H(Z_{[1:s]}|W_{[1:\tilde{N}]}).\label{mueqn}
	\end{align}
\end{subequations}
By considering any $s$ caches from $[1:s+\omega_{s,\ell}]$, we can write an inequality similar to the one in \eqref{mueqn}.That is,
\begin{equation}
\mu\leq H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\tilde{N}]})-H(Z_{\mathcal{A}}|W_{[1:\tilde{N}]})\label{toavg}
\end{equation}
where $\mathcal{A}\subseteq [s+\omega_{s,\ell}],|\mathcal{A}|=s$, and $Z_{\mathcal{A}}$ is the contents stored in the caches indexed by the elements in the set $\mathcal{A}$. That means we can find $\binom{s+\omega_{s,\ell}}{s}$ such inequalities. Averaging over all those inequalities, we get
\begin{align}
\mu\leq H(Z_{[1:s+\omega_{s,\ell}]}&|W_{[1:\tilde{N}]})-\notag\\&\frac{1}{\binom{s+\omega_{s,\ell}}{s}}\sum_{\substack{\mathcal{A}\subseteq [s+\omega_{s,\ell}] \\ |\mathcal{A}|=s}} H(Z_{\mathcal{A}}|W_{[1:\tilde{N}]})\label{mubound}.
\end{align}
By applying  Lemma \ref{Entropy} for the random variables $Z_{[1:s+\omega_{s,\ell}]}$, we get
\begin{align*}
\frac{1}{s+\omega_{s,\ell}} H(Z_{[1:s+\omega_{s,\ell}]}&|W_{[1:\tilde{N}]})\leq\\& \frac{1}{\binom{s+\omega_{s,\ell}}{s}}\sum_{\substack{\mathcal{A}\subseteq [s+\omega_{s,\ell}] \\ |\mathcal{A}|=s}} \frac{H(Z_{\mathcal{A}}|W_{[1:\tilde{N}]})}{s}.
\end{align*}
Upon rearranging, we have
\begin{align}
\frac{1}{\binom{s+\omega_{s,\ell}}{s}}\sum_{\substack{\mathcal{A}\subseteq [s+\omega_{s,\ell}] \\ |\mathcal{A}|=s}} H(&Z_{\mathcal{A}}|W_{[1:\tilde{N}]})\geq\notag\\& \frac{s}{s+\omega_{s,\ell}} H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\tilde{N}]})\label{mueqn2}.
\end{align}
Substituting \eqref{mueqn2} in \eqref{mubound}, we get
\begingroup
\allowdisplaybreaks
\begin{subequations}
	\begin{align*}
	\mu &\leq H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\tilde{N}]})-\frac{s}{s+\omega_{s,\ell}} H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\tilde{N}]})\\
	&= \frac{\omega_{s,\ell}}{s+\omega_{s,\ell}}H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\tilde{N}]}).
	\end{align*}
\end{subequations}
\endgroup
Now, consider two cases a) if $\tilde{N} = \min(N,\ell \binom{s}{r})=N$, then
\begin{align}
H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\tilde{N}]})=H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:N]})=0\label{mueqn3}
\end{align}
and b) if $\tilde{N} = \min(N,\ell \binom{s}{r})=\ell \binom{s}{r}$, then
\begingroup
\allowdisplaybreaks
\begin{subequations}
	\begin{align}
	H(Z_{[1:s+\omega_{s,\ell}]}&|W_{[1:\tilde{N}]})=H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\ell\binom{s}{r}]})\\&\leq H(Z_{[1:s+\omega_{s,\ell}]},W_{[\ell\binom{s}{r}+1:N]}|W_{[1:\ell\binom{s}{r}]})\\
	&= H(W_{[\ell\binom{s}{r}+1:N]}|W_{[1:\ell\binom{s}{r}]})+\notag\\&\qquad H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:N]})\\
	&\leq H(W_{[\ell\binom{s}{r}+1:N]})\leq N-\ell\binom{s}{r}\label{mueqn4}
	\end{align}
\end{subequations}
\endgroup
where \eqref{mueqn3} and \eqref{mueqn4} follow from the fact that the cache contents are the functions of the files. Therefore, we have
\begin{align}
H(Z_{[1:s+\omega_{s,\ell}]}|W_{[1:\tilde{N}]})\leq \left(N-\ell \binom{s}{r}\right)^+.
\end{align}
Therefore, we have the following upper bound on $\mu$:
\begin{align}
\mu \leq \frac{\omega_{s,\ell}}{s+\omega_{s,\ell}}\left(N-\ell \binom{s}{r}\right)^+.\label{mu}
\end{align}
Now, we find an upper bound on $\psi$, where $\psi = H(X_{[\ell+1:\delta]}|Z_{[1:s+\omega_{s,\ell}]},X_{[1:\ell]},W_{[1:\tilde{N}]})$.	\\
We consider two cases a) if $N\leq \ell\binom{s+\omega_{s,\ell}}{r}$, then it is possible to decode all the files $W_{[1:N]}$ from $Z_{[1:s+\omega_{s,\ell}]}$ and $X_{[1:\ell]}$ by appropriately choosing the demand vectors $\mathbf{d}_1,\mathbf{d}_2,\dots,\mathbf{d}_\delta$. Then the uncertainty in $X_{[\ell+1:\delta]}$ is zero. That is, when $N\leq \ell \binom{s+\omega_{s,\ell}}{r}$, we have $\psi = 0$.\\
b) The second case $N> \ell\binom{s+\omega_{s,\ell}}{r}$ means that, $\omega_{s,\ell}=C-s$. Note that, $\omega_{s,\ell}$ is defined such that using the first $s+\omega_{s,\ell}$ caches and $\ell$ transmissions, it is possible to decode the remaining $N-\ell \binom{s}{r}$ files by appropriately choosing the demands of the remaining $\binom{s+\omega_{s,\ell}}{r}-\binom{s}{r}$ users, if $N\leq \ell\binom{C}{r}$. That is, $N> \ell\binom{s+\omega_{s,\ell}}{r}$ means that $N> \ell\binom{C}{r}$. Then, we have
\begingroup
\allowdisplaybreaks
\begin{subequations}
	\begin{align}
	\psi &= H(X_{[\ell+1:\delta]}|Z_{[1:C]},X_{[1:\ell]},W_{[1:\tilde{N}]})\\
	&= H(X_{[\ell+1:\delta]}|Z_{[1:C]},X_{[1:\ell]},W_{[1:\ell\binom{C}{r}]})\label{psieqn1}\\
	&\leq H(X_{[\ell+1:\delta]},W_{[\ell\binom{C}{r}+1:N]}|Z_{[1:C]},X_{[1:\ell]},W_{[1:\ell\binom{C}{r}]})\\
	&\leq H(W_{[\ell\binom{C}{r}+1:N]}|Z_{[1:C]},X_{[1:\ell]},W_{[1:\ell\binom{C}{r}]})\notag\\ &\qquad +H(X_{[\ell+1:\delta]}|Z_{[1:C]},X_{[1:\ell]},W_{[1:N]})\\
	&= H(W_{[\ell\binom{C}{r}+1:N]}|Z_{[1:C]},X_{[1:\ell]},W_{[1:\ell\binom{C}{r}]})\label{psieqn2}\\
	&\leq H(W_{[\ell\binom{C}{r}+1:N]})= N-\ell\binom{C}{r}.
	\end{align}
\end{subequations}
\endgroup
From cache contents $Z_{[1:C]}$, and the transmissions $X_{[1:\ell]}$ it is possible to decode the files $W_{[1:\ell\binom{C}{r}]}$, hence \eqref{psieqn1} follows. Further, \eqref{psieqn2} follows from the fact that given $W_{[1:N]}$, there is no uncertainty in the transmissions. Thus, we have the upper bound on $\psi$,
\begin{align}
\psi \leq (N-\ell\binom{C}{r})^+ \label{psi}.
\end{align}
Substituting \eqref{mu} and \eqref{psi} in \eqref{mupsi}, we get
\begin{align*}
N \leq sM+&\ell R^*(M)+\\&\frac{\omega_{s,\ell}}{s+\omega_{s,\ell}}\left(N-\ell\binom{s}{r}\right)^+ + \left(N-\ell\binom{C}{r}\right)^+.
\end{align*}
Upon rearranging the terms, and optimizing over all the possible values of $s$ and $\ell$, we have the following lower bound on $R^*(M)$
\begin{align*}
&R^*(M) \geq \max_{\substack{s\in \{r,r+1,r+2,\hdots,C\} \\ \ell\in \left\{1,2,\hdots,\ceil{N/\binom{s}{r}}\right\}}} \frac{1}{\ell}\Big\{N-\frac{\omega_{s,\ell}}{s+\omega_{s,\ell}}\left(N-\ell\binom{s}{r}\right)^+\\&\hspace{4.5cm}- \left(N-\ell\binom{C}{r}\right)^+-sM\Big\}
\end{align*}
where $\omega_{s,\ell} = \min(C-s,\min\limits_i \binom{s+i}{r}\geq \ceil{\frac{N}{\ell}})$. This completes the proof of Theorem \ref{lowerbound}.\hfill $\blacksquare$

\subsection{Proof of Theorem \ref{optimality1}}
\label{proof:thm4}
First, we show that the rate $R(M) = 1-\frac{rM}{N}$ is achievable for $\frac{\binom{C}{r}-1}{r\binom{C}{r}}\leq \frac{M}{N}\leq \frac{1}{r}$. Substituting $t=C-r$ in \eqref{thm1eqn} gives $\frac{M}{N}=\frac{\binom{C}{r}-1}{r\binom{C}{r}}$ (refer Appendix \ref{AppendixB}), and $R = 1/\binom{C}{r}$. Similarly, $t=C-r+1$ gives $M/N=1/r$ and $R=0$. By memory sharing, the rate $R(M) = 1-\frac{rM}{N}$ is achievable for $\frac{\binom{C}{r}-1}{r\binom{C}{r}}\leq \frac{M}{N}\leq \frac{1}{r}$. Now, to show the converse, let us substitute $s=r$ and $\ell=N$ in \eqref{lowereqn}. That gives,
\begin{equation*}
	R^*(M)\geq 1-\frac{rM}{N}.
\end{equation*}
Therefore, we can conclude that
\begin{equation*}
	R^*(M)= 1-\frac{rM}{N}
\end{equation*}
for $\frac{\binom{C}{r}-1}{r\binom{C}{r}}\leq \frac{M}{N}\leq \frac{1}{r}$. This completes the proof Theorem \ref{optimality1}. \hfill $\blacksquare$
\subsection{Proof of Theorem \ref{optimality2}}
\label{proof:thm5}
From Theorem \ref{thm:scheme2}, we know that for the $(C,r,M,N)$ combinatorial MACC scheme the rate
\begin{equation*}
	R(M) = N-CM
\end{equation*}
is achievable when $0\leq M\leq \frac{N-\binom{C-1}{r}}{C}$.
By substituting $s=C$ and $\ell=1$, we get
\begin{equation*}
	R^*(M) \geq N-CM.
\end{equation*}
Thus, we conclude that
\begin{equation*}
	R^*(M) = N-CM
\end{equation*}
for $0\leq M\leq \frac{N-\binom{C-1}{r}}{C}$. \hfill$\blacksquare$
\section{Conclusion}
\label{conclusion}
In this work, we presented two coding schemes for the combinatorial MACC setting introduced in \cite{MKR2}. Both the presented schemes employ coding in the placement phase in addition to the coded transmissions in the delivery phase. That is, we showed that with the help of a coded placement phase, it is possible to achieve a reduced rate compared to the optimal coded caching scheme under uncoded placement. Finally, we derived an information-theoretic lower bound on the optimal rate-memory trade-off of the combinatorial MACC scheme and showed that the first scheme is optimal at a higher memory regime and the second scheme is optimal when the number of files with the server is no more than the number of users in the system.

\section*{Acknowledgment}
This work was supported partly by the Science and Engineering Research Board (SERB) of Department of Science and Technology (DST), Government of India, through J.C. Bose National Fellowship to B. Sundar Rajan, and by the Ministry of Human Resource Development (MHRD), Government of India, through Prime Minister’s Research Fellowship (PMRF) to K. K. Krishnan Namboodiri.

\begin{appendices}
	\section{}
	\label{AppendixZ}
	In this section, we calculate the normalized cache memory as a continuation of \eqref{mbyn1}. From \eqref{mbyn1}, we have
		\begin{align*}
			\frac{M}{N} &= \frac{(r-1)!\binom{C-1}{t-1})}{r!\binom{C}{t}}+\notag\\&\qquad\frac{\sum\limits_{b=1}^{r-1}\frac{r!}{(r-b)(r-b+1)}\left(\binom{C-1}{t-1}-\sum\limits_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}\right)}{r!\binom{C}{t}}\\
			&=\frac{\binom{C-1}{t-1}\left((r-1)!+\sum\limits_{b=1}^{r-1}\frac{r!}{(r-b)(r-b+1)}\right)}{r!\binom{C}{t}}-\\&\hspace{2cm}\frac{\sum\limits_{b=1}^{r-1}\frac{r!}{(r-b)(r-b+1)}\sum\limits_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}}{r!\binom{C}{t}}.
		\end{align*}
		By expanding and cancelling the terms, we get
		\begin{align*}
			\sum_{b=1}^{r-1}\frac{r!}{(r-b)(r-b+1)} &= r!\sum_{b=1}^{r-1}\left(\frac{1}{r-b}- \frac{1}{r-b+1}\right)\\
			& = r!\left(1- \frac{1}{r}\right)=(r-1)!(r-1).
		\end{align*}
		Thus, we have
		\begin{align*}
			\frac{M}{N}&=\frac{r!\binom{C-1}{t-1}-\sum\limits_{b=1}^{r-1}\frac{r!}{(r-b)(r-b+1)}\sum\limits_{i=1}^{b}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}}{r!\binom{C}{t}}.
		\end{align*}
		By changing the order of summation, we get
		\begin{align*}
			\frac{M}{N}&=\frac{r!\binom{C-1}{t-1}-\sum\limits_{i=1}^{r-1}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}\sum\limits_{b=i}^{r-1}\frac{r!}{(r-b)(r-b+1)}}{r!\binom{C}{t}}.
		\end{align*}
		By expanding and cancelling the terms, we get
		\begin{align*}
			\sum_{b=i}^{r-1}\frac{r!}{(r-b)(r-b+1)} &= r!\sum_{b=i}^{r-1}\left(\frac{1}{r-b}- \frac{1}{r-b+1}\right)\\
			 = r!&\left(1- \frac{1}{r-i+1}\right)=r!\frac{r-i}{r-i+1}.
		\end{align*}
		Therefore
		\begingroup
		\allowdisplaybreaks
		\begin{align*}
			\frac{M}{N}&=\frac{r!\binom{C-1}{t-1}-r!\sum\limits_{i=1}^{r-1}\frac{r-i}{r-i+1}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}}{r!\binom{C}{t}}\\
			&= \frac{\binom{C-1}{t-1}}{\binom{C}{t}}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{r-1}\frac{r-i}{r-i+1}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}\\
			&=\frac{t}{C}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{r-1}\frac{r-i}{r-i+1}\binom{r-1}{r-i}\binom{C-r}{t-r+i-1}\\
			&=\frac{t}{C}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{r-1}\frac{r-i}{r}\binom{r}{i-1}\binom{C-r}{t-r+i-1}.
	\end{align*}
	\endgroup
	\section{}
	\label{AppendixY}
	In this section, we calculate the normalized cache memory as a continuation of \eqref{mbyn2}. From \eqref{mbyn2}, we have
	\begin{align*}
		\frac{M}{N} &= \frac{(t-1)!\binom{C-1}{t-1}}{t!\binom{C}{t}}+\\&\hspace{1.5cm}\frac{\sum\limits_{b=1}^{t-1}\frac{t!}{(t-b)(t-b+1)}\left(\binom{C-1}{t-1}-\sum\limits_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1}\right)}{t!\binom{C}{t}}\\
		&=\frac{\binom{C-1}{t-1}\left((t-1)!+\sum\limits_{b=1}^{t-1}\frac{t!}{(t-b)(t-b+1)}\right)}{t!\binom{C}{t}}-\\&\hspace{1.5cm}\frac{\sum\limits_{b=1}^{t-1}\frac{t!}{(t-b)(t-b+1)}\sum\limits_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1}}{t!\binom{C}{t}}.
	\end{align*}
	By expanding and cancelling the terms, we get
	\begin{align*}
		\sum_{b=1}^{t-1}\frac{t!}{(t-b)(t-b+1)} &= t!\sum_{b=1}^{t-1}\left(\frac{1}{t-b}- \frac{1}{t-b+1}\right)\\
		& = t!\left(1- \frac{1}{t}\right)=(t-1)!(t-1).
	\end{align*}
	Thus, we have
	\begin{align*}
		\frac{M}{N}&=\frac{t!\binom{C-1}{t-1}-\sum\limits_{b=1}^{t-1}\frac{t!}{(t-b)(t-b+1)}\sum\limits_{i=1}^{b}\binom{r-1}{t-i}\binom{C-r}{i-1}}{t!\binom{C}{t}}.
	\end{align*}
	By changing the order of summation, we get
	\begin{align*}
		\frac{M}{N}&=\frac{t!\binom{C-1}{t-1}-\sum\limits_{i=1}^{t-1}\binom{r-1}{t-i}\binom{C-r}{i-1}\sum\limits_{b=i}^{t-1}\frac{t!}{(t-b)(t-b+1)}}{t!\binom{C}{t}}.
	\end{align*}
	By expanding and cancelling the terms, we get
	\begin{align*}
		\sum_{b=i}^{t-1}\frac{t!}{(t-b)(t-b+1)} &= t!\sum_{b=i}^{t-1}\left(\frac{1}{t-b}- \frac{1}{t-b+1}\right)\\
		 = t!&\left(1- \frac{1}{t-i+1}\right)=t!\frac{t-i}{t-i+1}.
	\end{align*}
	Therefore
	\begin{align*}
		\frac{M}{N}&=\frac{t!\binom{C-1}{t-1}-t!\sum\limits_{i=1}^{t-1}\frac{t-i}{t-i+1}\binom{r-1}{t-i}\binom{C-r}{i-1}}{t!\binom{C}{t}}\\
		&= \frac{\binom{C-1}{t-1}}{\binom{C}{t}}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{t-1}\frac{t-i}{t-i+1}\binom{r-1}{t-i}\binom{C-r}{i-1}\\
		&=\frac{t}{C}-\frac{1}{\binom{C}{t}}\sum\limits_{i=1}^{t-1}\frac{t-i}{r}\binom{r}{t-i+1}\binom{C-r}{i-1}.
	\end{align*}

	\section{}
	\label{AppendixA}
	In this section, we show that, if we substitute $t=C-r+1$ in \eqref{thm1eqn}, we get $\frac{M}{N}=\frac{1}{r}$. \\
	a) Consider the case $t\geq r$. Then, we have
	\begin{align}
	\frac{M}{N}&=\frac{t}{C}-\frac{1}{r\binom{C}{r-1}}\sum\limits_{i=1}^{r-1}(r-i)\binom{r}{i-1}\binom{C-r}{r-i}\notag\\
	&=\frac{C-r+1}{C}-\frac{1}{r\binom{C}{r-1}}\sum\limits_{i=1}^{r-1}(r-i)\binom{r}{i-1}\binom{C-r}{r-i}\notag.
	\end{align}
	We can use the following identity to compute the above sum.
	\begin{lem}[\cite{Mes}]
		\label{lemmavander}
		Let $n_1,n_2$ be arbitrary positive integers. If $m$ is a positive integer such that $m\leq n_1+n_2$. Then
		\begin{equation*}
		\sum\limits_{k_1+k_2=m} k_1\binom{n_1}{k_1}\binom{n_2}{k_2}=\frac{mn_1}{n_1+n_2}\binom{n_1+n_2}{m}
		\end{equation*}
		where summation ranges over all non-negative integers $k_1$ and $k_2$ such that $k_1\leq n_1$, $k_2\leq n_2$ and $k_1+k_2=m$.
	\end{lem}
	Lemma \ref{lemmavander} is a generalization of the Vandermonde identity:
	\begin{equation}
	\label{eqnvander}
	\sum\limits_{k_1+k_2=m} \binom{n_1}{k_1}\binom{n_2}{k_2}=\binom{n_1+n_2}{m}.
	\end{equation}
	From Lemma \ref{lemmavander}, we have
	\begin{equation*}
	\sum\limits_{i=1}^{r-1}(r-i)\binom{r}{i-1}\binom{C-r}{r-i} = \frac{(r-1)(C-r)\binom{C}{r-1}}{C}.
	\end{equation*}

	Thus, we get
	\begin{align}
	\frac{M}{N}&=\frac{C-r+1}{C}-\frac{(r-1)(C-r)\binom{C}{r-1}}{rC\binom{C}{r-1}}\notag.\\
	&=\frac{C-r+1}{C}-\frac{(r-1)(C-r)}{rC} = \frac{1}{r}\notag.
	\end{align}
	b) Now, consider the case $t<r$. Then, we have
	\begin{align}
	\frac{M}{N}&=\frac{t}{C}-\frac{1}{r\binom{C}{t}}\sum\limits_{i=1}^{t-1}(t-i)\binom{r}{t-i+1}\binom{C-r}{i-1}\notag\\
	&=\frac{t}{C}-\frac{\frac{rt}{C}\binom{C}{t}-\binom{C}{t}}{r\binom{C}{t}}\label{appeqn20}\\
	&=\frac{t}{C}-\frac{rt-C}{rC} = \frac{1}{r}\notag
	\end{align}
	where \eqref{appeqn20} follows from Lemma \ref{lemmavander} and \eqref{eqnvander}. Thus we established that $t=C-r+1$ corresponds to $\frac{M}{N} = \frac{1}{r}$.\hfill $\blacksquare$

	\section{}
	\label{AppendixB}
	In this section, we show that $t=C-r$ results in $\frac{M}{N}=\frac{\binom{C}{r}-1}{r\binom{C}{r}}$ in \eqref{thm1eqn}.

	\noindent a) Consider the case $t=C-r\geq r$. Then,
	\begin{align}
		\frac{M}{N}&=\frac{\binom{C-1}{t-1}}{\binom{C}{t}}-\frac{1}{\binom{C}{C-r}}\sum\limits_{i=1}^{r-1}\frac{r-i}{r}\binom{r}{i-1}\binom{C-r}{C-2r+i-1}\notag\\
		&=\frac{\binom{C-1}{C-r-1}}{\binom{C}{r}}-\frac{1}{r\binom{C}{r}}\sum\limits_{i=1}^{r-1}(r-i)\binom{r}{i-1}\binom{C-r}{r-i+1}\label{appeqn-1}.
	\end{align}
Let us compute the second term in \eqref{appeqn-1}. We have
	\begin{align}
		\sum\limits_{i=1}^{r-1}(r-i)&\binom{r}{i-1}\binom{C-r}{r-i+1} =\notag\\ &\sum\limits_{i=1}^{r-1}(r-i+1)\binom{r}{i-1}\binom{C-r}{r-i+1}-\notag\\
		&\hspace{2cm}\sum\limits_{i=1}^{r-1}\binom{r}{i-1}\binom{C-r}{r-i+1}\label{appeq0}.
	\end{align}
Using Lemma \ref{lemmavander} and \eqref{eqnvander}, we get
\begin{align}
\sum\limits_{i=1}^{r-1}&(r-i+1)\binom{r}{i-1}\binom{C-r}{r-i+1}\notag\\ &=\sum\limits_{i=1}^{r+1}(r-i+1)\binom{r}{i-1}\binom{C-r}{r-i+1}-r(C-r)\notag\\
& \hspace{3cm}=\frac{r(C-r)}{C}\binom{C}{r}-r(C-r) \label{appeq1}
\end{align}
where \eqref{appeq1} follows from Lemma \ref{lemmavander}. Similarly, by using \eqref{eqnvander}, we get
\begin{align}
\sum\limits_{i=1}^{r-1}\binom{r}{i-1}\binom{C-r}{r-i+1}=\binom{C}{r}-r(C-r)-1.\label{appeq2}
\end{align}
By substituting \eqref{appeq1} and \eqref{appeq2} in \eqref{appeqn-1}, we get
	\begin{align}
\frac{M}{N}&=\frac{r\binom{C-1}{C-r-1}-\frac{r(C-r)}{C}\binom{C}{r}+\binom{C}{r}-1}{r\binom{C}{r}}\notag\\
&=\frac{\binom{C}{r}-1}{r\binom{C}{r}}\label{appeq3}.
\end{align}

\noindent b) Consider the case $t<r$. Then, we have
	\begin{align}
\frac{M}{N}&=\frac{\binom{C-1}{t-1}}{\binom{C}{t}}-\frac{1}{\binom{C}{C-r}}\sum\limits_{i=1}^{t-1}\frac{t-i}{r}\binom{r}{t-i+1}\binom{C-r}{i-1}\notag\\
&=\frac{\binom{C-1}{C-r-1}}{\binom{C}{r}}-\frac{1}{r\binom{C}{r}}\sum\limits_{i=1}^{t-1}(t-i)\binom{r}{t-i+1}\binom{C-r}{i-1}\label{appeqn9}.
\end{align}
Let us compute the second term in \eqref{appeqn9} by using Lemma \ref{lemmavander} and \eqref{eqnvander}. We have
\begin{align}
\sum\limits_{i=1}^{t-1}(t-i)&\binom{r}{t-i+1}\binom{C-r}{i-1} =\notag\\ &\sum\limits_{i=1}^{t-1}(t-i+1)\binom{r}{t-i+1}\binom{C-r}{i-1}-\notag\\
&\hspace{2cm}\sum\limits_{i=1}^{t-1}\binom{r}{t-i+1}\binom{C-r}{i-1}\notag\\
&=\frac{r(C-r)}{C}\binom{C}{r}-\binom{C}{r}+1.\label{appeq11}
\end{align}
Substituting \eqref{appeq11} in \eqref{appeqn9}, we get,
\begin{equation*}
\frac{M}{N} = \frac{\binom{C}{r}-1}{r\binom{C}{r}}.
\end{equation*}
Thus we established that $t=C-r$ corresponds to $\frac{M}{N} = \frac{\binom{C}{r}-1}{r\binom{C}{r}}$.

\end{appendices}