Multi-Symbol Digital AirComp via Modulation Design and Power Adaptation

Extracted source text · arXiv 2507.08670

\documentclass[journal]{IEEEtran}
% \IEEEoverridecommandlockouts
% The preceding line is only needed to identify funding in the first footnote. If that is unneeded, please comment it out.
\usepackage{cite}
\usepackage{amsmath,amssymb,amsfonts,bm}
\usepackage[linesnumbered,ruled,vlined]{algorithm2e}
\usepackage{amsthm}
\usepackage{dsfont}
\usepackage{algorithmic}
% \usepackage{geometry} 
\usepackage{subfigure}
\usepackage{graphicx}
\usepackage{textcomp}
 \usepackage{threeparttable}
\usepackage{xcolor}
\usepackage{bbm}
\usepackage[nolist,withpage]{acronym}
\usepackage{array}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{dsfont}
\pgfplotsset{compat=newest}

 % ----------------- Colors -----------------------
\definecolor{copperrose}{rgb}{0.6, 0.4, 0.4}
\definecolor{azure}{rgb}{0.0, 0.5, 1.0}
\definecolor{ashgrey}{rgb}{0.7, 0.75, 0.71}
\definecolor{chestnut}{rgb}{0.8, 0.36, 0.36}
\definecolor{airforceblue}{rgb}{0.36, 0.54, 0.66}
\definecolor{cadmiumorange}{rgb}{0.93, 0.53, 0.18}
\definecolor{bleudefrance}{rgb}{0.19, 0.55, 0.91}
\definecolor{carolinablue}{rgb}{0.6, 0.73, 0.89}
\definecolor{blue(ncs)}{rgb}{0.0, 0.53, 0.74}
\definecolor{dodgerblue}{rgb}{0.12, 0.56, 1.0}
\definecolor{cssgreen}{rgb}{0.0, 0.5, 0.0}
\definecolor{cadmiumgreen}{rgb}{0.0, 0.42, 0.24}
\definecolor{cadmiumorange}{rgb}{0.93, 0.53, 0.18}
\definecolor{amaranth}{rgb}{0.9, 0.17, 0.31}
\definecolor{bluegray}{rgb}{0.4, 0.6, 0.8}
\definecolor{cerulean}{rgb}{0.0, 0.48, 0.65}
\definecolor{ceil}{rgb}{0.57, 0.63, 0.81}


