shared error-free link. In this setting, each user has a local cache of size $M$, which can be used to prefetch the contents (a library of $N$ files). The objective is to design the caching functions, such that in a following delivery phase, the server can serve the user demands with efficient bandwidth usage (measured by the communication rate $R$). For this case, the peak rate vs. memory tradeoff (the tradeoff between maximum $R$ over all possible user demands and $M$) was formulated and characterized within a factor of $12$ [@maddah-ali12a]. This caching framework has been extended to many scenarios, including decentralized caching [@maddah-ali13], online caching [@pedarsani13], caching with nonuniform demands [@niesen13; @zhang15; @ji2015order], device-to-device caching [@ji14b], caching on file selection networks [@lim2016information], caching on broadcast channels [@bidokhti2016noisy], caching for channels with delayed feedback with channel state information [@zhang2015fundamental], hierarchical cache networks [@hachem14; @karamchandani14], and caching on interference channels [@maddah2015cache; @naderializadeh2016fundamental; @7996347], among others. Many of these extensions share similar ideas in terms of the achievability and the converse bounds. Therefore, if we can improve the results for the basic bottleneck caching network, the ideas can be used to improve the results in other cases as well.

In the literature, 