within factor of $2.00884$. To prove this result, we essentially demonstrate that our new converse is within a factor of $2.00884$ from the achievable scheme developed in \[21\] for all possible parameter values.

Moreover, we develop a second converse bound, which is proved by carefully dividing the set of all user demands into certain subsets, and lower bounding the communication rate within each subset separately. Unlike the first converse, it exploits the scenarios where users may have common demands. This enables improvement upon the first converse, and allows exact characterization of the rate-memory tradeoff for systems with up to $5$ users.

The rest of this paper is organized as follows. In Section \[sec:sys\], we formally define the caching framework and the rate-memory tradeoff. Then in Section \[sec:main\] we summarize our main results. Section \[sec:ge\] proves our first main result, which characterizes the peak rate-memory tradeoff within a constant factor of $2.00884$ for all possible parameter values, and characterizes this tradeoff within a factor of $2$ when the number of files is large. Section \[sec:ge\] proves the converse bound that is needed to establish this characterization. For brevity, we prove the rest of the results in appendices.

System Model and Problem 