% Modification in the acronym package to call lower case in the text, but use upper case in the % 
% list of acronyms
\usepackage{etoolbox}
\makeatletter
\newif\if@in@acrolist
\AtBeginEnvironment{acronym}{\@in@acrolisttrue}
\newrobustcmd{\LU}[2]{\if@in@acrolist#1\else#2\fi}

\newcommand{\ACF}[1]{{\@in@acrolisttrue\acf{#1}}}

% \def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em
%     T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
\begin{document}

\input{acronyms.tex}
\title{Multi-Symbol Digital AirComp via \\ Modulation Design and Power Adaptation
%{\footnotesize \textsuperscript{*}Note: Sub-titles are not captured in Xplore and
%should not be used}
%\thanks{Identify applicable funding agency here. If none, delete this.}
}



\author{Xiaojing Yan,~\IEEEmembership{Member,~IEEE}, Saeed Razavikia,~\IEEEmembership{Member,~IEEE}, Carlo Fischione,~\IEEEmembership{Fellow,~IEEE}\\
 	\thanks{All the authors are with the School of Electrical Engineering and Computer Science KTH Royal Institute of Technology, Stockholm, Sweden (e-mail: xiay@kth.se, sraz@kth.se, carlofi@kth.se). C. Fischione is also with Digital Futures of KTH. }
   
}

\newtheorem{theorem}{Theorem}
\newtheorem{prop}{Proposition}
\newtheorem{lem}{Lemma}
\newtheorem{rem}{Remark}



% \newenvironment{proof}{\paragraph{Proof:}}{\hfill$\square$}
\maketitle
\thispagestyle{empty}
\pagestyle{empty}
%\input{acronyms.tex}

\begin{abstract}

In this paper, we consider digital \ac{AirComp} and introduce a new multi-symbol modulation framework called \ac{SeMAC}. Building upon ChannelComp, a general framework for designing modulation schemes to support arbitrary function computation over a \ac{MAC}, \ac{SeMAC} maps each input value to a sequence of modulated symbols using distinct constellation diagrams across multiple time slots. This extension generalizes ChannelComp by enabling flexible modulation design across multiple transmissions, thereby enhancing reliability against channel noise. We formulate the modulation design as a non-convex optimization problem, apply matrix lifting to relax it into a \ac{SDP}, and recover a feasible modulation solution by solving a low rank approximation. For scenarios where the modulation formats cannot be changed, we further develop a power adaptation scheme that adjusts amplitude and phase of the modulated symbols while preserving the modulation structure. Numerical results show that \ac{SeMAC} can achieve a reliable computation by reducing the computation error up to 18~dB compared to other existing methods, particularly for the product function.


\end{abstract}

\begin{IEEEkeywords}
Over-the-air computation, digital modulation, power adaptation  
\end{IEEEkeywords}

\section{Introduction}

\acresetall

With the widespread deployment of \ac{IoT}, cellular networks are shifting from “connected everything” in 5G to “connected intelligence” in 6G systems~\cite{letaief2019roadmap}. This shift is driven by the growing need to process distributed data at the network edge devices~\cite{wang2023road}. In this context, \ac{AirComp} has emerged as a promising technique that leverages the signal superposition property to compute functions directly during transmission~\cite{csahin2023survey}. The information-theoretic studies~\cite{nazer2007computation} shows that such joint computation-communication designs can outperform separating communication from computation in terms of efficiency and latency.

However, analog \ac{AirComp} relies on uncoded transmission, making it vulnerable to noise and fading, and incompatible with modern digital infrastructures~\cite{hellstrom2022wireless}. To address these limitations, several digital \ac{AirComp} methods have been developed,
such as one-bit broadband digital aggregation (OBDA), majority-vote frequency-shift keying (FSK), and their asynchronous and non-coherent extensions. However, these methods are often limited to fewer number of transmitters or specific functions~\cite{csahin2023survey}. To provide a more general and scalable solution,  ChannelComp~\cite{saeed2023ChannelComp} was introduced to enable arbitrary function computation over the \ac{MAC}s by designing digital modulation schemes via optimization.
To reduce its optimization complexity, SumComp~\cite{razavikia2024sumcomp} focuses on summation function computation by jointly designing the input coding and constellation mapping. Both frameworks adopt the single-symbol modulation design, where each input is mapped to a single modulated symbol.

While the digital \ac{AirComp} solutions make it well-suited for practical deployment, its reliability under noisy conditions is not fully guaranteed. As a result, recent works has focused on multi-symbol modulation to enhance the computation performance through redundant symbol transmission~\cite{liu2025digital,yan2025remac,yan2024novel}.
Bit-Slicing~\cite{liu2025digital} improves robustness by dividing the bit representation of each input into segments, transmitted as separate modulated symbols. ReMAC~\cite{yan2025remac} enhances reliability by selectively repeating modulated symbols across multiple time slots. However, Bit-Slicing suffers from increased approximation error when extended to nonlinear functions, while the repetition coding design in ReMAC leads to higher computational complexity~\cite{yan2025remac}.


In this paper, we propose \ac{SeMAC}, a multi-symbol modulation framework for providing a reliable computation. The key idea is to encode each input value into a sequence of modulated symbols using distinct constellation digrams, as opposed to ReMAC which uses an identical constellation pattern across all time slots. This distinction offers greater degrees of freedom in modulation design, thereby yielding a more robust computation performance. To enable this, we formulate an optimization problem to design the multi-symbol modulation. Due to the intractability of this problem, we relax it into a \ac{SDP} using lifting technique, and the final modulation design is obtained through a low rank approximation of the lifted solution.
In addition, we consider scenarios where the modulation pattern is fixed. In this case, we introduce a power adaptation scheme, called \ac{SeMAC-PA}, which adjusts the power and phase of the existing modulation structure for reliable computation.
Numerical results show that \ac{SeMAC} enables robust computation over noisy \ac{MAC}s and reduces computation error by up to 18~dB compared to ReMAC, particularly for the product function.


% ========================
\input{Figures/Fig-system}
% ========================




\section{Preliminaries} \label{sec:Preliminaries}

% In this section, we review the fundamentals of the ChannelComp framework~\cite{saeed2023ChannelComp}.

\subsection{Signal Model}  \label{subsec:signal_model}

Consider a network with $K$ single-antenna nodes transmitting data to a computation point (\ac{CP}) over a shared channel. Each node $k$ sends a data value $x_k \in \mathbb{F}_Q $, where $\mathbb{F}_Q$ denotes a finite field with $Q=2^b$ elements, where $x_k$ is represented using $b$ bits. The goal of the \ac{CP} is to compute the desired function $f(x_1,\ldots,x_K)$ over the \ac{MAC}s. Each node encodes its data value $x_k$ into a modulated signal $\vec{x}_k$ through an encoder $\mathcal{E}_k$, such that $\vec{x}_k = \mathcal{E}_k(x_k)\in \mathbb{C}$. We assume perfect synchronization of carrier frequency and symbol timing among all the nodes and the \ac{CP}, and then the \ac{CP} receives the superimposed signal as
% ----------------
\begin{align}
\label{eq:receivedsignal}
\vec{y} = \sum\nolimits_{k=1}^{K} h_k p_k \vec{x}_k + \vec{z},
\end{align}  
% ----------------
where \( h_k \) and \( p_k \) denote the channel coefficient and transmit power for node \( k \), and \( \vec{z} \sim \mathcal{N}(0, \sigma_z^2) \) represents the additive white Gaussian noise. 

Assuming the availability of perfect channel state information, each node applies optimal power control by inverting the channel~\cite{cao2019optimal}, given by $p_k = h_k^*/|h_k|^2$. In this regard, we can compensate for channel distortion and ensure coherent signal alignment at the \ac{CP}.
With channel inversion applied, and ignoring the effect of the noise, the received signal $\vec{r}:=\sum\nolimits_{k=1}^K \vec{x}_k$ yields a finite constellation diagram. Then, the \ac{CP} applies a tabular function $\mathcal{T}(\cdot)$ to map each constellation point to its corresponding function output.


\subsection{Overlap Avoidance} \label{subsec:overlap avoidance}


Consider a noiseless \ac{MAC}, and let $f^{(i)}$ and $f^{(j)}$ be two distinct function values corresponding to input sets $x_1^{(i)}, \dots, x_K^{(i)}$ and $x_1^{(j)}, \dots, x_K^{(j)}$, respectively. The aggregated constellation points are given by $\vec{v}^{(i)} := \sum\nolimits_{k=1}^{K} \vec{x}_{k}^{(i)}$ and $
\vec{v}^{(j)} := \sum\nolimits_{k=1}^{K} \vec{x}_{k}^{(j)}$. 
To ensure valid computation, destructive overlap between $\vec{v}^{(i)}$ and $\vec{v}^{(j)}$ must be avoided, so that the tabular function $\mathcal{T}(\cdot)$ can uniquely map the constellation point $\vec{v}^{(i)}$ to its corresponding function value $f^{(i)}$. This leads to the following overlap avoidance constraint by a smooth condition~\cite{saeed2023ChannelComp}: 
% ----------------
\begin{align}
\label{eq:CompCond_smooth}
|\vec{v}^{(i)} - \vec{v}^{(j)}| \geq \epsilon |f^{(i)} - f^{(j)}|^2, \quad \forall (i,j) \in [M]^2,
\end{align}  
% ----------------
where $M$ is the cardinality of the function range, and \( \epsilon>0\) is a positive constant. 


% =============------------==============
% ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
\section{System Model}\label{sec:Systemmodel}
% ¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
% =============------------==============

% In this section, we introduce the overall procedure of our proposed \ac{SeMAC} in terms of multi-symbol operations.

%This section introduces \ac{SeMAC}, which extends the modulation design from single-symbol to multi-symbol transmission over \( L \) consecutive time slots over the \ac{MAC}. %Specifically, we introduce the multi-symbol transmission model and the corresponding detection process at the receiver.


\subsection{Multi-Symbol Transmission} \label{subsec:transmitter}

Extending the signal model in~\ref{subsec:signal_model}, \ac{SeMAC} enables multi-symbol transmission by encoding each input value $x_k$ at node $k$ into a sequence of $L$ modulated symbols using a modulation encoder, expressed as $\mathcal{E}_k(x_k) = [\vec{x}_{k,1}, \dots, \vec{x}_{k,L}] \in \mathbb{C}^{1 \times L}$. These symbols are then transmitted sequentially over $L$ consecutive time slots, with $\vec{x}_{k,\ell}$ corresponding to time slot $\ell$.
Consequently, the superimposed signal received at the \ac{CP} in each time slot is given by:
% ----------------
\begin{equation}
\label{eq:fading_multislot}
\vec{y}_{\ell} = \sum\nolimits_{k=1}^{K} h_{k,\ell} p_{k,\ell} \vec{x}_{k,\ell} + \vec{\tilde{z}}_{\ell}, \quad \forall~\ell \in [L],
\end{equation}
% ----------------
where \( h_{k,\ell} \) and \( p_{k,\ell} \) denote the channel coefficient and transmit power of node \( k \) at time slot \( \ell \), and \( \vec{\tilde{z}}_{\ell} \sim \mathcal{N}(0, \sigma_{z}^2) \) is the additive white Gaussian noise at time slot $\ell$. Similarly, following the optimal power control policy~\cite{cao2019optimal}, the received signal can be written as:
% ----------------
\begin{equation}
\label{eq:nofading_multislot}
\vec{y}_{\ell} = \sum\nolimits_{k=1}^{K}\vec{x}_{k,\ell} + \vec{\tilde{z}}_{\ell}, \quad \forall~\ell \in [L].
\end{equation}
% ----------------

For each node $k$, we define the modulation matrix as $\bm{X}_k \in \mathbb{C}^{Q \times L}$, where $[\bm{X}_k]_{(q,\ell)} := \vec{x}_{k,\ell}^{(q)}$ denotes the signal transmitted at time slot $\ell$ when the input is $x_k^{(q)} \in \mathbb{F}_Q$. In this matrix, each row corresponds to an input value and contains its encoded modulation sequence $\bm{x}_k^{(q)} := \mathcal{E}_k(x_k^{(q)}) = [\vec{x}_{k,1}^{(q)}, \ldots, \vec{x}_{k,L}^{(q)}]$. Meanwhile, each column $\bm{x}_{k,\ell} := [\vec{x}_{k,\ell}^{(1)}, \ldots, \vec{x}_{k,\ell}^{(Q)}]^{\mathsf{T}} \in \mathbb{C}^{Q \times 1}$ defines the modulation pattern used at time slot $\ell$, containing the $Q$ complex symbols assigned to all possible input values. Without loss of generality,  each modulation vector follows a unit norm, i.e., $\|\bm{x}_{k,\ell}\|_2^2 \leq 1$, $\forall k \in [K]$ and $\forall \ell \in [L]$.

Furthermore, we construct the modulation matrix $\bm{X} := [\bm{X}_1^{\mathsf{T}}, \dots, \bm{X}_K^{\mathsf{T}}]^{\mathsf{T}} \in \mathbb{C}^{N \times L}$, where $N := QK$, by vertically stacking the modulation matrices of all $K$ nodes. Give the input combination $x_1^{(i)}, \dots, x_K^{(i)}$, we define a binary vector $\bm{a}_i \in \{0,1\}^N$ which consists of $K$ one-hot blocks of length $Q$, each selecting the encoded modulation symbol at one node. Therefore, the resultant modulation sequence associated with the function output $f^{(i)}$ is given by $\bm{v}^{(i)} = \bm{a}_i \bm{X} \in \mathbb{C}^{1 \times L}$.



\subsection{Multi-Symbol Estimation and Decoding}

After receiving the aggregated signal over the \ac{MAC}, the \ac{CP} needs to estimate the transmitted constellation sequence, and then maps the estimated sequence to the output of
function $f$.
More precisely, in each time slot $\ell$, a maximum likelihood estimator partitions the constellation diagram, which consists of all possible constellation points \( \{\vec{v}_\ell^{(1)}, \ldots, \vec{v}_\ell^{(M)}\} \) along with their corresponding Voronoi cells \( \{\mathcal{V}_{1,\ell}, \ldots, \mathcal{V}_{M,\ell}\} \), and maps the received symbol $\vec{y}_{\ell}$ to the closest constellation point as $\vec{v}_{\ell} = \arg \min_{i} \| \vec{y}_{\ell} - \vec{v}^{(i)}_{\ell} \|_2^2$.
Then, the recovered function output $\hat{f}$ is computed via the tabular function $\hat{f} = \sum\nolimits_{j=1}^{M} \mathcal{T}_j(\bm{v})$, where  $\mathcal{T}_j(\cdot)$ is an indicator function:
% --------------
\begin{align}
\mathcal{T}_{j}(\bm{v}) := \begin{cases}
    \hat{f}^{(j)}, & \quad \text{if } \vec{v}_{\ell} \in \mathcal{V}_{j,\ell},\text{ } \forall \ell \in [L], \\
0, & \quad \textrm{otherwise}. 
\end{cases}    
\end{align}
% --------------

To ensure error-free computation, the tabular function must uniquely associate each received constellation sequence with its corresponding function value. In contrast to ChannelComp, where decoding relies on individual symbols, correct recovery in \ac{SeMAC} depends on the received modulation sequence. Thus, any two sequences $\bm{v}_i$ and $\bm{v}_j$ must be separated in Euclidean space when their function outputs $f^{(i)}$ and $f^{(j)}$ are different. This requirement leads to a generalized overlap avoidance constraint for designing multi-symbol modulation:
% --------------
\begin{align}
\label{eq:CompCond_multislot}
\| (\bm{a}_{i} - \bm{a}_{j})^{\mathsf{T}}\bm{X}\|_2^2 \geq \epsilon |f^{(i)} - f^{(j)}|, \quad \forall (i,j) \in [M]^2,
\end{align}
% --------------
where \( \|\cdot\|_2 \) denotes the \( \ell_2 \)-norm. Note that if the condition in~\eqref{eq:CompCond_multislot} is not satisfied, the corresponding Voronio regions are merged, and we consider the average of the associated function outputs as the final function output~\cite{saeed2023ChannelComp}.
The overall \ac{SeMAC} process is shown in Fig.~\ref{fig:digital_aircomp}.


%More precisely, to estimate the correct output, the \ac{CP} first identifies the corresponding constellation sequence \( \bm{v}^{(i)} \) from the received signal vector \( \bm{y} := [\vec{y}_1, \ldots, \vec{y}_L] \). This is performed using a maximum likelihood (ML) detector, which places decision boundaries at the midpoints between neighboring constellation points.

% If overlapping constellation points violate the condition in~\eqref{eq:CompCond_multislot}, their Voronoi cells are merged, and the final output can be derived by averaging the corresponding function outputs~\cite{saeed2023ChannelComp}. The overall process of \ac{SeMAC} is illustrated in Fig.~\ref{fig:digital_aircomp}. 


\section{Modulation Design and Power Adaptation}

In this section, we consider a scenario where the network allocates up to $L$ time slots, with $Q>L$. When modulation patterns are configurable, we employ \ac{SeMAC} to design the modulation. In contrast, when modulation is fixed, we adopt \ac{SeMAC-PA}, which adapts the transmit power and phase to reshape the received sequence of the constellation.

\subsection{Modulation Design With Channel Inversion}

In this subsection, the modulation scheme is designed under the assumption of channel inversion power control. Given that $Q > L$, each modulation matrix $\bm{X}_k$ is subject to a rank constraint as ${\rm rank}(\bm{X}_k)\leq L$. To avoid the overlaps among the sequence of the constellation points, we then pose the following feasibility optimization problem to enable robust computation, subject to the norm power constraint:
%------------
\begin{subequations}
\label{eq:smooth original problem}
\begin{align}
\nonumber
 \mathcal{P}_{0}:=& {\rm find} \quad \bm{X} \\ 
 \label{eq:original separation constraint}
 {\rm s.t.} \quad & \| (\bm{a}_{i} - \bm{a}_{j})^{\mathsf{T}}\bm{X}\|_2^2 \geq  \Delta f_{i,j}, \quad \forall (i,j) \in [M]^2,  \\ \label{eq:original rank constraint}
\quad & {\rm rank}(\bm{X}_k)\leq L, \\
\quad & \|\bm{x}_{k,\ell}\|_2^2 \leq 1,   \quad \forall k \in [K], \quad \forall \ell \in [L], 
\end{align}
\end{subequations}
%------------
where $\Delta f_{i,j} := \epsilon |f^{(i)} - f^{(j)}|$.
%Solving Problem \( \mathcal{P}_0 \) yields the optimal modulation matrix \( \bm{X}^* \), from which the modulation encoders \( \mathcal{E}_k(\cdot) \) for all nodes can be derived. 
However, \( \mathcal{P}_0 \) is a non-convex \ac{QCQP}, and solving it is NP-hard~\cite{saeed2023ChannelComp}. To address this non-convexity, we apply a lifting technique by introducing a new matrix variable \( \bm{W} := \bm{X} \bm{X}^{\mathsf{H}} \in \mathbb{C}^{N \times N} \), which is positive semidefinite and has the following block structure:
% ----------------
\begin{equation}
\label{eq:lifted_matrix}
\bm{W} = \begin{bmatrix} 
    \bm{W}_1 & \bm{X}_1 \bm{X}_2^H & \dots & \bm{X}_1 \bm{X}_K^H \\ 
    \bm{X}_2 \bm{X}_1^H & \bm{W}_2 & \dots & \bm{X}_2 \bm{X}_K^H \\ 
    \vdots & \vdots & \ddots & \vdots \\ 
    \bm{X}_K \bm{X}_1^H & \bm{X}_K \bm{X}_2^H & \dots & \bm{W}_K 
\end{bmatrix},
\end{equation}
% ----------------
where each diagonal block \( \bm{W}_k := \bm{X}_k \bm{X}_k^{\mathsf{H}} \in \mathbb{C}^{Q \times Q} \) is also positive semidefinite. This lifting step transforms
the non-convexity into a rank constraint ${\rm rank}(\bm{W}_k)\leq L$.
Then, by dropping the rank constraint of each $\bm{W}_k$, Problem \( \mathcal{P}_0 \) is relaxed into a convex \ac{SDP} as follows:
%-------------
\begin{subequations}
\label{eq:LiftProblem_relaxed}
\begin{align}
\nonumber
\mathcal{P}_{0} \approx \mathcal{P}_{1} := & {\rm find} \quad {\bm{W}}   \\ \label{eq:lifting CVX relaxed}
{\rm s.t.} \quad & {\rm Tr}(\bm{W} \cdot \bm{D}_{i,j}) \geq \Delta f_{i,j}, \quad \forall(i,j) \in [M]^2,\\
 & \bm{W}_k \succeq \bm{0}, \quad {\rm Tr}(\bm{W}_k) \leq L, \quad \forall k \in [K], \label{eq:semidefiniteness relaxed} 
\end{align}
\end{subequations}
%-------------
where $\bm{D}_{i,j} = (\bm{a}_i - \bm{a}_j)(\bm{a}_i - \bm{a}_j)^\mathsf{T}$. Problem $\mathcal{P}_1$ can be solved by convex solver tools such as CVX~\cite{grant2014cvx}, yielding an optimal solution \( \bm{W}^* \). Let $L_k^* = {\rm rank}(\bm{W}_k^*)$ denote the rank of each digonal block. Since $\bm{W}_k^*$ may not satisfy the removed rank constraint, a low rank matrix approximation~\cite{achlioptas2007fast} is applied to project each $\bm{W}^*_k$ back onto the feasible region of $\mathcal{P}_0$. 
%-------------
\begin{subequations}
\label{eq:modulation_matrix}
\begin{align}
\nonumber
\mathcal{P}_2 := & \arg\min_{\bm{X}} \quad \|\bm{W}^*_k - \bm{X}_k\bm{X}_k^{\mathsf{H}}\|_{\mathsf{F}}^2  \\ \label{eq:modulation_rank_constraint}
{\rm s.t.} \quad &  {\rm rank}(\bm{X}_k)\leq L, \\
 & \|\bm{x}_{k,\ell}\|_2^2 \leq 1, \quad \forall k \in [K], \quad \forall \ell \in [L]. \label{eq:modulation_norm_constraint} 
\end{align}
\end{subequations}
%-------------

To solve Problem $\mathcal{P}_2$, a singular value decomposition~\cite{kalman1996singularly} is applied to each matrix $\bm{W}_k^*$, expressed as $\bm{W}_k^* = \bm{U}_k \bm{\Sigma}_k \bm{U}_k^{\mathsf{H}}$. Here, $\bm{U}_k \in \mathbb{C}^{Q\times Q}$ is a unitary matrix with columns $\{ \bm{u}_{k,1},\ldots,\bm{u}_{k,Q} \}$ representing the singular vectors, and $\bm{\Sigma}_k \in \mathbb{R}^{Q\times Q}$ is a diagonal matrix containing the singular values $\{ \sigma_{k,1},\ldots,\sigma_{k,Q} \}$ in descending order. Based on this decomposition, the optimal solution to Problem $\mathcal{P}_2$ is constructed as $\bm{X}_k^*$, which yields the modulation design for node $k$, as presented in the following proposition.

\begin{prop}\label{pro:optimalX}
The optimal solution to optimization problem $\mathcal{P}_2$ for each node $k$ is given by 
%----------------
\begin{equation}
\label{eq:optimal_X_star}
\bm{X}^*_k = \sum\nolimits_{i=1}^{\min(L,L^*_k)} s_{k,i}\bm{u}_{k,i} \bm{e}_i^\mathsf{T},
\end{equation}
%----------------
where the scaling factor $s_{k,i}$ is defined as
%----------------
\begin{equation}
\label{eq:scalar_rule}
s_{k,i} = \min \left( \sqrt{\sigma_{k,i}}, 1 \right), \quad \forall k \in [K].
\end{equation}
%----------------
Here, \( \bm{e}_i \in \{0,1\}^{N \times 1}\) is the elementary vector with a 1 in the \( i \)-th entry and 0 elsewhere.

\end{prop}

\begin{proof}
See Appendix~\ref{app:optimalX}.
\end{proof}

% \begin{rem}
% Note that $X_k^*$ serves as an approximate solution to $\mathcal{P}_0$, obtained by projecting the lifted solution $W^*$ from $\mathcal{P}_1$ onto a rank-constrained space via $\mathcal{P}_2$. As shown in Proposition~\ref{pro:optimalX}, this projection preserves the dominant rank-$L$ components of $W_k^*$. When $W^*_k$ is close to rank-$L$, the approximation gap is smaller, and $X_k^*$ more closely satisfies the separation constraints in $\mathcal{P}_0$. 
% \end{rem}

\begin{rem}
Note that $\bm{X}_k^*$ serves as an approximate solution to the original modulation design problem $\mathcal{P}_0$, and is obtained by projecting the optimal lifted matrix $\bm{W}_k^*$ from the relaxed SDP problem $\mathcal{P}_1$ onto a rank-constrained space in $\mathcal{P}_2$. This approximation retains the dominant rank-$L$ singular components of $\bm{W}_k^*$, as shown in Proposition~\ref{pro:optimalX}. When $\bm{W}_k^*$ is close to rank-$L$, the spectral tail $\sum_{i>L} \sqrt{\sigma_{k,i}}$ becomes negligible~\cite{luo2010semidefinite}, and hence $\bm{X}_k^*$ closely satisfies the constraint~\eqref{eq:original separation constraint} in $\mathcal{P}_0$. 
\end{rem}


\subsection{Power Adaptation of Existing Modulation}


Due to hardware constraints, modifying the existing modulation format at each device is often not feasible. Moreover, channel inversion is sensitive to deep fades and may lead to excessive power consumption under realistic fading conditions. To address this, we propose \ac{SeMAC-PA}, an extension of the E-ChannelComp framework~\cite{saeed2023ChannelComp}, to enable realible function computation with fixed modulation through power and phase adaptation across multiple time slots.

Given the signal model in~\eqref{eq:fading_multislot}, for compact presentation, we define $\bm{p}_\ell := [p_{1,\ell}, \ldots, p_{K,\ell}]^{\mathsf{T}} \in \mathbb{C}^K$ and $\bm{h}_\ell := [h_{1,\ell}, \ldots, h_{K,\ell}]^{\mathsf{T}} \in \mathbb{C}^K$ as the transmit power vector and channel vector at time slot $\ell$, respectively. Let $\tilde{\bm{x}}_{\ell}$ denotes the modulation vector containing a fixed modulation pattern, i.e., \ac{QAM}. In the presence of fading, the received constellation point corresponding to the function output $f^{(i)}$ at time slot $\ell$ is then given by:
% ----------------
\begin{equation}
\label{eq:received_sequence_fading_power_control} \nonumber
\tilde{\bm{v}}^{(i)}_{\ell} = \bm{a}_i^{\mathsf{T}} \left( \text{diag}(\bm{h}_\ell) \otimes \bm{I}_Q \right) \text{diag}(\tilde{\bm{x}}_{\ell}) \left( \bm{I}_K \otimes \mathds{1}_Q \right) \bm{p}_\ell, \forall \ell \in [L],
\end{equation}
% ----------------
where \( \otimes \) denotes the Kronecker product. \( \bm{I}_Q \) and \( \bm{I}_K \) are identity matrices of size \( Q \times Q \) and \( K \times K \). \( \mathds{1}_Q \) is a \( Q \times 1 \) vector with all elements equal to one, and the operator \( \text{diag}(\cdot) \) constructs a diagonal matrix. To ensure valid computation, we incorporate the constraint in~\eqref{eq:CompCond_multislot} and formulate the following optimization to minimize the power vectors $\bm{p}_\ell$:
%-------------
\begin{subequations}
\label{eq:power_minimization}
\begin{align}
\nonumber
\mathcal{P}_3 := & \min_{\bm{p}_{\ell}} \quad \sum\nolimits_{\ell=1}^L\|\bm{p}_{\ell}\|_2^2  \\ 
\nonumber
{\rm s.t.} \quad & \sum\nolimits_{\ell=1}^L|(\bm{a}_i - \bm{a}_j)^{\mathsf{T}}\bm{B}_{\ell}\bm{p}_{\ell}|^2 \geq \Delta f_{i,j}, \quad \forall(i,j) \in [M]^2,
\end{align}
\end{subequations}
%-------------
where $\bm{B}_{\ell}:=\left( \text{diag}(\bm{h}_{\ell}) \otimes \bm{I}_Q \right) \text{diag}(\tilde{\bm{x}}_{\ell})(\bm{I}_K\otimes \mathds{1}_Q)$. Similarly, by introducing the lifted matrix \( \bm{P}_{\ell} := \bm{p}_{\ell} \bm{p}_{\ell}^{\mathsf{H}} \) and dropping the rank constraint, a relaxed version of \( \mathcal{P}_3 \) can be formulated as:
%-------------
\begin{subequations}
\label{eq:power_minimization_relaxed}
\begin{align}
\nonumber
\mathcal{P}_3 \approx \mathcal{P}_4 := & \min_{\bm{P}_{\ell}} \quad \sum\nolimits_{\ell=1}^L{\rm trace}(\bm{P}_{\ell})  \\ 
\nonumber
{\rm s.t.} \quad & \sum\nolimits_{\ell=1}^L{\rm Tr}(\bm{P}_{\ell}\bm{C}_{\ell}^{i,j}) \geq \Delta f_{i,j},  \quad \forall (i,j) \in [M]^2, \\ \nonumber
& \quad \bm{P}_{\ell} \succeq 0, \quad \forall \ell \in [L],
\end{align}
\end{subequations}
%-------------
where \( \bm{C}_{\ell}^{i,j} := \bm{B}_{\ell}^{\mathsf{H}} (\bm{a}_i - \bm{a}_j) (\bm{a}_i - \bm{a}_j)^{\mathsf{T}} \bm{B}_{\ell} \). After solving Problem \( \mathcal{P}_4 \) using a CVX solver~\cite{grant2014cvx}, the power vector \( \bm{p}^*_{\ell} \) can be recovered from the solution \( \bm{P}^*_{\ell} \) either by applying Cholesky decomposition for an optimal solution, or by using Gaussian randomization for a suboptimal one~\cite{luo2010semidefinite}. These recovered power vectors are then used to adjust the magnitude and phase of the transmitted symbols accordingly.



\section{Numerical Experiments}\label{sec:Num}

In this section, we evaluate the performance of \ac{SeMAC} as well as its power adaptive scheme \ac{SeMAC-PA}, and make a comparison with ChannelComp, ReMAC and Bit-Slicing. Specifically, the performance is evaluated using the \ac{NMSE} metric, defined as: 
% --------------
\begin{equation}
\text{\ac{NMSE}}:=\frac{\sum\nolimits_{j=1}^{N_s}|f^{(i)}-\hat{f}_j^{(i)}|^2}{N_s|f_{{\rm max}} - f_{{\rm min}}|^2},    
\end{equation}
% ---------------
where $N_s$ is the number of Monte Carlo trials, $f^{(i)}$
is the desired function value, $\hat{f}^{(i)}_j$ is the estimated value in the $j$-th Monte Carlo trial. $f_{{\rm max}}$ and 
$f_{{\rm min}}$ denote the maximum and minimum values of the function output, respectively.

%====================================
\input{Figures/multi-symbol_fading}
%====================================

\subsection{Performance of \ac{SeMAC}}



For the first experiment, we consider a network of $K=8$ nodes for computing the sum function $f=\sum_{k=1}^K x_k$, the product function $f=\prod_{k=1}^Kx_k$ and the max function $f=\max_{k}x_k$, where $x_k\in \{1,2,3,4\}$. 
The results in Fig.~\ref{fig:comparison_K_and_L} show that the NMSE decreases with increasing \ac{SNR}, demonstrating the effectiveness of SeMAC. Increasing the number of time slots from $L=1$ to $L=2$ improves the computation accuracy by providing more degree of freedom for constellation design, though at the cost of higher latency.


%====================================
\input{Figures/multi-symbol_fading_comparison}
%====================================

\vspace{-1em}
\subsection{Comparison to ChannelComp, ReMAC and Bit-Slicing}

In this subsection, we compare ChannelComp with repetition, \ac{SeMAC}, ReMAC, and Bit-Slicing for computing the product function with $K=4$ nodes over $L=2$ time slots, where input values are selected from $x_k \in \{1, 2, \ldots, 16\}$.
As shown in Fig.~\ref{fig:comparison_L2}, by exploiting diverse modulation patterns across time slots, \ac{SeMAC} achieves lower \ac{NMSE} by approximately 18~dB compared to ReMAC. While ChannelComp with repetition and ReMAC offer similar performance, ReMAC achieves greater energy efficiency by selectively repeating modulated symbols. Moreover, Bit-Slicing yields the highest \ac{NMSE}, due to approximation errors introduced during the pre- and post-processing required to support nonlinear functions, as previously analyzed in~\cite{yan2025remac}.



\subsection{Performance of \ac{SeMAC-PA}}

We analyze the performance of \ac{SeMAC-PA} under Rayleigh fading with $K=8$ and \ac{QAM} modulation of orders $Q=4$ and $Q=16$ for computing the product function over $L=2$ time slots. The fading coefficients \( h_{k,\ell} \) are modeled as independent complex Gaussian random variables, i.e., \( h_{k,\ell} \sim \mathcal{CN}(0, 1)\). 
Fig.~\ref{fig:power_adaptation} shows that \ac{NMSE} decreases with increasing \ac{SNR}, demonstrating the effectiveness of power adaptation. However, \ac{SeMAC-PA} relies on fixed QAM constellations, making it less effective than the optimized modulation design in \ac{SeMAC} under channel inversion power control.
% increasing the modulation order to $Q=16$ results in higher computation error due to the reduced Euclidean distance between symbols.


%====================================
\input{Figures/power_adaptation}
%====================================


\section{Conclusion}\label{sec:conclusion}


% In this letter, we proposed \ac{SeMAC}, a multi-symbol modulation framework for digital \ac{AirComp} that enables reliable function computation through the design of distinct modulation patterns across multiple time slots. To improve robustness in fading channels, we further developed \ac{SeMAC-PA}, which adjusts transmit power and phase while maintaining the modulation structure. Numerical results showed that \ac{SeMAC} outperforms ReMAC by up to 9.5~dB in nonlinear computation, and \ac{SeMAC-PA} ensures reliable performance under fading. Machine learning techniques could be explored to enhance the design of multi-symbol modulation and improve the efficiency and accuracy of function computation.



In this letter, we proposed \ac{SeMAC}, a multi-symbol modulation framework for digital \ac{AirComp} that enables reliable function computation through distinct modulation patterns across multiple time slots. To support scenarios with fixed modulation, we introduced \ac{SeMAC-PA}, which adapts transmit power and phase to reshape the received constellation. Numerical results showed that \ac{SeMAC} outperforms ReMAC by up to 18~dB in nonlinear computation. Overall, the proposed \ac{SeMAC} contributes toward the reliable computation in 6G systems.




\appendix 
\subsection{Proof of Proposition~\ref{pro:optimalX} }\label{app:optimalX}
% To prove the optimality of \( \bm{X}^*_k \), we analyze the following two cases: \( L \leq L^*_k \) and \( L > L^*_k \).  

First, when \( L \leq L^*_k \), assume that the matrix $\bm{X}_k^*$ is not the optimal solution, and there exists a matrix \( \bm{\hat{X}}_k = \bm{X}^*_k + \bm{H}_k \) with \( \mathrm{rank}(\bm{\hat{X}}_k) \leq L \), such that  
\(
\|\bm{W}^*_k - \bm{\hat{X}}_k \bm{\hat{X}}_k^\mathsf{H}\|_{\mathsf{F}}^2 < \|\bm{W}^*_k - \bm{X}^*_k \bm{X}_k^{*\mathsf{H}}\|_{\mathsf{F}}^2
\). Let \( \bm{H}_k = \sum_{i=1}^L h_{k,i} \bm{u}_{k,i} \bm{e}_i^\mathsf{T} \) and $ \bm{\hat{X}}_k$ can be expressed as $\bm{\hat{X}}_k=\sum_{i=1}^L\tilde{s}_{k,i}\bm{u}_{k,i}\bm{e}_i^{\mathsf{T}}$, with $\tilde{s}_{k,i}:=s_{k,i} + h_{k,i}$ and \( |\tilde{s}_{k,i}| \leq 1 \). The difference in the objective value between $\bm{X}^*$ and $\bm{\hat{X}}$ is given by: 
%----------------
\begin{subequations}
\begin{align}
 \Delta & = \|\bm{W}^*_k-\bm{\hat{X}}_k\bm{\hat{X}}_k^{\mathsf{H}}\|_{\mathsf{F}}^2 - \|\bm{W}^*_k-\bm{X}_k^*\bm{X}_k^{*\mathsf{H}}\|_{\mathsf{F}}^2 \\  \nonumber
 & = \|\bm{\Sigma}_k - {\rm diag}(\tilde{s}_{k,1}^2,\ldots,\tilde{s}_{k,L}^2,\ldots,0)\|_{\mathsf{F}}^2  \\  \label{eq:F-norm equality}
 & \quad - \|\bm{\Sigma}_k - {\rm diag}(s_{k,1}^2,\ldots,s_{k,L}^2,\ldots,0)\|_{\mathsf{F}}^2 \\
 & = \sum\nolimits_{i=1}^L(2\sigma_{k,i}-s_{k,i}^2-\tilde{s}_{k,i}^2)(s_{k,i}^2-\tilde{s}_{k,i}^2) \\ 
 & \geq \sum\nolimits_{i=1}^L (s_{k,i}^2-\tilde{s}_{k,i}^2)^2.  \label{eq:objective difference}
\end{align}
\end{subequations}
%----------------
Here, the equality in~\eqref{eq:F-norm equality} holds due to the unitary invariance of the Frobenius norm.
Noting that $h_{k,i} \neq 0$ for at least one $i$, it follows that $\Delta > 0$, leading to a contradiction. Therefore, $\bm{X}_k^*$ is optimal when $L \leq L_k^*$.


On the other hand, when \( L > L^*_k \), assume there exists a matrix \( \bm{\hat{X}}_k = \bm{X}^*_k + \bm{H}_k \) with \( \mathrm{rank}(\bm{\hat{X}}_k) \leq L \) such that  
$\|\bm{W}^*_k - \bm{\hat{X}}_k \bm{\hat{X}}_k^\mathsf{H}\|_{\mathsf{F}}^2 < \|\bm{W}^*_k - \bm{X}^*_k \bm{X}_k^{*\mathsf{H}}\|_{\mathsf{F}}^2$.
The matrix \( \hat{\bm{X}}_k \) can also be expressed as $\bm{\hat{X}}_k=\sum_{i=1}^L\tilde{s}_{k,i}\bm{u}_{k,i}\bm{e}_i^{\mathsf{T}}$. Accordingly, the objective difference can be written as:  
%----------------
\begin{subequations}
\begin{align}
 \Delta & = \|\bm{W}^*_k-\bm{\hat{X}}_k\bm{\hat{X}}_k^{\mathsf{H}}\|_{\mathsf{F}}^2 - \|\bm{W}^*_k-\bm{X}_k^*\bm{X}_k^{*\mathsf{H}}\|_{\mathsf{F}}^2 \\ 
 \nonumber
 & = \|\bm{\Sigma}_k - {\rm diag}(\tilde{s}_{k,1}^2,\ldots,\tilde{s}_{k,L^*}^2,\ldots,\tilde{s}_{k,L}^2,\ldots,0)\|_{\mathsf{F}}^2  \\ 
 & \quad  - \|\bm{\Sigma}_k - {\rm diag}(s_{k,1}^2,\ldots,s_{k,L^*_k}^2,\ldots,0)\|_{\mathsf{F}}^2 \\
 & \geq \sum\nolimits_{i=1}^{L^*} (s_{k,i}^2-\tilde{s}_{k,i}^2)^2+\sum\nolimits_{i=L^*+1}^L (\sigma_{k,i}-\tilde{s}_{k,i}^2)^2.
 \label{eq:objective difference orthogonal}
\end{align}
\end{subequations}
%----------------
Similarly, $h_{k,i} \neq 0$ for at least one $i$, then $\Delta > 0$, again leading to a contradiction. Therefore, $\bm{X}_k^*$ is also optimal when $L > L_k^*$. As a result, the solution to $\mathcal{P}_2$ is given by:
% ----------------
\begin{equation}
\bm{X}^*_k = \sum\nolimits_{i=1}^{\min(L,L_k^*)} s_{k,i} \bm{u}_{k,i} \bm{e}_i^\mathsf{T}.
\end{equation}
% -----------------
This concludes the proof. 

\bibliographystyle{IEEEtran}
\bibliography{Ref}




% \appendix 


% \subsection{Proof of Proposition~\ref{pro:Lmin}}



% We recall the constraints from the optimization problem in~\eqref{eq:relaxed original problem} as
% \begin{align}
% \sum\nolimits_{\ell=1}^L |(\bm{a}_i-\bm{a}_j)^\top(\bm{x} \odot \bm{c}_{\ell})|^2 \geq \Delta f_{i,j}, \label{eq:distance constraint}
% \end{align} 
% for all $(i,j) \in [M]^2$. Using H{\"o}lder Inequality~\cite{yang1991generalized}, we can bound the absolute value of the inner product as follows.
% %----------------
% \begin{align}
% \nonumber
% |(\bm{a}_i-\bm{a}_j)^\top(\bm{x} \odot \bm{c}_{\ell})|^2 & \leq \|\bm{a}_i-\bm{a}_j\|^2_1 \cdot \|\bm{x} \odot \bm{c}_{\ell}\|^2_\infty \\ \nonumber
% & \leq \|\bm{a}_i-\bm{a}_j\|^2_1 \cdot \|\bm{x}\|^2_\infty \cdot \|\bm{c}_{\ell}\|^2_\infty \\
% & \leq \|\bm{a}_i-\bm{a}_j\|^2_1 P_{\rm max}.
% \end{align}
% %----------------
% Since the minimum distance between $\bm{a}_i$ and $\bm{a}_j$ is 1, by summing over all $L$ terms, we reach to
% %----------------
% \begin{align}
% \nonumber
% \sum_{\ell=1}^L |(\bm{a}_i-\bm{a}_j)^\top(\bm{x} \odot \bm{c}_{\ell})|^2 & \leq \sum_{\ell=1}^L\|\bm{a}_i-\bm{a}_j\|^2_1 \cdot \|\bm{x}\|^2_\infty \cdot \|\bm{c}_{\ell}\|^2_\infty \\
% & \leq \frac{P_{\max}}{N} \cdot L. \label{eq:minimum distance}
% \end{align}
% %----------------
% By substituting \eqref{eq:minimum distance} into \eqref{eq:distance constraint}, we obtain the lower bound of \(L\) as follows. 
% %----------------
% \begin{align}
% L_{\min} \geq \frac{\max_{i,j} \Delta f_{i,j} \cdot N}{P_{\max}}.
% \end{align}
% %----------------
% This concludes the proof. 
\end{document}

%\chapter*{Acronyms}
%\renewcommand{\titulonome}{Acronyms}%
%\renewcommand{\prepbynome}{UFC.33 Team}%

%\begin{singlespace}
\begin{acronym}[LTE-Advanced]%\addtolength{\itemsep}{-0.5\baselineskip}
  \acro{2G}{Second Generation}
  \acro{3-DAP}{3-Dimensional Assignment Problem}
  \acro{3G}{3$^\text{rd}$~Generation}
  \acro{3GPP}{3$^\text{rd}$~Generation Partnership Project}
  \acro{4G}{4$^\text{th}$~Generation}
  \acro{5G}{5$^\text{th}$~Generation}
  \acro{AA}{Antenna Array}
  \acro{AC}{Admission Control}
  \acro{AD}{Attack-Decay}
  \acro{ADC}{analog-to-digital converter}
  \acro{ADMM}{alternating direction method of multipliers}
  \acro{ADSL}{Asymmetric Digital Subscriber Line}
  \acro{AHW}{Alternate Hop-and-Wait}
  \acro{AI}{Artificial Intelligence}
  \acro{AirComp}{over-the-air computation}
  \acro{AMC}{Adaptive Modulation and Coding}
  \acro{ANN}{artificial neural network}
  \acro{AP}{\LU{A}{a}ccess \LU{P}{p}oint}
  \acro{APA}{Adaptive Power Allocation}
  \acro{ARMA}{Autoregressive Moving Average}
  \acro{ARQ}{\LU{A}{a}utomatic \LU{R}{r}epeat \LU{R}{r}equest}
  \acro{ATES}{Adaptive Throughput-based Efficiency-Satisfaction Trade-Off}
  \acro{AWGN}{additive white Gaussian noise}
  \acro{BAA}{\LU{B}{b}roadband \LU{A}{a}nalog \LU{A}{a}ggregation}
  \acro{BB}{Branch and Bound}
  \acro{BCD}{block coordinate descent}
  \acro{BD}{Block Diagonalization}
  \acro{BER}{Bit Error Rate}
  \acro{BF}{Best Fit}
  \acro{BFD}{bidirectional full duplex}
  \acro{BLER}{BLock Error Rate}
  \acro{BPC}{Binary Power Control}
  \acro{BPSK}{Binary Phase-Shift Keying}
  \acro{BRA}{Balanced Random Allocation}
  \acro{BS}{base station}
  \acro{BSUM}{block successive upper-bound minimization}
  \acro{CAP}{Combinatorial Allocation Problem}
  \acro{CAPEX}{Capital Expenditure}
  \acro{CBF}{Coordinated Beamforming}
  \acro{CBR}{Constant Bit Rate}
  \acro{CBS}{Class Based Scheduling}
  \acro{CC}{Congestion Control}
  \acro{CDF}{Cumulative Distribution Function}
  \acro{CDMA}{Code-Division Multiple Access}
  \acro{CE}{\LU{C}{c}hannel \LU{E}{e}stimation}
  \acro{CL}{Closed Loop}
  \acro{CLPC}{Closed Loop Power Control}
  \acro{CML}{centralized machine learning}
  \acro{CNR}{Channel-to-Noise Ratio}
  \acro{CNN}{\LU{C}{c}onvolutional \LU{N}{n}eural \LU{N}{n}etwork}
  \acro{CP}{computation point}
  \acro{CPA}{Cellular Protection Algorithm}
  \acro{CPICH}{Common Pilot Channel}
  \acro{CoCoA}{\LU{C}{c}ommunication efficient distributed dual \LU{C}{c}oordinate \LU{A}{a}scent}
  \acro{CoMAC}{\LU{C}{c}omputation over \LU{M}{m}ultiple-\LU{A}{a}ccess \LU{C}{c}hannels}
  \acro{CoMP}{Coordinated Multi-Point}
  \acro{CQI}{Channel Quality Indicator}
  \acro{CRM}{Constrained Rate Maximization}
	\acro{CRN}{Cognitive Radio Network}
  \acro{CS}{Coordinated Scheduling}
  \acro{CSI}{\LU{C}{c}hannel \LU{S}{s}tate \LU{I}{i}nformation}
  \acro{CSMA}{\LU{C}{c}arrier \LU{S}{s}ense \LU{M}{m}ultiple \LU{A}{a}ccess}
  \acro{CUE}{Cellular User Equipment}
  \acro{D2D}{device-to-device}
  \acro{DAC}{digital-to-analog converter}
  \acro{DC}{direct current}
  \acro{DCA}{Dynamic Channel Allocation}
  \acro{DE}{Differential Evolution}
  \acro{DFT}{Discrete Fourier Transform}
%  \acro{DIST}{Distance-based Grouping}
  \acro{DIST}{Distance}
  \acro{DL}{downlink}
  \acro{DMA}{Double Moving Average}
  \acro{DML}{Distributed Machine Learning}
  \acro{DMRS}{demodulation reference signal}
  \acro{D2DM}{D2D Mode}
  \acro{DMS}{D2D Mode Selection}
  \acro{DPC}{Dirty Paper Coding}
  \acro{DRA}{Dynamic Resource Assignment}
  \acro{DSA}{Dynamic Spectrum Access}
  \acro{DSGD}{\LU{D}{d}istributed \LU{S}{s}tochastic \LU{G}{g}radient \LU{D}{d}escent}
  \acro{DSM}{Delay-based Satisfaction Maximization}
  \acro{ECC}{Electronic Communications Committee}
  \acro{EFLC}{Error Feedback Based Load Control}
  \acro{EI}{Efficiency Indicator}
  \acro{eNB}{Evolved Node B}
  \acro{EPA}{Equal Power Allocation}
  \acro{EPC}{Evolved Packet Core}
  \acro{EPS}{Evolved Packet System}
  \acro{E-UTRAN}{Evolved Universal Terrestrial Radio Access Network}
  \acro{ES}{Exhaustive Search}
  %\acro{FD}{full duplex}
  \acro{FC}{\LU{F}{f}usion \LU{C}{c}enter}
  \acro{FD}{\LU{F}{f}ederated \LU{D}{d}istillation}
  \acro{FDD}{frequency divisionov duplex}
  \acro{FDM}{Frequency Division Multiplexing}
  \acro{FDMA}{\LU{F}{f}requency \LU{D}{d}ivision \LU{M}{m}ultiple \LU{A}{a}ccess}
  \acro{FedAvg}{\LU{F}{f}ederated \LU{A}{a}veraging}
  \acro{FER}{Frame Erasure Rate}
  \acro{FF}{Fast Fading}
  \acro{FL}{federated learning}
  \acro{FSB}{Fixed Switched Beamforming}
  \acro{FST}{Fixed SNR Target}
  \acro{FTP}{File Transfer Protocol}
  \acro{GA}{Genetic Algorithm}
  \acro{GBR}{Guaranteed Bit Rate}
  \acro{GLR}{Gain to Leakage Ratio}
  \acro{GOS}{Generated Orthogonal Sequence}
  \acro{GPL}{GNU General Public License}
  \acro{GRP}{Grouping}
  \acro{HARQ}{Hybrid Automatic Repeat Request}
  \acro{HD}{half-duplex}
  \acro{HMS}{Harmonic Mode Selection}
  \acro{HOL}{Head Of Line}
  \acro{HSDPA}{High-Speed Downlink Packet Access}
  \acro{HSPA}{High Speed Packet Access}
  \acro{HTTP}{HyperText Transfer Protocol}
  \acro{ICMP}{Internet Control Message Protocol}
  \acro{ICI}{Intercell Interference}
  \acro{ID}{Identification}
  \acro{IETF}{Internet Engineering Task Force}
  \acro{ILP}{Integer Linear Program}
  \acro{JRAPAP}{Joint RB Assignment and Power Allocation Problem}
  \acro{UID}{Unique Identification}
  \acro{IID}{\LU{I}{i}ndependent and \LU{I}{i}dentically \LU{D}{d}istributed}
  \acro{IIR}{Infinite Impulse Response}
  \acro{ILP}{Integer Linear Problem}
  \acro{IMT}{International Mobile Telecommunications}
  \acro{INV}{Inverted Norm-based Grouping}
  \acro{IoT}{Internet of Things}
%  \acro{IP}{Internet Protocol}
  \acro{IP}{Integer Programming}
  \acro{IPv6}{Internet Protocol Version 6}
  \acro{ISD}{Inter-Site Distance}
  \acro{ISI}{Inter Symbol Interference}
  \acro{ITU}{International Telecommunication Union}
  \acro{JAFM}{joint assignment and fairness maximization}
  \acro{JAFMA}{joint assignment and fairness maximization algorithm}
  \acro{JOAS}{Joint Opportunistic Assignment and Scheduling}
  \acro{JOS}{Joint Opportunistic Scheduling}
  \acro{JP}{Joint Processing}
	\acro{JS}{Jump-Stay}
  \acro{KKT}{Karush-Kuhn-Tucker}
  \acro{L3}{Layer-3}
  \acro{LAC}{Link Admission Control}
  \acro{LA}{Link Adaptation}
  \acro{LC}{Load Control}
  \acro{LDC}{\LU{L}{l}earning-\LU{D}{d}riven \LU{C}{c}ommunication}
  \acro{LOS}{line of sight}
  \acro{LP}{Linear Programming}
  \acro{LTE}{Long Term Evolution}
	\acro{LTE-A}{\ac{LTE}-Advanced}
  \acro{LTE-Advanced}{Long Term Evolution Advanced}
  \acro{LRA}{Low Rank Approximation}
  \acro{M2M}{Machine-to-Machine}
  \acro{MAC}{multiple access channel}
  \acro{MAP}{maximum a posterior}
  \acro{MANET}{Mobile Ad hoc Network}
  \acro{MC}{Modular Clock}
  \acro{MCS}{Modulation and Coding Scheme}
  \acro{MDB}{Measured Delay Based}
  \acro{MDI}{Minimum D2D Interference}
  \acro{MF}{Matched Filter}
  \acro{MG}{Maximum Gain}
  \acro{MH}{Multi-Hop}
  \acro{MIMO}{\LU{M}{m}ultiple \LU{I}{i}nput \LU{M}{m}ultiple \LU{O}{o}utput}
  \acro{MINLP}{mixed integer nonlinear programming}
  \acro{MIP}{mixed integer programming}
  \acro{MISO}{multiple input single output}
  \acro{ML}{machine learning}
  \acro{MLE}{maximum likelihood estimator}
  \acro{MLWDF}{Modified Largest Weighted Delay First}
  \acro{MME}{Mobility Management Entity}
  \acro{MMSE}{minimum mean squared error}
  \acro{MOS}{Mean Opinion Score}
  \acro{MPF}{Multicarrier Proportional Fair}
  \acro{MRA}{Maximum Rate Allocation}
  \acro{MR}{Maximum Rate}
  \acro{MRC}{Maximum Ratio Combining}
  \acro{MRT}{Maximum Ratio Transmission}
  \acro{MRUS}{Maximum Rate with User Satisfaction}
  \acro{MS}{Mode Selection}
  \acro{MSE}{\LU{M}{m}ean \LU{S}{s}quared \LU{E}{e}rror}
  \acro{MSI}{Multi-Stream Interference}
  \acro{MTC}{Machine-Type Communication}
  \acro{MTSI}{Multimedia Telephony Services over IMS}
  \acro{MTSM}{Modified Throughput-based Satisfaction Maximization}
  \acro{MU-MIMO}{Multi-User Multiple Input Multiple Output}
  \acro{MU}{Multi-User}
  \acro{NAS}{Non-Access Stratum}
  \acro{NB}{Node B}
	\acro{NCL}{Neighbor Cell List}
  \acro{NLP}{Nonlinear Programming}
  \acro{NLOS}{non-line of sight}
  \acro{NMSE}{normalized mean square error}
  \acro{NOMA}{\LU{N}{n}on-\LU{O}{o}rthogonal \LU{M}{m}ultiple \LU{A}{a}ccess}
  \acro{NORM}{Normalized Projection-based Grouping}
  \acro{NP}{non-polynomial time}
  \acro{NRT}{Non-Real Time}
  \acro{NSPS}{National Security and Public Safety Services}
  \acro{O2I}{Outdoor to Indoor}
  \acro{OFDMA}{\LU{O}{o}rthogonal \LU{F}{f}requency \LU{D}{d}ivision \LU{M}{m}ultiple \LU{A}{a}ccess}
  \acro{OFDM}{Orthogonal Frequency Division Multiplexing}
  \acro{OFPC}{Open Loop with Fractional Path Loss Compensation}
	\acro{O2I}{Outdoor-to-Indoor}
  \acro{OL}{Open Loop}
  \acro{OLPC}{Open-Loop Power Control}
  \acro{OL-PC}{Open-Loop Power Control}
  \acro{OPEX}{Operational Expenditure}
  \acro{ORB}{Orthogonal Random Beamforming}
  \acro{JO-PF}{Joint Opportunistic Proportional Fair}
  \acro{OSI}{Open Systems Interconnection}
  \acro{PAIR}{D2D Pair Gain-based Grouping}
  \acro{PAPR}{Peak-to-Average Power Ratio}
  \acro{P2P}{Peer-to-Peer}
  \acro{PC}{Power Control}
  \acro{PCI}{Physical Cell ID}
  \acro{PDCCH}{physical downlink control channel}
  \acro{PDD}{penalty dual decomposition}
  \acro{PDF}{Probability Density Function}
  \acro{PER}{Packet Error Rate}
  \acro{PF}{Proportional Fair}
  \acro{P-GW}{Packet Data Network Gateway}
  \acro{PL}{Pathloss}
  \acro{RLT}{reformulation linearization technique}
  \acro{PRB}{Physical Resource Block}
  \acro{PROJ}{Projection-based Grouping}
  \acro{ProSe}{Proximity Services}
%  \acro{PS}{Packet Scheduling}
%  \acro{PS}{phase shifter}
  \acro{PS}{\LU{P}{p}arameter \LU{S}{s}erver}
  \acro{PSO}{Particle Swarm Optimization}
  \acro{PUCCH}{physical uplink control channel}
  \acro{PZF}{Projected Zero-Forcing}
  \acro{QAM}{quadrature amplitude modulation}
  \acro{QoS}{quality of service}
  \acro{QPSK}{quadrature phase shift keying}
  \acro{QCQP}{quadratically constrained quadratic programming}
  \acro{RAISES}{Reallocation-based Assignment for Improved Spectral Efficiency and Satisfaction}
  \acro{RAN}{Radio Access Network}
  \acro{RA}{Resource Allocation}
  \acro{RAT}{Radio Access Technology}
  \acro{RATE}{Rate-based}
  \acro{RB}{resource block}
  \acro{RBG}{Resource Block Group}
  \acro{REF}{Reference Grouping}
  \acro{ReLU}{rectified linear unit}
  \acro{ReMAC}{Repetition for Multiple Access Computing}
  \acro{RF}{radio frequency}
  \acro{RLC}{Radio Link Control}
  \acro{RM}{Rate Maximization}
  \acro{RNC}{Radio Network Controller}
  \acro{RND}{Random Grouping}
  \acro{RRA}{Radio Resource Allocation}
  \acro{RRM}{\LU{R}{r}adio \LU{R}{r}esource \LU{M}{m}anagement}
  \acro{RSCP}{Received Signal Code Power}
  \acro{RSRP}{reference signal receive power}
  \acro{RSRQ}{Reference Signal Receive Quality}
  \acro{RR}{Round Robin}
  \acro{RRC}{Radio Resource Control}
  \acro{RSSI}{received signal strength indicator}
  \acro{RT}{Real Time}
  \acro{RU}{Resource Unit}
  \acro{RUNE}{RUdimentary Network Emulator}
  \acro{RV}{Random Variable}
  \acro{SAA}{Small Argument Approximation}
  \acro{SAC}{Session Admission Control}
  \acro{SCM}{Spatial Channel Model}
  \acro{SC-FDMA}{Single Carrier - Frequency Division Multiple Access}
  \acro{SD}{Soft Dropping}
  \acro{S-D}{Source-Destination}
  \acro{SDPC}{Soft Dropping Power Control}
  \acro{SDMA}{Space-Division Multiple Access}
  \acro{SDR}{semidefinite relaxation}
  \acro{SDP}{semidefinite programming}
  \acro{SeMAC}{sequential modulation for AirComp}
  \acro{SeMAC-PA}{SeMAC with power adaptation}
  \acro{SER}{Symbol Error Rate}
  \acro{SES}{Simple Exponential Smoothing}
  \acro{S-GW}{Serving Gateway}
  \acro{SGD}{\LU{S}{s}tochastic \LU{G}{g}radient \LU{D}{d}escent}  
  \acro{SINR}{signal-to-interference-plus-noise ratio}
%   \acro{SI}{Satisfaction Indicator}
  \acro{SI}{self-interference}
  \acro{SIP}{Session Initiation Protocol}
  \acro{SISO}{\LU{S}{s}ingle \LU{I}{i}nput \LU{S}{s}ingle \LU{O}{o}utput}
  \acro{SIMO}{Single Input Multiple Output}
  \acro{SIR}{Signal to Interference Ratio}
  \acro{SLNR}{Signal-to-Leakage-plus-Noise Ratio}
  \acro{SMA}{Simple Moving Average}
  \acro{SNR}{\LU{S}{s}ignal-to-\LU{N}{n}oise \LU{R}{r}atio}
  \acro{SORA}{Satisfaction Oriented Resource Allocation}
  \acro{SORA-NRT}{Satisfaction-Oriented Resource Allocation for Non-Real Time Services}
  \acro{SORA-RT}{Satisfaction-Oriented Resource Allocation for Real Time Services}
  \acro{SPF}{Single-Carrier Proportional Fair}
  \acro{SRA}{Sequential Removal Algorithm}
  \acro{SRS}{sounding reference signal}
  \acro{SU-MIMO}{Single-User Multiple Input Multiple Output}
  \acro{SU}{Single-User}
  \acro{SVD}{singular value decomposition}
  \acro{SVM}{\LU{S}{s}upport \LU{V}{v}ector \LU{M}{m}achine}
  \acro{TCP}{Transmission Control Protocol}
  \acro{TDD}{time division duplex}
  \acro{TDMA}{\LU{T}{t}ime \LU{D}{d}ivision \LU{M}{m}ultiple \LU{A}{a}ccess}
  \acro{TNFD}{three node full duplex}
  \acro{TETRA}{Terrestrial Trunked Radio}
  \acro{TP}{Transmit Power}
  \acro{TPC}{Transmit Power Control}
  \acro{TTI}{transmission time interval}
  \acro{TTR}{Time-To-Rendezvous}
  \acro{TSM}{Throughput-based Satisfaction Maximization}
  \acro{TU}{Typical Urban}
  \acro{UE}{\LU{U}{u}ser \LU{E}{e}quipment}
  \acro{UEPS}{Urgency and Efficiency-based Packet Scheduling}
  \acro{UL}{uplink}
  \acro{UMTS}{Universal Mobile Telecommunications System}
  \acro{URI}{Uniform Resource Identifier}
  \acro{URM}{Unconstrained Rate Maximization}
  \acro{VR}{Virtual Resource}
  \acro{VoIP}{Voice over IP}
  \acro{WAN}{Wireless Access Network}
  \acro{WCDMA}{Wideband Code Division Multiple Access}
  \acro{WF}{Water-filling}
  \acro{WiMAX}{Worldwide Interoperability for Microwave Access}
  \acro{WINNER}{Wireless World Initiative New Radio}
  \acro{WLAN}{Wireless Local Area Network}
  \acro{WMMSE}{weighted minimum mean square error}
  \acro{WMPF}{Weighted Multicarrier Proportional Fair}
  \acro{WPF}{Weighted Proportional Fair}
  \acro{WSN}{Wireless Sensor Network}
  \acro{WWW}{World Wide Web}
  \acro{XIXO}{(Single or Multiple) Input (Single or Multiple) Output}
  \acro{ZF}{Zero-Forcing}
  \acro{ZMCSCG}{Zero Mean Circularly Symmetric Complex Gaussian}
\end{acronym}
%\end{singlespace}



% \tikzset{every picture/.style={line width=0.75pt}}


\begin{figure*}[!t]
\centering
\scalebox{0.35}{

\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt        

\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1]
%uncomment if require: \path (0,1840); %set diagram left start at 0, and has height of 1840

%Shape: Rectangle [id:dp11479372256100451] 
\draw  [color={rgb, 255:red, 245; green, 166; blue, 35 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 245; green, 166; blue, 35 }  ,fill opacity=0.3 ] (446.67,62.52) -- (487.89,62.52) -- (487.89,292) -- (446.67,292) -- cycle ;
%Shape: Rectangle [id:dp46508355804172674] 
\draw  [color={rgb, 255:red, 74; green, 144; blue, 226 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 74; green, 144; blue, 226 }  ,fill opacity=0.3 ] (489.07,62.83) -- (530.29,62.83) -- (530.29,292) -- (489.07,292) -- cycle ;
%Shape: Rectangle [id:dp5884447201549816] 
\draw  [color={rgb, 255:red, 184; green, 233; blue, 134 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 184; green, 233; blue, 134 }  ,fill opacity=0.3 ] (586.57,63.09) -- (627.79,63.09) -- (627.79,292) -- (586.57,292) -- cycle ;
%Shape: Rectangle [id:dp5886283113717858] 
\draw  [color={rgb, 255:red, 155; green, 155; blue, 155 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 155; green, 155; blue, 155 }  ,fill opacity=0.3 ] (531.07,63.09) -- (586.06,63.09) -- (586.06,292) -- (531.07,292) -- cycle ;
%Shape: Rectangle [id:dp7987023465468539] 
\draw  [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=0.5 ][dash pattern={on 4.5pt off 4.5pt}] (442.67,65) -- (631,65) -- (631,112.44) -- (442.67,112.44) -- cycle ;
%Shape: Rectangle [id:dp26553310332840696] 
\draw  [color={rgb, 255:red, 208; green, 2; blue, 27 }  ,draw opacity=1 ][dash pattern={on 5.63pt off 4.5pt}][line width=1.5]  (441.96,150.66) -- (631.97,152.42) -- (632.03,200.77) -- (442.03,199.01) -- cycle ;
%Shape: Rectangle [id:dp8020376278367012] 
\draw  [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=0.5 ][dash pattern={on 4.5pt off 4.5pt}] (443.67,244) -- (632,244) -- (632,291) -- (443.67,291) -- cycle ;
%Shape: Rectangle [id:dp027844143842491675] 
\draw  [color={rgb, 255:red, 184; green, 233; blue, 134 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 184; green, 233; blue, 134 }  ,fill opacity=0.3 ] (446.67,384.52) -- (487.89,384.52) -- (487.89,616.5) -- (446.67,616.5) -- cycle ;
%Shape: Rectangle [id:dp44463042195537605] 
\draw  [color={rgb, 255:red, 245; green, 166; blue, 35 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 245; green, 166; blue, 35 }  ,fill opacity=0.3 ] (488.84,385.09) -- (530.07,385.09) -- (530.07,616.5) -- (488.84,616.5) -- cycle ;
%Shape: Rectangle [id:dp4862172652701764] 
\draw  [color={rgb, 255:red, 74; green, 144; blue, 226 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 64; green, 144; blue, 226 }  ,fill opacity=0.3 ] (586.57,385.09) -- (627.79,385.09) -- (627.79,617) -- (586.57,617) -- cycle ;
%Shape: Rectangle [id:dp9550180406512931] 
\draw  [color={rgb, 255:red, 155; green, 155; blue, 155 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 155; green, 155; blue, 155 }  ,fill opacity=0.3 ] (531.07,385.09) -- (586.06,385.09) -- (586.06,616.5) -- (531.07,616.5) -- cycle ;
%Shape: Rectangle [id:dp08439977356430628] 
\draw  [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=0.5 ][dash pattern={on 4.5pt off 4.5pt}] (444,387.77) -- (631,387.77) -- (631,431.69) -- (444,431.69) -- cycle ;
%Shape: Rectangle [id:dp06292497459185031] 
\draw  [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=0.5 ][dash pattern={on 4.5pt off 4.5pt}] (444,570) -- (630,570) -- (630,615.19) -- (444,615.19) -- cycle ;
%Shape: Rectangle [id:dp6110162259636607] 
\draw  [color={rgb, 255:red, 208; green, 2; blue, 27 }  ,draw opacity=1 ][dash pattern={on 5.63pt off 4.5pt}][line width=1.5]  (444,474.19) -- (631.5,474.19) -- (631.5,520.19) -- (444,520.19) -- cycle ;
%Flowchart: Or [id:dp8591819154286324] 
\draw   (865.17,326.18) .. controls (865.17,319.7) and (870.18,314.45) .. (876.37,314.45) .. controls (882.55,314.45) and (887.57,319.7) .. (887.57,326.18) .. controls (887.57,332.67) and (882.55,337.92) .. (876.37,337.92) .. controls (870.18,337.92) and (865.17,332.67) .. (865.17,326.18) -- cycle ; \draw   (865.17,326.18) -- (887.57,326.18) ; \draw   (876.37,314.45) -- (876.37,337.92) ;
%Straight Lines [id:da6827684175690523] 
\draw [line width=1.5]    (877,268) -- (876.42,310.45) ;
\draw [shift={(876.37,314.45)}, rotate = 270.78] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Straight Lines [id:da7832517529299723] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (742.26,174.5) -- (860.45,316.92) ;
\draw [shift={(863,320)}, rotate = 230.31] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Straight Lines [id:da004128785244158717] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (638.07,168.68) -- (718,168.98) ;
\draw [shift={(722,169)}, rotate = 180.22] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Shape: Rectangle [id:dp952440525092495] 
\draw  [color={rgb, 255:red, 74; green, 144; blue, 226 }  ,draw opacity=0.5 ][fill={rgb, 255:red, 74; green, 144; blue, 226 }  ,fill opacity=0.3 ] (1038.67,161.52) -- (1079.89,161.52) -- (1079.89,522) -- (1038.67,522) -- cycle ;
%Shape: Rectangle [id:dp8458527352428165] 
\draw  [color={rgb, 255:red, 184; green, 233; blue, 134 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 184; green, 233; blue, 134 }  ,fill opacity=0.3 ] (1080.84,162.09) -- (1122.07,162.09) -- (1122.07,522.5) -- (1080.84,522.5) -- cycle ;
%Shape: Rectangle [id:dp7055638580444192] 
\draw  [color={rgb, 255:red, 237; green, 175; blue, 65 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 237; green, 175; blue, 65 }  ,fill opacity=0.3 ] (1178.06,162.09) -- (1219.29,162.09) -- (1219.29,522.5) -- (1178.06,522.5) -- cycle ;
%Shape: Rectangle [id:dp6121745037987334] 
\draw  [color={rgb, 255:red, 155; green, 155; blue, 155 }  ,draw opacity=0.3 ][fill={rgb, 255:red, 155; green, 155; blue, 155 }  ,fill opacity=0.3 ] (1123.07,162.09) -- (1178.06,162.09) -- (1178.06,522.5) -- (1123.07,522.5) -- cycle ;
%Shape: Rectangle [id:dp5484897663143729] 
\draw  [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=0.5 ][dash pattern={on 4.5pt off 4.5pt}] (1033.06,164.27) -- (1224.4,164.27) -- (1224.4,208.19) -- (1033.06,208.19) -- cycle ;
%Shape: Rectangle [id:dp2986116840902209] 
\draw  [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=0.5 ][dash pattern={on 4.5pt off 4.5pt}][line width=0.75]  (1033.06,211.19) -- (1224.4,211.19) -- (1224.4,258.19) -- (1033.06,258.19) -- cycle ;
%Shape: Rectangle [id:dp11798833225492666] 
\draw  [color={rgb, 255:red, 208; green, 2; blue, 27 }  ,draw opacity=1 ][dash pattern={on 5.63pt off 4.5pt}][line width=1.5]  (1033.73,301.19) -- (1225.06,301.19) -- (1225.06,347.19) -- (1033.73,347.19) -- cycle ;
%Shape: Rectangle [id:dp9695859596067027] 
\draw  [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=0.5 ][dash pattern={on 4.5pt off 4.5pt}] (1033.67,474.69) -- (1225,474.69) -- (1225,520.69) -- (1033.67,520.69) -- cycle ;
%Straight Lines [id:da6891035324437904] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (1247.6,323.93) -- (1332.59,323.79) ;
\draw [shift={(1336.59,323.78)}, rotate = 179.91] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Straight Lines [id:da6783905263513135] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (301.6,499.36) -- (375.21,498.62) ;
\draw [shift={(379.21,498.58)}, rotate = 179.42] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Straight Lines [id:da7683471853061432] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (296.27,189.36) -- (369.88,188.62) ;
\draw [shift={(373.88,188.58)}, rotate = 179.42] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Straight Lines [id:da990118908216594] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (887.57,326.18) -- (981,325.69) ;
\draw [shift={(985,325.67)}, rotate = 179.7] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Straight Lines [id:da9735153886972716] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (734.5,115.5) -- (733.94,154.16) ;
\draw [shift={(733.88,158.16)}, rotate = 270.83] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Flowchart: Summing Junction [id:dp08054054170767411] 
\draw   (723.5,168.5) .. controls (723.5,162.79) and (728.15,158.16) .. (733.88,158.16) .. controls (739.61,158.16) and (744.26,162.79) .. (744.26,168.5) .. controls (744.26,174.21) and (739.61,178.84) .. (733.88,178.84) .. controls (728.15,178.84) and (723.5,174.21) .. (723.5,168.5) -- cycle ; \draw   (726.54,161.19) -- (741.22,175.81) ; \draw   (741.22,161.19) -- (726.54,175.81) ;

%Straight Lines [id:da8729929564459264] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (636.07,497.68) -- (716.5,498.94) ;
\draw [shift={(720.5,499)}, rotate = 180.89] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Straight Lines [id:da7884456331382104] 
\draw [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=1 ][line width=1.5]    (731,551.5) -- (730.89,513.34) ;
\draw [shift={(730.88,509.34)}, rotate = 89.84] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ,fill opacity=1 ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Flowchart: Summing Junction [id:dp9697028340789269] 
\draw   (720.5,499) .. controls (720.5,493.29) and (725.15,488.66) .. (730.88,488.66) .. controls (736.61,488.66) and (741.26,493.29) .. (741.26,499) .. controls (741.26,504.71) and (736.61,509.34) .. (730.88,509.34) .. controls (725.15,509.34) and (720.5,504.71) .. (720.5,499) -- cycle ; \draw   (723.54,491.69) -- (738.22,506.31) ; \draw   (738.22,491.69) -- (723.54,506.31) ;

%Straight Lines [id:da3176550356626151] 
\draw [line width=1.5]    (861.54,336.15) -- (739.26,492.5) ;
\draw [shift={(864,333)}, rotate = 128.03] [fill={rgb, 255:red, 0; green, 0; blue, 0 }  ][line width=0.08]  [draw opacity=0] (11.61,-5.58) -- (0,0) -- (11.61,5.58) -- cycle    ;
%Shape: Rectangle [id:dp23735686847365778] 
\draw  [color={rgb, 255:red, 0; green, 0; blue, 0 }  ,draw opacity=0.5 ][dash pattern={on 4.5pt off 4.5pt}] (1033.67,390.69) -- (1225,390.69) -- (1225,436.69) -- (1033.67,436.69) -- cycle ;

% Text Node
\draw (416.77,86.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x}_{1}^{( 1)}$};
% Text Node
\draw (416.77,176.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{\textcolor[rgb]{0.82,0.01,0.11}{x}}\textcolor[rgb]{0.82,0.01,0.11}{_{1}^{( i)}}$};
% Text Node
\draw (418.77,268.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x}_{1}^{( Q)}$};
% Text Node
\draw (416.77,408.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x}_{K}^{( 1)}$};
% Text Node
\draw (415.77,504.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \mathbf{x}_{K}^{( i)}$};
% Text Node
\draw (418.77,592.97) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \mathbf{x}_{K}^{( Q)}$};
% Text Node
\draw (338.52,470.92) node  [font=\LARGE]  {$\mathcal{E}_{K}( \cdot )$};
% Text Node
\draw (264.64,185.18) node  [font=\LARGE]  {$x_{1}^{( i)}$};
% Text Node
\draw (334.19,162.92) node  [font=\LARGE]  {$\mathcal{E}_{1}( \cdot )$};
% Text Node
\draw (769.17,250.1) node  [font=\LARGE]  {$h_{1,\ell }$};
% Text Node
\draw (876.56,247.38) node  [font=\LARGE]  {$\vec{z}_{\ell }$};
% Text Node
\draw (730.39,561.05) node  [font=\LARGE]  {$p_{K,\ell }$};
% Text Node
\draw (1148.67,184.54) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (1148.77,234.44) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (1149.27,324.44) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (1060.77,186.97) node  [font=\Large] [align=left] {$\displaystyle \vec{y}_{1}^{( 1)}$};
% Text Node
\draw (1102.77,186.97) node  [font=\Large] [align=left] {$\displaystyle \vec{y}_{2}^{( 1)}$};
% Text Node
\draw (1200.77,186.97) node  [font=\Large] [align=left] {$\displaystyle \vec{y}_{L}^{( 1)}$};
% Text Node
\draw (1059.77,234.97) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{1}^{( 2)}$};
% Text Node
\draw (1103.77,233.97) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{2}^{( 2)}$};
% Text Node
\draw (1200.77,233.97) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{L}^{( 2)}$};
% Text Node
\draw (1199.77,324.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{L}^{( i)}$};
% Text Node
\draw (1101.77,323.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{2}^{( i)}$};
% Text Node
\draw (1060.77,324.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{1}^{( i)}$};
% Text Node
\draw (1061.77,497.97) node  [font=\Large] [align=left] {$\displaystyle \vec{y}_{1}^{( M)}$};
% Text Node
\draw (1104.77,497.97) node  [font=\Large] [align=left] {$\displaystyle \vec{y}_{2}^{( M)}$};
% Text Node
\draw (1201.77,497.97) node  [font=\Large] [align=left] {$\displaystyle \vec{y}_{L}^{( M)}$};
% Text Node
\draw (1286.86,295.52) node  [font=\LARGE]  {$\mathcal{T}( \cdot )$};
% Text Node
\draw (1372.77,323.31) node  [font=\LARGE,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle f^{( i)}$};
% Text Node
\draw (1005.77,182.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{y}^{( 1)}$};
% Text Node
\draw (1005.77,228.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{y}^{( 2)}$};
% Text Node
\draw (1008.77,321.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \mathbf{y}^{( i)}$};
% Text Node
\draw (1008.77,494.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{y}^{( M)}$};
% Text Node
\draw (509.77,131.28) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (510.77,87.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{1,2}^{( 1)}$};
% Text Node
\draw (511.77,174.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{1,2}^{( i)}$};
% Text Node
\draw (510.77,265.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{1,2}^{( Q)}$};
% Text Node
\draw (556.67,83.54) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (556.77,172.44) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (556.77,128.94) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (557.27,268.44) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (607.27,130.54) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (608.77,87.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{1,L}^{( 1)}$};
% Text Node
\draw (608.18,174.54) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{1,L}^{( i)}$};
% Text Node
\draw (607.77,265.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{1,L}^{( Q)}$};
% Text Node
\draw (467.87,130.97) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (468.77,87.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{1,1}^{( 1)}$};
% Text Node
\draw (467.77,174.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{1,1}^{( i)}$};
% Text Node
\draw (468.77,265.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{1,1}^{( Q)}$};
% Text Node
\draw (732.39,93.55) node  [font=\LARGE]  {$p_{1,\ell }$};
% Text Node
\draw (772.17,392.1) node  [font=\LARGE]  {$h_{K,\ell }$};
% Text Node
\draw (1149.94,413.77) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (1200.44,414.31) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{L}^{( j)}$};
% Text Node
\draw (1102.44,413.31) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{2}^{( j)}$};
% Text Node
\draw (1061.44,414.31) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{y}_{1}^{( j)}$};
% Text Node
\draw (1009.44,411.31) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \mathbf{y}^{( j)}$};
% Text Node
\draw (274.64,498.18) node  [font=\LARGE]  {$x_{K}^{( i)}$};
% Text Node
\draw (468.87,221.47) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (511.27,221.78) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (558.27,221.44) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (608.77,222.04) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (467.37,452.97) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (468.77,409.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{K,1}^{( 1)}$};
% Text Node
\draw (468.77,496.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{K,1}^{( i)}$};
% Text Node
\draw (468.77,591.97) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{K,1}^{( Q)}$};
% Text Node
\draw (509.77,453.28) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (510.77,409.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{K,2}^{( 1)}$};
% Text Node
\draw (512.77,496.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{K,2}^{( i)}$};
% Text Node
\draw (509.77,591.97) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{K,2}^{( Q)}$};
% Text Node
\draw (556.67,407.54) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (557.77,496.44) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (556.77,450.94) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (557.27,590.44) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (607.27,451.54) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (608.77,409.97) node  [font=\Large] [align=left] {$\displaystyle \vec{x}_{K,L}^{( 1)}$};
% Text Node
\draw (608.77,496.97) node  [font=\Large,color={rgb, 255:red, 208; green, 2; blue, 27 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{K,L}^{( i)}$};
% Text Node
\draw (607.77,592.97) node  [font=\Large,color={rgb, 255:red, 0; green, 0; blue, 0 }  ,opacity=1 ] [align=left] {$\displaystyle \vec{x}_{K,L}^{( Q)}$};
% Text Node
\draw (467.87,544.47) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (510.27,544.78) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (557.27,542.44) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (607.77,545.04) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1057.7,278.97) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1100.1,279.28) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1149.1,277.94) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (1197.6,279.54) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1058.37,367.64) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1100.77,367.95) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1147.77,366.61) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (1198.27,368.21) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1058.37,454.97) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1100.77,455.28) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1150.44,452.61) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (1198.27,455.54) node  [font=\Large] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (1150.77,497.94) node  [font=\Large] [align=left] {$\displaystyle \dotsc $};
% Text Node
\draw (465.77,41.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x_{1,1}}$};
% Text Node
\draw (506.77,41.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x}_{1,2}$};
% Text Node
\draw (607.77,42.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x}_{1,L}$};
% Text Node
\draw (466.77,364.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x}_{K,1}$};
% Text Node
\draw (507.77,364.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x}_{K,2}$};
% Text Node
\draw (608.77,365.97) node  [font=\Large] [align=left] {$\displaystyle \mathbf{x}_{K,L}$};
% Text Node
\draw (259.87,342.97) node  [font=\LARGE] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (334.87,341.97) node  [font=\LARGE] [align=left] {$\displaystyle \vdots $};
% Text Node
\draw (766.87,331.97) node  [font=\LARGE] [align=left] {$\displaystyle \vdots $};


