  In this work, we consider $q$-ary signature codes of length $k$ and size $n$
for a noisy adder multiple access channel. A signature code in this model has
the property that any subset of codewords can be uniquely reconstructed based
on any vector that is obtained from the sum (over integers) of these codewords.
We show that there exists an algorithm to construct a signature code of length
$k = \frac{2n\log{3}}{(1-2\tau)\left(\log{n} + (q-1)\log{\frac{\pi}{2}}\right)}
+\mathcal{O}\left(\frac{n}{\log{n}(q+\log{n})}\right)$ capable of correcting
$\tau k$ errors at the channel output, where $0\le \tau < \frac{q-1}{2q}$.
Furthermore, we present an explicit construction of signature codewords with
polynomial complexity being able to correct up to $\left( \frac{q-1}{8q} -
\epsilon\right)k$ errors for a codeword length $k = \mathcal{O} \left (
\frac{n}{\log \log n} \right )$, where $\epsilon$ is a small non-negative
number. Moreover, we prove several non-existence results (converse bounds) for
$q$-ary signature codes enabling error correction.
