Let $S$ be a non-empty set, such that $|S|=|S+S|$. Prove that $|2^S|=|S×2^{S}|$.
I found an answer for $\mathbb{N}$. It is possible to construct two injective functions and finish the proof by using Cantor-Bernstein-Schröder theorem:
$f:2^S \rightarrow S×2^S$
$(a_1,a_2, \ldots) \mapsto (1,a_1,a_2, \ldots)$
$g:S×2^S \rightarrow 2^S$
$(n,(a_1,a_2,\ldots )) \mapsto (0,a_1,0,a_2,\ldots, 0, a_{n-1},1,a_n,0,\ldots)$ (1 on n-th place)
How can I prove this for every such a set?