\end{tikzpicture}}
\caption{The overall process of proposed \ac{SeMAC} via multi-symbol modulation design. Given the input set \( x_1^{(i)}, \ldots, x_K^{(i)}, i \in [M] \), each node $k$ encodes its input value \( x_k^{(i)} \) into a modulation sequence \( \mathcal{E}_k(x_k^{(i)}) = [\vec{x}_{k,1}^{(i)}, \ldots, \vec{x}_{k,L}^{(i)}] \). At each time slot \( \ell \in [L] \), the \ac{CP} receives a signal given by  
$\vec{y}_{\ell}^{(i)} = \sum_{k=1}^K h_{k,\ell}p_{k,\ell}\vec{x}_{k,\ell}^{(i)} + \vec{z}_{\ell}$,  
where \( h_{k,\ell} \) and \( p_{k,\ell} \) denote the channel coefficient and transmit power of node \( k \) at time slot \( \ell \), respectively, and \( \vec{z}_{\ell} \) is the additive white Gaussian noise at time \( \ell \). Finally, the tabular function $\mathcal{T}(\cdot)$ maps the aggregated sequence $\vec{y}_1^{(i)},\ldots,\vec{y}_L^{(i)}$ into the function output value $f^{(i)}$.
}
\vspace{-10pt}
\label{fig:digital_aircomp}
\end{figure*}
\begin{figure}[!t]
\centering
\begin{tikzpicture}
    \begin{axis}[
        xlabel = {SNR},
        ylabel = {NMSE},
        label style={font=\footnotesize},
        width=0.42\textwidth,
        height=6cm,
        xmin=5, xmax=40,
        ymin=0.00007, ymax=0.5,
        legend style={nodes={scale=0.65, transform shape}, at={(0.3,0.85)}},
        ticklabel style = {font=\footnotesize},
        legend pos=south west,
        ymajorgrids=true,
        xmajorgrids=true,
        grid style=dashed,
        grid=both,
        ymode = log,
        grid style={line width=.1pt, draw=gray!10},
        major grid style={line width=.2pt,draw=gray!30},
    ]
    \addplot[smooth,
             thin,
             dashed,
        color=chestnut,
        mark=*,
        mark options = {rotate = 180,solid},
        line width=0.75pt,
        mark size=1pt,
        ]
    table[x=SNR,y=sum]
    {Data/Sim.dat};
    \addplot[ smooth,
              thin,
              dashed,
            color=airforceblue,
            mark=+,
            mark options = {rotate = 45,solid},
            line width=0.75pt,
            mark size=2.5pt,
            ]
    table[x=SNR,y=prod]
    {Data/Sim.dat};
    \addplot[ smooth,
             thin,
             dashed,
        color=cssgreen,
        mark=asterisk,
        mark options = {rotate = 180, solid},
        line width=0.75pt,
        mark size=2pt,
        ]
    table[x=SNR,y=max]
    {Data/Sim.dat};
    \addplot[ smooth,
             thin,
        color=chestnut,
        mark=square,
        %mark options = {rotate = 180},
        line width=0.75pt,
        mark size=2pt,
        ]
    table[x=SNR,y=sum2]
    {Data/Sim.dat};
    \addplot[ smooth,
             thin,
        color=airforceblue,
        mark=triangle,
        mark options = {rotate = 180, solid},
        line width=0.75pt,
        mark size=2.5pt,
        ]
    table[x=SNR,y=prod2]
    {Data/Sim.dat};
    \addplot[ smooth,
             thin,
        color=cssgreen,
        mark=triangle,
        %mark options = {rotate = 180},
        line width=0.75pt,
        mark size=2.5pt,
        ]
    table[x=SNR,y=max2]
    {Data/Sim.dat};
