Solution (source code)

= Solution

Measure each generator $S_j$. If a Pauli error $E$ has occurred, its outcome is $(-1)^{s_j}$, where
$$
S_jE=(-1)^{s_j}ES_j,
\qquad s_j\in\{0,1\}.
$$
The bit vector $s=(s_1,\ldots,s_m)$ is the <error syndrome>. Choose one representative $E_s$ with this syndrome. Another Pauli $E$ has the same syndrome exactly when $E_s^\dagger E$ commutes with every $S_j$, namely when $E_s^\dagger E\in C(S)$. Therefore
$$
E\in E_sC(S).
$$
This <stabilizer-syndrome coset> is all the syndrome reveals: multiplication by a stabilizer changes nothing on the code, while multiplication by an element of $C(S)\setminus S$ can change the logical state without changing any syndrome bit.