A Schwartz function on $\mathbb R^d$ is a $C^\infty$ function, such that all differentials of order $k \ge 0$ decay faster than any polynomial. They include the class $C^\infty_c(\mathbb R^d)$ of compactly supported, smooth functions.

I would like two know, if for every Schwartz function $f$, there are Schwartz functions $g,h$ such that $f(x)=g(x)h(x)$ for all $x \in \mathbb R^d$. If $f \in C^\infty_c$, we can choose $g=f$ and $h$ as a cutoff function, such that $f(x) \neq 0 \implies h(x)=1$ to get such a (trivial) representation. For a general Schwartz function, I was unable to find a construction or a counter example.