  Private computation in a distributed storage system (DSS) is a generalization
of the private information retrieval (PIR) problem. In such setting a user
wishes to compute a function of $f$ messages stored in $n$ noncolluding coded
databases, i.e., databases storing data encoded with an $[n,k]$ linear storage
code, while revealing no information about the desired function to the
databases. We consider the problem of private polynomial computation (PPC). In
PPC, a user wishes to compute a multivariate polynomial of degree at most $g$
over $f$ variables (or messages) stored in multiple databases. First, we
consider the private computation of polynomials of degree $g=1$, i.e., private
linear computation (PLC) for coded databases. In PLC, a user wishes to compute
a linear combination over the $f$ messages while keeping the coefficients of
the desired linear combination hidden from the database. For a linearly encoded
DSS, we present a capacity-achieving PLC scheme and show that the PLC capacity,
which is the ratio of the desired amount of information and the total amount of
downloaded information, matches the maximum distance separable coded capacity
of PIR for a large class of linear storage codes. Then, we consider private
computation of higher degree polynomials, i.e., $g>1$. For this setup, we
construct two novel PPC schemes. In the first scheme, we consider Reed-Solomon
coded databases with Lagrange encoding, which leverages ideas from recently
proposed star-product PIR and Lagrange coded computation. The second scheme
considers the special case of coded databases with systematic Lagrange
encoding. Both schemes yield improved rates, while asymptotically, as
$f\rightarrow \infty$, the systematic scheme gives a significantly better
computation retrieval rate compared to all known schemes up to some storage
code rate that depends on the maximum degree of the candidate polynomials.
