Let $G$ be a finite group, and let $S_1, ..., S_n$ be its nontrivial Sylow subgroups. Assume all $S_i$ are normal in $G$.
I need to prove that $G = S_1...S_n$, that is, $\left|S_1...S_n\right| = \left|S_1\right|...\left|S_n\right|$?
Obviously, if $|G| = p^{k_1}_1...p^{k_n}_n$ is the prime factorization of the order of $G$, then ( after reordering, if needed ), $|S_i| = p^{k_i}_i$ by the definition of a $p$-Sylow subgroup.
By these considerations, $S_i \cap S_j = \left\{e \right\}$ for $i \neq j$ (a consequence of Lagrange's theorem).
But how to prove that $|S_1...S_n| = |S_1|...|S_n|$?
The proofs I have found simply say: "by order considerations".
Let $x\in S_i, y\in S_j,i\neq j, [x,y]=xyx^{-1}y^{-1}=x(yx^{-1}y^{-1}),$ since $S_i$ is normal, $yx^{-1}y^{-1}\in S_i$, thus $[x,y]\in S_i$,$[x,y]=(xyx^{-1})y^{-1}$ since $S_j$ is normal, $xyx^{-1}\in S_j, [x,y]\in S_i\cap S_j=\{e\}, xy=yx$.
$f:S_1\times ..\times S_n\rightarrow G, f(s_1,..,s_n)=s_1..s_n$ is well defined and injective.To see this: $s_1..s_n=1$ implies that $(s_1..s_n)^{p_2^{k_2}..p_n^{k_n}}=s_1^{p_2^{k_2}..p_n^{k_n}}=e$ This implies that $s_1=e$ $gcd(p_1,p_i)=1, i>1$. Recursively, we deduce that $s_i=e$ ans $f$ is injective, thus is an isomorphism since the source and target of $f$ have the same cardinal.