## 3 Code Reuse via Principal Component Analysis  
As it was shown in [21], PCA can lead to transmission complexity reduction in MIMO-CDMA wireless configurations. In this context, only the primary eigenvector of the corresponding correlation matrix \(\mathbf{C}_{k}\) of received data is sent back to the transmitter, which formulates a modified matrix \(\widetilde{\mathbf{C}}_{k}\)  
\[\mathbf{C}_{k}(l,l^{\prime})=\frac{1}{S}\underset{s=1}{\overset{S}{\sum}}\zeta _{k,l,s}\overline{\zeta_{k,l^{\prime},s}}\;1\leq l,l^{\prime}\leq L \tag{5}\]  
\[\widetilde{\mathbf{C}}_{k}=\mathbf{V}(1:L,1:w)^{\text{H}}\mathbf{\Sigma}(1:w, 1:w)\mathbf{V}(1:L,1:w) \tag{6}\]  
In Equations (5) and (6), \(S\) is the total number of samples and \(w\) is the number of equivalent eigenvectors (denoted as \(\mathbf{V}\)) and eigenvalues in the diagonal matrix \(\mathbf{\Sigma}\) for correlation matrix reconstruction (in our case \(w\) equals 1 in order to reduce overall feedback burden [21]). Notation _a:b_ indicates all elements from \(a\) to \(b\) with a unity step. Note that the (_i,j_) entry of \(\mathbf{C}_{k}\) represents the overall correlation among two different reception branches in the 2-D space-time RAKE receiver. For MSs with increased channel quality, or in cases of limited multiple access interference, it is expected that non-diagonal terms of correlation matrices will be significantly reduced compared to the diagonal ones. In the proposed approach, which is described in Algorithm 2, MS grouping is performed as follows  
\[(u_{o},u_{1})\leftarrow\underset{(k,k^{\prime})\in I_{U_{o}}}{\operatorname{ argmax}}\times\left\{\frac{\prod\limits_{l=1}^{L}\left|\widetilde{\mathbf{C}}_{k}(l,l) \right|}{\mathbf{t}_{k}^{\text{H}_{k}}\underset{l=1}{\overset{L}{\sum}}\; \sum\limits_{l^{\prime}=1,l^{\prime}\
eq l}^{L}\left|\widetilde{\mathbf{C}}_{k }(l,l^{\prime})\right|^{2}}\right\} \tag{7}\]  
In Equation (7), product usage ensures that weak channel conditions in certain transmission modes are properly weighted. MSs \(u_{o}\) and \(u_{1}\) are selected as a NOMA group (NG) (NG) throughout the rest of this manuscript, while \(NG_{m}\) is the maximum number of NGs) that now share the same allocated code (i.e., the one originally assigned to MS \(u_{o}\)). For a set of \(K\) active MSs (denoted as \(U_{o}\)), then \(J_{U_{o}}\) indicates all possible \(2\times\left( \begin{array}{c}K\\ 2\end{array} \right)=\frac{K!}{(K-2)! }\) pair combinations (note that the argument of Equation (7) is not symmetric). Afterwards, SIC is performed per NG, starting with the decoding of the symbol of user \(u_{o}\) (see Algorithm 2, where \(C\) denotes the transmitted symbol constellation). For example, if \(K=4\) active users, then \(U_{o}=\{1,2,3,4\}\) and \(J_{U_{o}}=\{(1,2),(1,3),(1,4),(2,3),(2,4),(3,4),(2,1),(3,1),(4,1),(3,2),(4,2),(4,3)\}\). Considering now 2 NGs, then if for example in the first iteration the set (2,3) of MSs maximizes the performance metric of Equation (7), \(U_{1}\leftarrow\{2,3\}\), \(U_{o}=\{1,4\}\) and \(J_{U_{o}}=\{(1,4),(1,5),(4,5),(4,1),(5,1),(5,4)\}\). In this case, in the next step unavoidably \(U_{2}\leftarrow\{1,4\}\), \(U_{o}\leftarrow\{\}\). It should be noted at this point that in our proposed approach, transmission vector formulation is performed locally at MSs. Hence, the required feedback is minimized, since MSs send back to their serving BS only the primary eigenvector of the correlation matrix along with the corresponding eigenvalue and the transmit vector. The BS then informs all involved MSs in an NG with the transmission vectors to be used during SIC decoding. With respect to Figure 1, and unlike other proposed approaches in literature, NOMA users can now have the same transmission power levels as in the OMA case. As it will be shown in the results section, average BER values can be maintained at practically the same levels compared to OMA transmission schemes.