\legend{$\sum_k\quad L=1$,$\prod_k\quad  L=1$,$\max_k\quad  L=1$,$\sum_k\quad L=2$,$\prod_k\quad L=2$,$\max_k\quad L=2$};
% \legend{Numerical Gap $Q=8$, Analytical Gap $Q=8$, Numerical Gap $Q=16$, Analytical Gap $Q=16$};
\end{axis}
\end{tikzpicture}
\vspace{-1em}
\caption{Performance of \ac{SeMAC} is evaluated across various SNRs in terms of \ac{NMSE} with \( K = 8 \) nodes. 
%The input values are \( x_k \in \{1, 2, 3, 4\} \), and the target function is $f=\sum_{k=1}^Kx_k$, \( f = \prod_{k=1}^K x_k \) and $f=\max_{k}x_k$. The number of allocated time slots is selected from \( L \in \{1, 2\} \).
}
\label{fig:comparison_K_and_L}
\end{figure}

\begin{figure}[!t]
\centering
\begin{tikzpicture}
    \begin{axis}[
        xlabel = {SNR},
        ylabel = {NMSE},
        label style={font=\footnotesize},
        width=0.42\textwidth,
        height=5.25cm,
        xmin=5, xmax=40,
        ymin=0.0001, ymax=0.1,
        legend style={nodes={scale=0.65, transform shape}, at={(0.3,0.85)}},
        ticklabel style = {font=\footnotesize},
        legend pos=south west,
        ymajorgrids=true,
        xmajorgrids=true,
        grid style=dashed,
        grid=both,
        ymode = log,
        grid style={line width=.1pt, draw=gray!10},
        major grid style={line width=.2pt,draw=gray!30},
    ]
    % \addplot[smooth,
    %          thin,
    %          dashed,
    %     color=chestnut,
    %     mark=*,
    %     mark options = {rotate = 180,solid},
    %     line width=0.75pt,
    %     mark size=1.5pt,
    %     ]
    % table[x=SNR,y=bs_sum]
    % {Data/Sim_fading.dat};
    % \addplot[ smooth,
    %           thin,
    %           dashed,
    %         color=airforceblue,
    %         mark=+,
    %         mark options = {rotate = 45,solid},
    %         line width=0.75pt,
    %         mark size=2.5pt,
    %         ]
    % table[x=SNR,y=ReMAC_sum]
    % {Data/Sim_fading.dat};
    % \addplot[ smooth,
    %          thin,
    %          dashed,
    %     color=cssgreen,
    %     mark=asterisk,
    %     mark options = {rotate = 180, solid},
    %     line width=0.75pt,
    %     mark size=2pt,
    %     ]
    % table[x=SNR,y=SeMAC_sum]
    % {Data/Sim_fading.dat};
    \addplot[ smooth,
             thin,
        color=chestnut,
        mark=square,
        %mark options = {rotate = 180},
        line width=0.75pt,
        mark size=2pt,
        ]
    table[x=SNR,y=bs_prod]
    {Data/Sim_fading.dat};
    \addplot[ smooth,
             thin,
        color=airforceblue,
        mark=triangle,
        mark options = {rotate = 180, solid},
        line width=0.75pt,
        mark size=2.5pt,
        ]
    table[x=SNR,y=ReMAC_prod]
    {Data/Sim_fading.dat};
    \addplot[ smooth,
             thin,
        color=cssgreen,
        mark=triangle,
        %mark options = {rotate = 180},
        line width=0.75pt,
        mark size=2.5pt,
        ]
    table[x=SNR,y=SeMAC_prod]
    {Data/Sim_fading.dat};
    \addplot[ smooth,
             thin,
        color=cadmiumorange,
        mark=+,
        mark options = {rotate = 45,solid},
        line width=0.75pt,
        mark size=2.5pt,
        ]
    table[x=SNR,y=channelComp_prod]
    {Data/Sim_fading.dat};
