  We give efficient protocols and matching accuracy lower bounds for frequency
estimation in the local model for differential privacy. In this model,
individual users randomize their data themselves, sending differentially
private reports to an untrusted server that aggregates them.
  We study protocols that produce a succinct histogram representation of the
data. A succinct histogram is a list of the most frequent items in the data
(often called "heavy hitters") along with estimates of their frequencies; the
frequency of all other items is implicitly estimated as 0.
  If there are $n$ users whose items come from a universe of size $d$, our
protocols run in time polynomial in $n$ and $\log(d)$. With high probability,
they estimate the accuracy of every item up to error
$O\left(\sqrt{\log(d)/(\epsilon^2n)}\right)$ where $\epsilon$ is the privacy
parameter. Moreover, we show that this much error is necessary, regardless of
computational efficiency, and even for the simple setting where only one item
appears with significant frequency in the data set.
  Previous protocols (Mishra and Sandler, 2006; Hsu, Khanna and Roth, 2012) for
this task either ran in time $\Omega(d)$ or had much worse error (about
$\sqrt[6]{\log(d)/(\epsilon^2n)}$), and the only known lower bound on error was
$\Omega(1/\sqrt{n})$.
  We also adapt a result of McGregor et al (2010) to the local setting. In a
model with public coins, we show that each user need only send 1 bit to the
server. For all known local protocols (including ours), the transformation
preserves computational efficiency.
