  Caching is a technique to reduce the communication load in peak hours by
prefetching contents during off-peak hours. An information-theoretic framework
for coded caching was introduced by Maddah-Ali and Niesen in a recent work,
where it was shown that significant improvement can be obtained compared to
uncoded caching. Considerable efforts have been devoted to identify the precise
information-theoretic fundamental limits of the coded caching systems, however
the difficulty of this task has also become clear. One of the reasons for this
difficulty is that the original coded caching setting allows all possible
multiple demand types during delivery, which in fact introduces tension in the
coding strategy. In this paper, we seek to develop a better understanding of
the fundamental limits of coded caching by investigating systems with certain
demand type restrictions. We first consider the canonical three-user three-file
system, and show that, contrary to popular beliefs, the worst demand type is
not the one in which all three files are requested. Motivated by these
findings, we focus on coded caching systems where every file must be requested
by at least one user. A novel coding scheme is proposed, which can provide new
operating points that are not covered by any previously known schemes.