\legend{Bit-Slicing ,ReMAC ,SeMAC, ChannelComp};
% \legend{Numerical Gap $Q=8$, Analytical Gap $Q=8$, Numerical Gap $Q=16$, Analytical Gap $Q=16$};
\end{axis}
\end{tikzpicture}
\vspace{-1em}
\caption{Performance comparison among ReMAC, \ac{SeMAC}, ChannelComp and Bit-Slicing with \( K = 4 \) nodes for computing the product function.
%across $L=2$ time slots for computing the product function $f=\prod_{k=1}^Kx_k$. The input value $x_k$ is selected from $\{1,\ldots,16\}$.
}
\label{fig:comparison_L2}
\end{figure}


\begin{figure}[!t]
\centering
\begin{tikzpicture}
    \begin{axis}[
        xlabel = {SNR},
        ylabel = {NMSE},
        label style={font=\footnotesize},
        width=0.42\textwidth,
        height=5.25cm,
        xmin=10, xmax=35,
        ymin=0.000003, ymax=0.85,
        legend style={nodes={scale=0.65, transform shape}, at={(0.3,0.85)}},
        ticklabel style = {font=\footnotesize},
        legend pos=south west,
        ymajorgrids=true,
        xmajorgrids=true,
        grid style=dashed,
        grid=both,
        ymode = log,
        grid style={line width=.1pt, draw=gray!10},
        major grid style={line width=.2pt,draw=gray!30},
    ]
    \addplot[smooth,
             thin,
             dashed,
        color=chestnut,
        mark=*,
        mark options = {rotate = 180, solid},
        line width=0.75pt,
        mark size=1.5pt,
        ]
    table[x=SNR,y=Q4L2]
    {Data/Sim_PA.dat};
    \addplot[smooth,
              thin,
            color=chestnut,
            mark=*,
            %mark options = {rotate = 180},
            line width=0.75pt,
            mark size=1.5pt,
            ]
    table[x=SNR,y=Q4L2_PA]
    {Data/Sim_PA.dat};
    \addplot[smooth,
             thin, dashed,
        color=airforceblue,
        mark=square,
        mark options = {rotate = 45,solid},
        line width=0.75pt,
        mark size=2pt,
        ]
    table[x=SNR,y=Q16L2]
    {Data/Sim_PA.dat};
    \addplot[ smooth,
             thin,
        color=airforceblue,
        mark=square,
        mark options = {rotate = 45,solid},
        line width=0.75pt,
        mark size=2pt,
        ]
    table[x=SNR,y=Q16L2_PA]
    {Data/Sim_PA.dat};
