# On Compressed Sensing of Binary Signals for the Unsourced Random Access Channel
## 3 Simulation Results
### End-to-End Performance in Grant-Based Random Access
If all \(k\) active users chose messages that begin with a different string of \(J\) bits, the vector \(\boldsymbol{x}\) will further be in \(\{0,1\}^{M}\). For our choices of \(J\) and \(k\) described below, typically almost all entries of \(\boldsymbol{x}\) will be binary. The basestation (which is now the receiver) applies Algorithm 1 to estimate \(\boldsymbol{x}\). In the end, we compute \(p_{1}^{(T+1)}(i)\) for any \(i\in[M]\), and output a list consisting of the \(k\) coordinates with the highest \(p_{1}^{(T+1)}(i)\). * **Phase 2:** The basestation applies a set partitioning scheme for collision-free feedback, as described in [PERSON] and [PERSON] (2018), for broadcasting to the users a list of the \(k\) strings of \(J\) prefixes it has decoded in phase 1. Naively, this would require broadcasting a message of \(k\cdot J\) bits. However, as shown in [PERSON] and [PERSON] (2018) using a more intelligent scheme, this can information theoretically be done with about \(k\cdot\lg_{2}(e)\) bits, and practical schemes can encode this information using less than \(2k\) bits. Each active user decodes the message transmitted by the basestation and finds the location of the \(J\) bits prefix of its message within the list of \(k\) prefixes that was transmitted. * **Phase 3:** The remaining \(n_{2}=n-n_{1}\) channel uses are split to \(k\) slots, each of length \(n^{\prime}=n_{2}/k\). Each active user transmits the remaining \(B-J\) bits of its message during the slot whose index it has decoded in Phase 2. To this end, off-the-shelf point-to-point codes are used. Active users that did not find their \(J\) bits prefix in the list of Phase 2, do not transmit a thing in Phase 3. Note that in the end of this procedure the receiver outputs a list of at most \(k\) messages. The message sent by a particular active user enters the list the decoder outputs whenever neither of the following error events occur:  
1. [label=()]
2. Another active user chose a message with the same \(J\) bits prefix, causing a collision in Phase 1 above. 3. The \(J\) bits prefix of the user's message did not enter the list produced by the basestation in Phase 2. 4. The user failed to decode the message sent from the basestation in Phase 2. 5. There was a decoding error in the point-to-point transmission of that user in Phase 3. For the remainder of this discussion, we neglect the cost of Phase 2 in terms of channel resources (energy and bandwidth) and its contribution to the error probability. We do this to avoid the need to model the broadcast channel from the basestation to the active users. In light of [PERSON] and [PERSON] [71], the message sent by the basestation in Phase 2 is significantly shorter than the messages sent by the active users. Adding this to the fact that the basestation is typically less power-constrained than the end-devices in machine-to-machine type communication, it follows that indeed Phase 2 will usually have negligible effect in both aspects (bandwidth and error probability). As mentioned above, our performance figure of merit is the per-user error probability. We conducted experiments to estimate the expected performance of this end-to-end scheme. In each experiment, each of \(k\) users generates a random message of \(B\) bits to be transmitted. Let \(x\in\{0,1,\dots,k\}^{2^{\prime}}\) be such that \(x_{m}=\) the number of users who sent message \(m\) during Phase 1. The per-user error probability for Phase 1 is  
\[\varepsilon_{1}=\frac{1}{k}\sum_{i=1}^{k}\Pr\Bigl{(}x_{m(i)}>1\,\vee\,m(i) \
otin\mathcal{L}\Bigr{)}\,,\]  
where \(\mathcal{L}\) is the list of \(k\) messages returned by the base station, and \(m(i)\) is the message transmitted by user \(i\). The error probability \(\varepsilon_{1}\) is estimated via Monte-Carlo simulation.