$\newcommand{\bvec}[1]{\boldsymbol{\mathrm{#1}}}$ The following question is very much about a mathematical detail in a physics derivation, but I would like to hear what the mathematicians have to say, and if there's any recommended resources for me to look into.
In a proof of the Bloch theorem in Ashcroft & Mermin's Solid State Physics, it uses the translational operator $T_\bvec{R}$ with respect to a translation vector $\bvec{R}$ such that for any function $f(\bvec{r})$ $$ T_\bvec{R}f(\bvec{r}) = f(\bvec{r}+\bvec{R}). $$
I am wondering if such an operator always exists for any function $f(\bvec{r}): \mathbb{R}^n\to\mathbb{R}$ we can think of, and if they can be explicitly constructed.
A simple enough example I can think of right now is $$ T_\bvec{R} = e^{i\bvec{k}\cdot\bvec{R}} $$ for the function $$ f(\bvec{r}) = e^{i\bvec{k}\cdot\bvec{r}}. $$