\legend{SeMAC$\quad Q=4$,SeMAC-PA $Q=4$,SeMAC $Q=16$,SeMAC-PA $Q=16$};
% \legend{Numerical Gap $Q=8$, Analytical Gap $Q=8$, Numerical Gap $Q=16$, Analytical Gap $Q=16$};
\end{axis}
\end{tikzpicture}
\vspace{-1em}
\caption{Performance of \ac{SeMAC-PA} is evaluated across various SNRs in terms of \ac{NMSE} with \( K = 8 \) nodes.
%for computing the product function $f=\prod_{k=1}^K x_k$. The QAM modulation orders are set to \( Q \in \{4,16\} \), and the number of allocated time slots is selected from \( L \in \{1, 2\} \).
}
\label{fig:power_adaptation}
\end{figure}

% Generated by IEEEtran.bst, version: 1.14 (2015/08/26)
\begin{thebibliography}{10}
\providecommand{\url}[1]{#1}
\csname url@samestyle\endcsname
\providecommand{\newblock}{\relax}
\providecommand{\bibinfo}[2]{#2}
\providecommand{\BIBentrySTDinterwordspacing}{\spaceskip=0pt\relax}
\providecommand{\BIBentryALTinterwordstretchfactor}{4}
\providecommand{\BIBentryALTinterwordspacing}{\spaceskip=\fontdimen2\font plus
\BIBentryALTinterwordstretchfactor\fontdimen3\font minus \fontdimen4\font\relax}
\providecommand{\BIBforeignlanguage}[2]{{%
\expandafter\ifx\csname l@#1\endcsname\relax
\typeout{** WARNING: IEEEtran.bst: No hyphenation pattern has been}%
\typeout{** loaded for the language `#1'. Using the pattern for}%
\typeout{** the default language instead.}%
\else
\language=\csname l@#1\endcsname
\fi
#2}}
\providecommand{\BIBdecl}{\relax}
\BIBdecl

\bibitem{letaief2019roadmap}
K.~B. Letaief, W.~Chen, Y.~Shi, J.~Zhang, and Y.-J.~A. Zhang, ``The roadmap to 6{G}: {AI} empowered wireless networks,'' \emph{IEEE Communications Magazine}, vol.~57, no.~8, pp. 84--90, 2019.

\bibitem{wang2023road}
C.-X. Wang, X.~You, X.~Gao, X.~Zhu, Z.~Li, C.~Zhang, H.~Wang, Y.~Huang, Y.~Chen, H.~Haas \emph{et~al.}, ``On the road to 6{G}: Visions, requirements, key technologies and testbeds,'' \emph{IEEE Communications Surveys \& Tutorials}, 2023.

\bibitem{csahin2023survey}
A.~{\c{S}}ahin and R.~Yang, ``A survey on over-the-air computation,'' \emph{IEEE Communications Surveys \& Tutorials}, 2023.

\bibitem{nazer2007computation}
B.~Nazer and M.~Gastpar, ``Computation over multiple-access channels,'' \emph{IEEE Transactions on Information Theory}, vol.~53, no.~10, pp. 3498--3516, 2007.

\bibitem{hellstrom2022wireless}
H.~Hellstr{\"o}m, J.~M.~B. da~Silva~Jr, M.~M. Amiri, M.~Chen, V.~Fodor, H.~V. Poor, and C.~Fischione, ``Wireless for machine learning: A survey,'' \emph{Foundations and Trends{\textregistered} in Signal Processing}, vol.~15, no.~4, pp. 290--399, 2022.

\bibitem{saeed2023ChannelComp}
S.~Razavikia, J.~M.~B. Da~Silva~Jr, and C.~Fischione, ``Channel{Comp}: A general method for computation by communications,'' \emph{IEEE Transactions on Communications}, vol.~72, no.~2, pp. 692--706, 2024.

\bibitem{razavikia2024sumcomp}
------, ``Sum{C}omp: Coding for digital over-the-air computation via the ring of integers,'' \emph{IEEE Transactions on Communications}, vol.~73, no.~2, pp. 752--767, 2025.

\bibitem{liu2025digital}
J.~Liu, Y.~Gong, and K.~Huang, ``Digital over-the-air computation: Achieving high reliability via bit-slicing,'' \emph{IEEE Transactions on Wireless Communications}, vol.~24, no.~5, pp. 4101--4114, 2025.

\bibitem{yan2025remac}
X.~Yan, S.~Razavikia, and C.~Fischione, ``Re{MAC}: Digital multiple access computing by repeated transmissions,'' \emph{IEEE Transactions on Communications}, pp. 1--1, 2025.

\bibitem{yan2024novel}
------, ``A novel channel coding scheme for digital multiple access computing,'' in \emph{IEEE International Conference on Communications}, 2024, pp. 3851--3857.

\bibitem{cao2019optimal}
X.~Cao, G.~Zhu, J.~Xu, and K.~Huang, ``Optimal power control for over-the-air computation,'' in \emph{IEEE Global Communications Conference}, 2019, pp. 1--6.

\bibitem{grant2014cvx}
M.~Grant and S.~Boyd, ``{CVX}: {MATLAB} software for disciplined convex programming, version 2.1,'' 2014.

\bibitem{achlioptas2007fast}
D.~Achlioptas and F.~McSherry, ``Fast computation of low-rank matrix approximations,'' \emph{Journal of the ACM}, vol.~54, no.~2, pp. 9--es, 2007.

\bibitem{kalman1996singularly}
D.~Kalman, ``A singularly valuable decomposition: the {SVD} of a matrix,'' \emph{The College Mathematics Journal}, vol.~27, no.~1, pp. 2--23, 1996.

\bibitem{luo2010semidefinite}
Z.-Q. Luo, W.-K. Ma, A.~M.-C. So, Y.~Ye, and S.~Zhang, ``Semidefinite relaxation of quadratic optimization problems,'' \emph{IEEE Signal Processing Magazine}, vol.~27, no.~3, pp. 20--34, 2010.

\end{thebibliography}