  Codes for rank modulation have been recently proposed as a means of
protecting flash memory devices from errors. We study basic coding theoretic
problems for such codes, representing them as subsets of the set of
permutations of $n$ elements equipped with the Kendall tau distance. We derive
several lower and upper bounds on the size of codes. These bounds enable us to
establish the exact scaling of the size of optimal codes for large values of
$n$. We also show the existence of codes whose size is within a constant factor
of the sphere packing bound for any fixed number of errors.
