arXiv:1609.05490v1 [cs.IT] 18 Sep 2016 EETASCIN NWRLS OMNCTOS OAPPEAR TO COMMUNICATIONS, WIRELESS ON TRANSACTIONS IEEE r vlae hog iuain n hoeia analysi theoretical and simulations through algor proposed evaluated the are of efficiency proposed and MI Performance -Forcing receiver. then the F is to algorithm algorithm search second our th generalises and A and inte integers. channel Gaussian optimal Eisenstein of the valued of find the complex to over the vectors algorithm coefficient search to In efficient idea case. an their channel propose valued adapt vector. real we the shortest paper, for Sah the by specifically C-F Gastpar of for and proposed find factor was algorithm only exponential deterministic optimal algorithm an within reduction vector search fo Lens Exhaustive (LLL) as complexity form. such in algorithms Lenstra-Lovasz general approximation feasible which while its only users (SVP) of is in problem number coefficients hard vector integer NP shortest the be a of to be known to (C-F shown is coefficients been compute-and-forward integer has optimal of F the implementation Choosing the scheme. relaying in step ing iesenitgr Integer-Forcing integer, Eisenstein cecsRsac oni (EPSRC). Council Research Sciences lcrncEgneig meilCleeLno,London, London, College [email protected]). Imperial [email protected], Engineering, Electronic notg aeaderrpoaiiyta - vrGaussian over C-F than probability with error C-F and that in rate [4] outage covered in perfo superior shown in are achieves is integers integers It Eisenstein over respectively. Eisenstein lattices [5] of [4], and ring [3] Gauss linear the of ring integer and the using over A integers the C-F A codeword. Construction Construction ensures using a created from which yields lattices also built integers, codewords of of codes combination ring lattice the nested over of use scheme. the therefore C-F is the C-F of of step decoding rate key computation r a overall each the at of coefficients maximise is integer coefficients to optimal integer the straightfo Finding of a rank. matrix full in the solved provided be the manner linear where ward can nodes integer messages end transmitted the nodes, linear an to original source natural forwarded decode the subsequently the from are to which exploit messages transmitted channel should of principle relay the combination underlying each of The that computations [2]. is [1], C-F coding of network conventio than of rates higher forms vastly achieve [ to in shown proposed is which scheme compute-and-forward the particular in I h oko ila i sspotdb h niern n Ph and Engineering the by supported is Liu William of work The ila i n ogLn r ihteDprmn fElectric of Department the with are Ling Cong and Liu William Abstract ne Terms Index h - eoiga ea oe n[]i aiiae by facilitated is [1] in nodes relay at decoding C-F The ewr oighv eeae ueaon finterest, layer of physical amount huge in a activities generated research have years coding few network past the N Itgrcefiin eeto sa motn decod- important an is selection coefficient —Integer Cmueadfrad hretvco problem, vector Shortest —Compute-and-forward, fcetItgrCefiin erhfor Search Coefficient Integer Efficient .I I. NTRODUCTION Compute-and-Forward ila i,Cn Ling, Cong Liu, William K(e-mails: UK rmance small r OC- MO s. ring e ithms land al nC- in ysical elay that raei tra- this ger ian nal An 1] r- a ) uligo h oko 1] eetn hi nee co- integer their extend we [13], of work the on building complex for cases. developed opti channel be valued scenarios, must application algorithms real search for coefficient most gains in valued in complex complexity with channels deal reduced wireless to have the we value derive Since real case. to each although assumed algorithm, were search reduce to channels the [15] of and [14] complexity in lowthe work this of on algorithm users. made transmitting was an improvement of through number the exactly in resulting solved complexity polynomial problem be SVP can the C-F re that of from shows case which the for channels method valued search coefficients integer optimal maximum the the of factor. of magnitude scaling value and absolute the the phase for well range both as for factor, size scaling the step con- depen search is algorithm magnitude the method this and of on this complexity phase hence The for solution, suboptimal. step sidered optimal how search the on the guarantee methods of to give size coefficien explicitly the integer coeffi- select not optimal channel to do the scaled authors to the the possible make However as to close magnitud factor as and scaling cients phase this C-F the With the adjusts work. of iteratively same relay the the in method introduced t for C-F [12] phase-precoded in proposed was search(QES) tha exhaustive quantized C-F in users. coefficients of loss integer number rate the optimal computational with the significant increases find in to result [11] will LLL within t the vector to as algori Due short such approximation vector. using a length approach, use the find shortest of algorithms the to suboptimality of These lattice factor [10]. reduced exponential the an Integer-Forcin and of the [9] basis for in the form. [8] receiver and exact C-F scheme C-F antenna, MIMO its standard receive the in for single [7] hard and algorit with [3] NP in approximation proposed based be been have reduction to lattice known Therefore, is Prob t Vector which Shortest finding a (SVP), that is C-F showed of in authors coefficients a number integer the optimal to [3], with In due exponentially users. grows non-viable transmitting that practically Although complexity is coefficie range. search approach integer given [1], this optimal a search the everytime, within guarantees exhaustive vectors search peforming integer exhaustive by all over is [3] C-F in coefficients [6]. in given ri is over integers lattices quadratic utilizing imaginary scheme of C-F adaptive An integers. h ancnrbtoso hswr stefollowing: the is work this of contributions main The an proposed [13] in authors the work, recent more a In called coefficients integer finding of approach heuristic A integer optimal the finding to approach basic most The ebr IEEE Member, thms hms mal lem ngs An nts he he he ts. ds al d g e 1 t IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 2

efficient search algorithm for real valued channels to C-F Λ Λ1. The received signal at each relay node is a linear over complex valued channels. We propose two algorithms combination⊆ of the transmitted signals from all the source with low polynomial complexity in relation to the number nodes plus additive noise which can be expressed as, of transmitting users, that find the exact solution for the L complex valued version of the SVP in C-F. Algorithm 1 y = h x + z. (1) finds the optimal equation coefficients for C-F with single l l l receive antenna over the ring of Gaussian integers and the X=1 ring of Eisenstein integers. Algorithm 2 finds the optimal The fading channel coefficients between the source nodes and equation coefficients for MIMO C-F over the ring of Gaussian the relay nodes are assumed perfectly known at the relay n integers and the ring of Eisenstein integers. The crux of both nodes. The -dimensional codewords are subjected to average 1 2 2 power constraint of E xl P and z CN 0, σ I is a algorithms is Theorem 1 which specifies an exact relationship n k k ≤ ∼ for the optimal solution, relating the optimal coefficients to the circularly-symmetric jointly-Gaussian complex random vector where I is the n n identity matrix.  underlying channel coefficients. In comparison to the original × algorithm given for C-F over real valued channel, we make The target of the C-F decoder at each relay is to decode necessary modifications to streamline our proposed algorithms from the noisy linear signal in (1), an estimate uˆ of an integer in order to make it efficient for computations over the complex linear combination of the transmitted codewords given by, valued channels. The complexity of our proposed algorithms L is examined in detail and simulation analysis is provided to u = alxl mod Λ, (2) compare the performance and efficiency of Algorithm 1 with " l=1 # other efficient integer coefficient search algorithms. X where al is the optimal integer coefficient to be determined as part of the decoding process, and Λ is the C-F shaping A. Notation lattice. The nature of the integer coefficients depends on the In this paper we use the following notations. Z, Z [j] and underlying channel and takes on the form of rational integers Z [ω] denotes the set of integers, Gaussian integers and Eisen- for real valued channels and Gaussian integers for complex 1 √3 R C valued channels. A C-F scheme over Eisenstein integers is stein integers respectively, where ω = 2 + j 2 . and represent the set of real and complex numbers− respectively. For also proposed in [4]. x R, we denote [x] as rounding to the nearest integer with The first step of C-F decoding is to scale the received signal ∈ C by the minimum mean square error (MMSE) coefficient. The half integers rounded upwards. For x we denote [x]Z[j] as quantizing to the nearest ,∈ whereby the real scaled signal, and imaginary components of x are individually rounded to L the nearest integer, with half integers rounded upwards. We y˜ = αy = alxl + zeff, (3) denote as quantizing to the nearest Eisenstein Integer, l=1 [x]Z[ω] X an operation which can be done using an A2 lattice decoder can be expressed in terms of the desired integer linear com- [17], [18]. We denote x as the absolute value of a real number bination of transmitted codewords and the effective noise z , | | eff x R, and as the modulus of a x C. which is a result of channel mismatch and scaling of original ∈ ∈ We denote as the Euclidean norm of a real or complex noise, vector. Scalarsk·k are denoted by plain font and vectors by bold lower case font. Bold capital letters represent matrices. For a L zeff = (αhl al) xl + αz. (4) matrix H, the element Hmn refers to the element in row m − l and column n. For a vector h we denote the n-th element by X=1 hn. When denoting indexed vectors, hm indicates the m-th Standard lattice decoder denoted by QΛ1 (.) is then used to row vector and hT the n-th column vector of H. For an k L quantize the scaled signal to the nearest fine lattice point in n × matrix H, notation Hτ denotes a submatrix of H consisting Λ1. The quantized signal is then modulo operated over the of columns indexed in the set τ 1, ..., L . shaping lattice Λ to decode an estimate uˆ of the integer linear ⊆{ } combination. II. PROBLEM FORMULATION AND EXISTING SEARCH METHODS FOR COMPUTE-AND-FORWARD uˆ = QΛ1 (αy) mod Λ. (5) L For a general relay network of multiple source nodes trans- The optimal coefficient vector a = [a ,a , ,aL] Z[j] 1 2 ··· ∈ mitting to multiple relay nodes, we consider the operations is selected to maximise the achievable computational rate of from the perspective of a single relay node with a single C-F at the relay, which is proven in [1] to be, k receive antenna. The messages w , w , , wL F from 1 2 ··· ∈ q the L source nodes are first encoded to L number of n- P Cn + dimensional complex valued codewords x1, x2, , xL R(h, a) = max log 2 2 . (6) ··· ∈ α C α + P αh a ! which are then transmitted over channel with complex-valued ∈ | | k − k coefficients hl for l = 0, .., L. Denote Λ1 as a fine lattice It is further shown in [1] that this computation rate can be and Λ as a coarse lattice, the codewords to be sent are drawn uniquely maximized by further choosing α to be the MMSE from a nested lattice code defined by the quotient Λ1/Λ where coefficient which is given by, IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 3

To maximize the computational rate (12), it is shown in [9] H ah P that it is sufficient to check the space of all Gaussian integer αMMSE = . (7) 1+ P h 2 vectors a satisfying, k k By substituting MMSE scaling factor α into computa- MMSE a Φ= 1+ P λ2 , (14) tional rate in (6) yields, k k≤ max where λ is the maximump singular value of H. Substi- 2 1 max P ahH − tuting optimal integer forcing vector b into (12), the rate R (h, a)= log + a 2 . (8) opt 2 optimization problem can be expressed as,  k k − 1+ P h !  k k   In [1] it is also shown that the computational rate is greater aopt = argmin f (a) = argmin aMaH than zero for the range, a Z[j]L a=0 a Z[j]L a=0 ∈ \ ∈ \ (15) = argmin aVDVH aH , L a Φ= 1+ P h 2. (9) a Z[j] a=0 ∈ \  k k≤ k k L L q where V C × is composed of the right singular vectors Rate optimization of C-F can be equivalently expressed as a ∈ L L of H and D C × is a diagonal matrix whose first k minimization problem on the effective noise of C-F in (4). ∈ 1 2 − Substituting the MMSE coefficient into the effective noise diagonal elements satisfy ri = 1+ P λi ,i =1, ..., k and the remaining L k elements equal to 1. λi is the i-th singular term, we obtain the cost function f (a) to be minimised in (10). −  Therefore for C-F over complex valued channels, finding the value of H. Therefore the search for the optimal integer optimal equation coefficients can be re-expressed as finding the coefficients vector for MIMO C-F is equivalent to finding the VDVH Gaussian integer vector a Z[j]L that minimizes the target shortest vector in a lattice with gram matrix . cost function f (a), ∈ A. Overview of Exisiting Coefficient Search Methods aopt = argmin f (a) = argmin aMaH a Z[j]L a=0 a Z[j]L a=0 In this section, we review in detail the main integer coeffi- ∈ \ ∈ \ 2  (10) cient search methods for C-F proposed in literature and discuss = argmin aL , a Z[j]L a=0 k k their performance and complexity. ∈ \ 1). Exhaustive search of integer coefficients [1]: The optimal where, integer coefficients in C-F can be found through exhaustive search by checking all the non-zero integer vectors of length M = 1+ P h 2 I P hH h. (11) k k · − · L in a sphere of radius given by the bound on the norm   of integer coefficients in (9) for standard C-F and (14) for M is a Hermitian positive definite matrix and has a Cholesky MIMO C-F. The complexity of exhaustive search is given decomposition M = LLH , where L is a lower triangular by approximately O(Φ2L) where Φ = 1+ P h2 . Since matrix. Therefore finding the optimal integer coefficients in C- the complexity increases exponentially with thek numberk of F can be viewed as the SVP of finding the non-zero minimal p transmitting users, this method has the highest computational Euclidean norm point in a lattice with Gram matrix M. complexity, although it guarantees the optimal solution. In [9] and [10], MIMO C-F was introduced where the 2). Lattice reduction based algorithms focused around the relay aims to decode the best integer linear combination of LLL algorithm [3], [7], [11] for standard C-F. For the SVP in codewords using multiple antennas. The MIMO C-F system Integer-Forcing MIMO C-F, proposed lattice reduction based model consists of transmitting users sending to relays with L algorithms include complex-LLL(CLLL) [8], [16], Hermite- receive antennas. Take H to be a channel matrix k k L Korkine-Zolotareff(HKZ) [8] and Minkowski reduction algo- and let b Ck be a× judiciously chosen = [b1,b2, ,bk] rithm [8]. The underlying principle of the LLL algorithm, preprocessing vector··· which is∈ applied to the channel output which has a complexity of O L4logL , is to compute a vector y at each relay. The relay aims to select the optimal reduced basis from the original basis of the lattice, where coefficient vector a Z L to maximise = [a1,a2, ,aL] [j] the first vector of the LLL-reduced basis approximates the the achievable computational··· rate of MIMO∈ C-F, which is shortest vector of the lattice. For L users the length of the LLL- proven in [9] to be, L−1 approximated shortest vector is at most 2 2 times the length of the shortest vector in the lattice. Therefore as L increases, the rate loss that occurs from using LLL for C-F becomes 1 + P R (H, a, b)= log 2 2 . (12) significant enough such that an optimal yet computationally 2 b + P bH a ! k k k − k efficient search method is required. For SVP over MIMO C- From the perspective of a single relay with multiple receive F, the proposed HKZ and Minkowski reduction algorithms 2 antennas, it is also shown in [9] that the optimal integer forcing in [8] with complexity of (2πe)L+O(log2L) and (5/4)2L vector b that maximises the achievable rate in (12) is given respectively, offer improved performances over CLLL at the by, cost of higher complexity for higher order MIMO channels. 3). Quantized exhaustive search [8] is a streamlined version H 1 H 1 bopt = aH P − I + HH − (13) of the standard exhaustive search method which is originally  IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 4 proposed for the phase precoded C-F, but is also relevantly ap- to reduce the expected complexity to O (L log L). However, plicable to standard C-F scheme. The basis of the method uses as with [13] and [14] , the work of [15] assumes real valued the inferred relationship between optimal integer coefficients channels to arrive at this result. vectors and channel coefficients, III. PROPOSED OPTIMAL ALGORITHM FOR COMPLEX a = [αh] , (16) Z[j] VALUED CHANNEL whereby α C. This relationship was not proven in [12] Since the channel coefficients to be quantised as part of C-F ∈ but made based on heuristic analysis of the C-F model. In decoding lies in C, it is natural that we should first consider quantized exhaustive search, the complex scaling factor α the case where the integer coefficients decoded at the relay is broken down into its phase and magnitude components. belong to the ring of Gaussian integers. For a C-F system of The algorithm changes the magnitude component from 0 to L transmitting users sending to relays with a single receive the maximum magnitude α in steps of α , while antenna over complex channels h CL, we first propose an | |max | |step simultaneously changing the the phase component of α from algorithm that finds the optimal coefficient∈ vector a Z [j]L 0 to 90 in steps of d. The α value taken at each iteration for C-F over Gaussian integers. Additionally, since it is∈ known is used to make an initial estimate of integer coefficient that Z[ω] quantizes C best among all imaginary quadratic vector a using (16), which is then used to calculate the integers, we also adapt our algorithm to find the optimal corresponding MMSE coefficient (7). The estimated a along coefficients a Z [ω]L for C-F over Eisenstein integers. with its corresponding MMSE coefficient is then used to We then propose∈ a search algorithm for MIMO C-F of L evaluate the effective noise term of C-F in (4), and the a that transmitting users and k receive antennas at the relay, that minimises the effective noise is taken as the optimal integer finds the optimal coefficient vector in both Z [j] and Z [ω]. coefficient vector. The complexity of this algorithm is shown to The basis of our two algorithms is Theorem 1 which shows be O(90/d α / α ). Whether this algorithm can yield that the SVP problem in its complex form in C-F has an exact ×| |max | |step the optimal integer coefficients depends entirely on selecting d solution. and α step to be sufficiently small for a specific set of channel instances.| | Since the authors do not outline explicitly how to Theorem 1. For C-F over complex ring R, where R denotes select the exact search parameters to guarantee the optimal either the ring of Gaussian integers or the ring of Eisenstein coefficients, this search method can be considered suboptimal. integers, the solution to (14) satisfies, 4). An optimal integer coefficient search algorithm of opt Z L opt a = [bH]Z[j] , for a [j] , polynomial complexity was proposed in [13] for C-F over a = [bH]R = ∈ (18) aopt = [bH] , for a Z[ω]L. real valued channels. The authors proved that the solution to ( Z[ω] ∈ minimization problem of (10) for integer valued coefficients, for some b Ck, or aopt must be a norm vector in the satisifies, ring R. ∈ aopt = [αh] , (17) The unit norm vector refers to any vector where every for α R, otherwise aopt must be a standard unit norm element of aopt is zero with the exception of one element, vector.∈ This is the fundamental theorem on which the optimal with the nonzero element taking the value of 1, 1, j or j − − polynomial complexity algorithm in [13] is based around. for the ring of Gaussian integers, or 1, 1, ω, ω2 for the − ± ± Using (17), the authors showed that finding the optimal integer ring of Eisenstein integers. L coefficients becomes a one-dimensional optimization problem Proof: We first give proof for the case a Z [j] . ∈ L where the cost function f (a (α)) to be minimised in (9) Consider the optimization problem of finding a Z [j] 0 ∈ \ is a piece-wise constant function in a (α) and therefore a that maximizes the computational rate of MIMO C-F in (12). piecewise constant function in α. The authors find a set of This is clearly equivalent to the minimization problem on the points of α that represent all intervals in which f (a (α)) is target cost function f(a) in (15). Let (bopt, aopt) be the optimal T k L constant and checks the value of f (a (α)) over all points. solution and let h be the n-th column vector of H C × . n ∈ This is done by first finding all the discontinuity points of The two possible cases are, for n =0, 1, ....., L, opt T opt al (α) = [αhl], for l = 1, ..., L, which occur at points where 1) n : b h = 0, in this case a is a Gaussian ∀ n Z[j] αhl is a half integer. Then, using the discontinuity points of integer vector of unit norm,   al (α) the authors proceed to find all the α values for which 2) bopthT , in which case aopt boptH . n : n Z[j] =0 = [ ]Z[j] a (α) is discontinuous, which are also the α values for which ∃ 6 l Therefore the optimal solution takes on the form of aopt = the function f (a (α)) is discontinuous. The α discontinuities   [boptH] or it will be a Gaussian integer vector of unit norm. points are then sorted in ascending order and the middle Z[j] The proof for Theorem 1 over the ring of Eisenstein integers value between consecutive discontinuities are used to evaluate can be deduced in a similar manner. f (a (α)). The α value that minimises the target function therefore generates the optimal integer coefficients based on relationship (17). The complexity of this algorithm is shown A. Proposed Algorithm: C-F over Gaussian Integers to be O L2Φ . An improvement is made on this algorithm We first present our algorithm for C-F over Gaussian inte- by the original authors in [14] to reduce the complexity to gers for the complex channel, when the relay has one receive O (LΦ log (LΦ)) . In [15], a further improvement is proposed antenna. Note that for single receive antenna case of k =1, it IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 5 can be deduced from Theorem 1 that the optimal coefficient opt vector will either take on the form of a = [αh]Z[j] for some α C, or it will be a Gaussian integer vector of unit norm. Based∈ on this relationship between optimal coefficient vector and α, we can likewise express the target minimization function in (10) as a function of α. The first step in our search method is finding the set of values in α representing the discontinuity points of the con- tinuous function f (a (α)), based on the discontinuity points of neighbouring Gaussian integer coefficients a (α). This is possible since the values of α for which a (α) Z [j]L is discontinuous are also values for which f (a (α))∈is discon- tinuous. Using the points of discontinuity for f (a (α)), we can then find a point to represent every constant interval of f (a (α)), therefore allowing us to evaluate the specific value of α and the corresponding a (α) that minimises f (a (α)). Fig. 1. The plot of target minization function f (a (α)) against real and imaginary components of α. Note that f (a (α)) is a two dimensional piecewise linear function due to the real and complex components of Gaussian integer variable. From the minimization cost function in (10), it can be This can be illustrated by the three dimensional plot of observed that the discontinuities in f (a (α)) occur when the the target function f (a (α)) against the real and imaginary Gaussian integer coefficients a (α) Z [j]L change in value, components of α, shown in Figure 1, where each locally ∈ constant part of the function is composed of polytopes. To or equivalently when its individual elements al change in value, for l = 1, ..., L. Since we know from Theorem 1 evaluate the minimization problem completely, we must find a value of α to represent every constant part of the function. that al (α) = [αhl], the discontinuities of al (α) occur when the real part or the imaginary part, or both components of Note that for the one dimensional piecewise constant func- αhl are half integers. From the rounding relationship denoted tion that occurs in the optimization problem for C-F over in Theorem 1, we can see that the significance of the dis- real valued channels, the authors in [13] proposed that the continuities between neighbouring Gaussian integers is that obtained discontinuities should be sorted and the average value they represent the exact cut-off points between rounding to of consecutive discontinuties used to evaluate f (a (α)). If one Gaussian integer or to the other, and therefore they also we were to translate this approach to the complex channel, represent the discontinuities of f (a (α)). The discontinuities then we need to find a point of α to represent each constant of Gaussian integer vector a (α) that we need to consider polytope plane of f (a (α)) and evaluate f (a (α)) for that are therefore the intermediate points between neighbouring point. This optimization problem over multiple dimensions Gaussian integer points in the real and imaginary domain. was tackled for the MIMO C-F model in [13] whereby when Denoting discontinuities of a (α) by ϕ, these are complex the number of receive antennas at the relay is more than one, valued points of the form, the cost function to be minimised can also be viewed as a multi-dimensional piecewise linear function that can be solved by ensuring every constant polytope region of f (a (α)) is c + dj where c Z, d 1 Z, ∈ − 2 ∈ checked. The authors in [13] proposed to find the average of ϕ Ψ: e + fj where e 1 Z, f Z, (19)  2 every possible pairwise combinations of all the discontinuities ∈ o + pj where o − 1 ∈ Z, p ∈ 1 Z.  − 2 ∈ − 2 ∈ in α, which will guarantee that each constant region will Given the constraint on the optimal coefficient vector in (9) have at least one representative. The problem with obtaining we know that it is only necessary to check discontinuities of average values in this manner is that it makes this part of a (α) within a sphere of radius slightly larger than the bound the algorithm inefficient, resulting in an excessively high in (9), namely, complexity that depends on the total number discontinuities, which is determined by the bound in (20) and the number of 1 ϕ Φ + . (20) transmitting users. | |≤⌈ ⌉ 2 However, in our proposed algorithm we make an efficient Using the relationship between a (α) and α inferred in simplification of the approach in [13] to significantly reduce Theorem 1, along with the discontinuities of a (α) that satisfy computational complexity without sacrificing performance. In the bound in (20), we can deduce that the values of α for fact, it is sufficient to use the values of α for which f (a (α)) which a (α) and f (a (α)) is discontinuous, are given by, is discontinuous, to directly evaluate the cost function in (10). ϕ 1 For the real channel case, this is true because the piece- Ω= l =1, ..., L, hl =0, ϕ Φ + . (21) wise constant function will be open at one end and closed h | 6 | |≤⌈ ⌉ 2  l  at the other, by the virtue of the rounding operation. When The discontinuities of f (a (α)) given by the set Ω therefore we evaluate f (a (α)) directly using its discontinuities in α, form the vertices of planes where f (a (α)) is locally constant. there will be a singular elements of αh that are exactly half IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 6 integers. This means the value of f (a (α)) for that α will Therefore the values of a , ahT in (8), and the overall be calculated using the a (α) obtained by rounding up αh at computational rate of C-F,k k do not change for any single its half integer components. Therefore the discontinuity points element of Ω as it is rotated through each of the four quadrants. can be used to obtain the value of f (a (α)) for the particular As a result, when evaluating f (a (α)) for elements of the interval which the discontinuity proceeds in the piecewise step Ω, only discontinuities within a single quadrant of Ω needs function. Taking into account that f (a (α)) is zero when α is to be checked. The proposed method is explicitly outlined in zero, no interval is unaccounted for. Algorithm 1. Therefore for the complex channel case, we can use the discontinuities of f (a (α)) denoted by set Ω to directly B. Proposed Algorithm: C-F over Eisenstein Integers evaluate f (a (α)). Note that the value of a(α) calculated using Eisenstein integers are complex numbers of the form a+bω Theorem 1 for α Ω will assume the rounded up value of where a,b Z and ω = 1 +j √3 . In the case where the relay αh, where half integer∈ values in real and imaginary planes 2 2 would like∈ to decode an− Eisenstein integer linear combination are both rounded upwards. In this way, every discontinuity of codewords with coefficients a Z [ω]L, our proposed in α represents a plane where f (a (α)) is constant. The method can also be adapted to find∈ the optimal Eisenstein minimization problem can be written as, integer coefficients, effectively finding the exact solution for, aopt = argmin f (a) = argmin f (a (α)) . (22) opt H L a = argmin f (a) = argmin aMa . (23) a Z[j] a=0 α Ω L L ∈ \ ∈ a Z[ω] a=0 a Z[ω] a=0 ∈ \ ∈ \  From an implementation perspective, there are a number of The proposed optimal coefficient search algorithm for C-F ways to optimise the search algorithm. One way to do this over Eisenstein integers therefore follows the same structure is to efficiently generate Ψ in (19) and consequently Ω in as for Gaussian integers. First we calculate the discontinuities (21). For small values of L, Ω can be easily generated by ϕ between neighbouring Eisenstein integers that satisfy the 1 iterating over two loops, each loop running from Φ + 2 constraint, 1 − ⌈ ⌉ 3 to Φ + 2 incrementing in steps of 0.5, which represents loops ϕ Φ + . (24) over⌈ the⌉ real and imaginary part of the discontinuities. Even | |≤⌈ ⌉ 4 though an excess of points is generated for Ψ, this method is The discontinuities between Eisenstein integers are intermedi- an efficient way of implementing this part of the algorithm for ate points between one Eisenstein integer and a neighbouring small number of users. The reason is that since every element Eisenstein integer that is closer to it in Euclidean distance of Ψ is used L times to generate elements of Ω, then for than any other Eisenstein integer. The significance of the small L the excess of points generated for Ω is also small. discontinuities is that they represent the exact cut-off point for For larger values of L, using this imprecise method will lead lattice decoding to one Eisenstein integer or to a neighbouring to a larger amount of excess points for Ω. Therefore it might be Eisenstein integer. Therefore the discontinuities represent the more computationally efficient to generate the exact values of transition points where the value of f (a (α)) changes. The Ψ without any additional excess points. One way to generate discontinuities ϕ between neighbouring Eisenstein integer the exact points of Ψ is by iterating over the same two loops points that we must consider are, but adjusting the range of values searched in one loop based c + dj where c 1 + 1 Z, d √3 + √3 Z, on the value selected in the other loop. For example, denote ∈ 4 2 ∈ 4 2 ϕ Ψ: e + fj where e Z, f √3 + √3Z, as the value selected by the loop generating real part of ∈  ∈ ∈ 2 theℜ discontinuity, and denote as the value generated by  o + pj where o 1 + Z, p √3Z. ∈ 2 ∈ the loop representing imaginaryℑ values. We iterate the real (25) 1 1 Note that each of the three types of discontinuites in (25) value loop from Φ + 2 to Φ + 2 incrementing in steps of 0.5, and for− each⌈ ⌉ value of the⌈ ⌉ real loop , we iterate can be generated by iterating over two loops for the real and  ℜ 1 2 2 imaginary components of the discontinuities. Based on (24), the imaginary value loop from Φ + 2 to 3 3 − ⌈ ⌉ −ℜ the range of each loop will be Φ + 4 to Φ + 4 . q  − ⌈ ⌉ L ⌈ ⌉ 1 2  Using the discontinuities of a (α) Z [ω] denoted by ϕ Φ + 2 in steps of 0.5. Even though this leads ∈  ⌈ ⌉ 2 −ℜ and the relationship specified in Theorem 1, we can obtain   toq additional  computational costs to generate the relevant the values of α for which f (a (α)) is discontinuous. Ω in values of Ψ, the overall complexity of generating Ω and (26) denotes the set of all discontinuities of α that must be subsequent operations of evaluating a (α) will be lower for evaluated, larger values of L. ϕ 3 Our proposed algorithm can also be made more efficient by Ω= l =1, ..., L, hl =0, ϕ Φ + . (26) h | 6 | |≤⌈ ⌉ 4 recognising that only one quadrant of Ω needs to be evaluated  l  to completely solve the minimization of f (a (α)). This is Using each discontinuity point in Ω we calculate a corre- because discontinuities represented by Ω has a rotational sponding Eisenstein integer coefficient vector using Theorem symmetry of four, and Gaussian integer space also has a 1, taking the optimal Eisenstein integer coefficient to be the rotational symmetry order of four. This means any Gaussian a (α) Z [ω]L that minimises the target cost function (23). ∈ integer will become another Gaussian integer of the same A number of efficient A2 hexagonal lattice decoders are modulus after rotation through each of the four quadrants. proposed in [17] and [18], which can be used to perform [ ] , · Z[ω] IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 7

Algorithm 1 Optimal Coefficient Search Algorithm for C-F over Complex Channels Input: Channel vector h, transmission power P Output: Optimal coefficient vector aopt Initialization 2 1: M = 1+ P h I P hH h k k · − · 2: f (a)= aMaH  3: fmin = ∞ 2 4: Φ= 1+ P h Lk k 5: Z Z 1 Z 1 Z Z 1 Z For aq [j] : Define complex set Ψ: c + dj, e + fj, o + pj , c , d 2 , e 2 , f , o 2 , p 1 ∈ Z where any ϕ Ψ satisfies ϕ { Φ + 1 . } ∈ − ∈ − ∈ ∈ − ∈ − 2 ∈ ∈ k k≤⌈ ⌉ 2 For a Z [ω]L: Define complex set Ψ: c + dj, e + fj, o + pj where c 1 + 1 Z, d √3 + √3 Z, e Z, f √3 +√3Z, ∈ { } ∈ 4 2 ∈ 4 2 ∈ ∈ 2 o 1 + Z, p √3Z where any ϕ Ψ satisifes ϕ Φ + 3 . ∈ 2 ∈ ∈ k k≤⌈ ⌉ 4 6: Define Z [j] quantizer [ ] as in Section I: A · Z[j] 7: Define Z [ω] quantizer [ ] as in Section III: B · Z[ω] Phase 1 - Obtain discontinuities of f (a (α)) 8: for all l 1, ..., L and hl =0 do ∈{ } 6 9: for all ϕ Ψ do ∈ ϕ L 10: Calculate a h for a Z or = hl [j] Z[j] ∈ a h ϕ h i for a Z L = hl [ω] Z[ω] ∈ 11: Calculate f (a)=h aMai H 12: if f (a)

Algorithm 2 Optimal Coefficient Search Algorithm for MIMO C-F over Complex Channels Input: Channel matrix H, transmission power P , Gram matrix M = VDVH as defined. Output: Optimal coefficient vectors aopt. Initialization 1: λmax is the maximum singular value of H 2: fmin = ∞ 2 3: Φ= 1+ P λmax L 4: For a Z [j] : Define complex set Ψ: c + dj, e + fj, o + pj , c Z, d 1 Z, e 1 Z, f Z, o 1 Z, p 2 2 2 p 1 ∈ Z where any ϕ Ψ satsifies ϕ { Φ + 1 . } ∈ − ∈ − ∈ ∈ − ∈ − 2 ∈ ∈ k k≤⌈ ⌉ 2 For a Z [ω]L: Define complex set Ψ: c + dj, e + fj, o + pj where c 1 + 1 Z, d √3 + √3 Z, e Z, f √3 +√3Z, ∈ { } ∈ 4 2 ∈ 4 2 ∈ ∈ 2 o 1 + Z, p √3Z where any ϕ Ψ satisifes ϕ Φ + 3 . ∈ 2 ∈ ∈ k k≤⌈ ⌉ 4 5: Define Z [j] quantizer [ ] as in Section I: A · Z[j] 6: Define Z [ω] quantizer [ ] as in Section III: B · Z[ω] Phase 1 - Obtain discontinuities of f (a (α)) 7: for all τ 1, ..., L , τ = k, (H) full rank do ⊆{ } | | τ Φ + 1 1 for a Z [j]L 8: for all c Ψk, c ⌈ ⌉ 2 ∈ do ∈ | |≤ Φ + 3 1 for a Z [ω]L (⌈ ⌉ 4  ∈ 1 Z 1 Z 9: Calculate a = c (Hτ )− H  for a [j], or a = c (Hτ )− H for a [ω] Z[j] ∈ Z[ω] ∈ H 10: if f (a)= aMah

2 Φ + 1, is given by π/4. Therefore we can deduce the upper⌈ ⌉ bound on the total number of discontinuities of a (α) (L π 3 Φ 2 +3 Φ +1 )k to be searched as, O kL ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ k!  ! π 3 Φ 2 +3 Φ +1 . ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ Lk+1 π 3 Φ 2 +3 Φ +1 k = O ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ . Taking into account the number of transmitting users L, the (k 1)!  ! total number points of α for which f (a (α)) is discontinuous − is given by, In [13], it is shown that the term Φ is upperbounded by L π 3 Φ 2 +3 Φ +1 . a polynomial function of L. Therefore, the complexity of ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ Algorithm 2 for MIMO C-F is of polynomial complexity in Since we only need to check discontinuities in one of the quad- L. From an implementation perspective, the search speed of rants of the complex set Ω to evaluate f (a (α)) completely, Algorithm 2 will be slower than Algorithm 1 for two main the complexity is quartered, seasons. Firstly with Algorithm 2 the complexity of evaluating k 2 total number of permutations for discontinuities c Ψ that 0.25L π 3 Φ +3 Φ +1 . 1 ∈ ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ satisfy the bound c Φ + 1 is much higher than for | |≤ ⌈ ⌉ 2 Finally to enumerate the value of f (a)= aMa H , L number Algorithm 1, where only discontinuties ϕ Ψ within the 3  ∈ of calculations are performed to obtain the summation result- bound ϕ Φ + 4 needs to be evaluated. Additionally, | |≤⌈ ⌉ 1 ing from the matrix multiplication. The overall complexity of the matrix inversion operation (Hτ )− which must be per- Algorithm 1 for the complex channel case is therefore given formed for each set of discontinuities also increases runtime by, significantly for each iteration in comparison to Algorithm 1 0.25L2 π 3 Φ 2 +3 Φ +1 . where only a division by a complex variable is required to ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ obtain the discontinuities of f (a (α)). The complexity of Algorithm 1 for finding the optimal C- F coefficients over Eisenstein integers can be characterised IV. NUMERICAL RESULTS by three main parts. The complexity of the first part derives from obtaining all the discontinuities of f (a (α)) defined in We verify the performance of our proposed Algorithm 1 for (25). Following the same method of analysis for Gaussian standard C-F over the ring of Gaussian integers by running integers, for L users it can be shown that the number of simulations to examine its performance and efficiency. All the discontinuities of f (a (α)) is of O LΦ2 . In the second part numerical results are obtained using MATLAB on an Intel of the algorithm, each α discontinuity is used to obtain a Core(TM) i5 CPU @2.2GHz.  corresponding a (α) via the A2 decoder which means the In Figure 2 we compare the efficiency of Algorithm 1 speed of the overall algorithm is also highly dependent on the against the exhaustive search method for C-F over Gaus- efficiency of the A2 decoder. Finally the value of f (a (α)) sian integers, with two transmitting users and single receive can be calculated in O (L). The overall complexity of the antenna. The wireless channel between each user and the algorithm is therefore given by O L2Φ2 . In comparison to relay node is assumed to be complex Gaussian channel. 5000 Algorithm 1 over Gaussian integers, the search over Eisenstein channel instances are generated for each SNR. The search integers runs slightly slower in part due to the need to check duration for each channel instance is accumulated and the more discontinuities, and also due to use of the A2 decoder total CPU runtime is compared between Algorithm 1 and to generate the quantized coefficients. the exhaustive search method. The ratio of CPU runtime for For complexity of Algorithm 2 for MIMO C-F, there are exhaustive search over the Algorithm 1 is given in Figure 2. approximately ( π 3 Φ 2 +3 Φ +1 )k discontinuities of It can be observed that as SNR increases, our proposed search ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ a (α) Z [j]L satisfying bound (20). For each of these algorithm runs much faster than the exhaustive search method. ∈ 1  discontinuities, c (H )− is calculated P (L, k) times to obtain This is consistent with theory as for two users, the complexity τ 2 all the discontinuities of f (a (α)) in α, of our proposed Algorithm 1 increases at the rate of O(Φ ) as the SNR increases, while the exhaustive search algorithm L 4 ( π 3 Φ 2 +3 Φ +1 )k. increases at the rate O(Φ ). k ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ In Figure 3 and Figure 5, the average C-F rates of Al-   This expression can be upperbounded by,  gorithm 1, QES and CLLL are compared for L = 4 and L = 8 respectively. The computational rate is taken as rate Lk per user which is obtained by averaging the rate for 5000 ( π 3 Φ 2 +3 Φ +1 )k k! ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ channel instances. For QES, simulations with three different (L π 3 Φ 2 +3 Φ +1 )k sets of search step parameters are performed. The step sizes = ⌈ ⌈ ⌉ ⌈ ⌉ ⌉ . k! are selected to ensure that QES performs at least on par with  CLLL in terms of achievable rate, with CLLL taken as the Each discontinuity of f (a (α)) is used to calculate a = 1 baseline comparison. From Figure 3 and Figure 5 it can be c (Hτ )− H and evaluate f (a (α)), both operations can Z[j] seen that Algorithm 1 produces the optimal rate while the QES hbe calculatedi at O (kL). Therefore the complexity of Algo- simulations approach optimal rate for finer step size selections. rithm 2 can be denoted by, Figure 4 and Figure 6 compares the efficiency of the three IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 10

800 200

180 CLLL 700 Algorithm-1 ° 160 QES(MagnitudeStep=1, PhaseStep=5 ) ° 600 QES(MagnitudeStep=0.5, PhaseStep=5 ) ° 140 QES(MagnitudeStep=0.1, PhaseStep=5 ) 500 120

400 100

80 300 CPU time (s) 60 Search Speed Ratio (times) 200 40 100 20

0 0 10 12 14 16 18 20 10 11 12 13 14 15 16 17 18 19 20 SNR (dB) SNR (dB)

Fig. 2. Runtime performance ratio Exhaustive Search CPU time against SNR Fig. 4. CPU runtime comparison of Algorithm 1 against CLLL and QES  Algorithm 1 CPU time  for L = 2. with various search step parameters for L=4.

1.2 0.45 CLLL Algorithm-1 ° 1.1 QES (MagnitudeStep=0.1, PhaseStep=5 ) ° 0.4 QES (MagnitudeStep=0.5, PhaseStep=1 ) ° QES (MagnitudeStep=0.5, PhaseStep=5 ) 1 0.35

0.9

0.3 0.8 CLLL Average rate per user (bit) Average rate per user (bit) Algorithm-1 ° 0.25 0.7 QES(MagnitudeStep=1, PhaseStep=5 ) ° QES(MagnitudeStep=0.5, PhaseStep=5 ) ° QES(MagnitudeStep=0.1, PhaseStep=5 ) 0.6 0.2 10 11 12 13 14 15 16 17 18 19 20 10 11 12 13 14 15 16 17 18 19 20 SNR (dB) SNR (dB)

Fig. 3. Rate performance comparison of Algorithm 1 against CLLL and Fig. 5. Rate performance comparison of Algorithm 1 against CLLL and QES with various search step parameters for L=4. QES with various search step parameters for L=8 search algorithms, Algorithm 1, CLLL and 3 versions of QES in the slight gap from the optimal rate. Another observation with different search steps, for L =4 and L =8 respectively, we make based on the data in Figure 4 is that as we fine charting their CPU runtime against SNR. tune the QES step size, the runtime increases significantly, In terms of performance against complexity trade-off com- yet the improvement in C-F rate diminishes considerably as parison, we focus on Algorithm 1 and QES which are the QES approaches optimality. This can be observed by com- two most competitive search algorithms investigated in this paring the rate and CPU time for QES(MagnitudeStep=0.5, work. For L = 4 we observe QES can achieve within 5% PhaseStep=5◦) and QES(MagnitudeStep=0.1, PhaseStep=5◦) of the optimal rate at a much lower CPU runtime cost than where the improvement in rate performance is approximately the proposed Algorithm 1, especially for high SNR values. 5% across all SNR values, yet the CPU time increased by over QES(MagnitudeStep= 0.1, PhaseStep=5◦) provides near op- 100% at 10dB and over 300% at 20dB. timal rate performance to Algorithm 1 at slightly higher For L = 8 transmitting users, by comparing the plots computational cost than Algorithm 1 at lower SNR values. for QES(MagnitudeStep=0.5, PhaseStep=5◦) against plot for At higher SNR, the efficiency of QES becomes more distinc- Algorithm 1, for SNR of 10dB it can be seen that Algorithm 1 tive. For lower SNR values of the QES(MagnitudeStep=0.1, gives approximately 30% improvement in rate at the cost of 5 PhaseStep=5◦) plot, it’s worth noting that even when step sizes times the runtime of QES. At higher SNR values, this trade-off are set to a minute level that pushes QES runtime to exceed the becomes much worse, since the complexity of our proposed runtime of Algorithm 1, the QES will still return a noticeable method increases exponentially with SNR which is consistent amount of suboptimal coefficient vectors which is reflected with our analysis of its complexity at O L2Φ2 . Nevertheless,  IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 11

700 40

CLLL Complex-LLL search ° 600 Algorithm-1 35 QES (MagnitudeStep=1, PhaseStep=5 ) ° QES (MagnitudeStep=0.1, PhaseStep=5 ) Proposed Optimal Search ° QES (MagnitudeStep=0.5, PhaseStep=1 ) 30 ° 500 QES (MagnitudeStep=0.5, PhaseStep=5 )

25 400 20 300 CPU time (s) CPU time (s) 15

200 10

100 5

0 0 10 11 12 13 14 15 16 17 18 19 20 2 3 4 5 6 7 8 9 10 SNR (dB) Number of users

Fig. 6. CPU runtime comparison of Algorithm 1 against CLLL and QES Fig. 8. CPU runtime against user number L for Algorithm 1, CLLL and with various search step parameters for L=8. QES, at SNR=10dB

1.4 Complex−LLL search approach optimality at a much smaller computational cost than Quantized Exhaustive Search 1.2 Proposed Optimal Search Algorithm 1, it cannot guarantee to return the exact optimal coefficients for random channel instances, even when search

1 steps are set to miniscule values. Nevertheless, because the number of missed optimal coefficients is so small for detailed 0.8 QES search steps, the overall loss can be made neglible, thus giving a very good trade-off between performance and 0.6 complexity. Figure 7 illustrates the rate performance of each search Average rate per user (bit) 0.4 method for C-F as L increases while Figure 8 shows the corresponding CPU runtime. Note that QES plots in Figure 7 0.2 and Figure 8 assume a fixed magnitude and phase step size

0 which was selected to ensure QES performed at least on par 2 3 4 5 6 7 8 9 10 Number of users with CLLL. We observe that the computational rate per user of C-F naturally decreases as L increases due to increased interference between users. The performance of CLLL and Fig. 7. Rate performance against transmitting user number L, for Algorithm 1, CLLL and QES, at SNR=10dB. QES both deteriorate with increasing L in a similar manner. This is consistent with theory as the performance of CLLL is L−1 known to deteriorate at an exponential factor of 2 2 as L even using minute QES step values that result in excessively increases. The performance of QES deteriorates with L for a long runtime, QES still returned non-optimal coefficient vec- fixed search step since this parameter should be adjusted to tors for a large number of channel instances, as it does for the be gradually smaller with increasing L in order to maintain L = 4 simulations. QES(MagnitudeStep=0.1, PhaseStep=5◦) optimality of search. How to adaptively select search step provides near optimal rate performance at slightly lower parameters to bring about optimal performance for the QES is complexity than Algorithm 1 for smaller SNR values. At still an open problem. However, due to the close relationship higher SNR, the better efficiency of QES becomes distinctively between QES and Algorithm 1, it can be conjectured that larger. Comparing QES(MagnitudeStep=0.5, PhaseStep=5◦) the QES search steps required to ensure optimal performance with QES(MagnitudeStep=0.5, PhaseStep=1◦) we note that depends on the angle and Euclidean distance between the two runtime drastically increases with no noticeable change in rate, α discontinuities of f (a (α)) with the minimum Euclidean which again suggests there is a threshold on the extent altering distance from each other. the magnitude and phase steps can efficiently improve the per- Figure 8 shows the CPU time of the search algorithms as formance of the QES for a specific set of channel parameters. L increases for SNR of 10dB. The runtime of Algorithm 1 Using the numerical data available, we have found that for increases exponentially with L as predicted by its theoretical certain SNR values it is not possible for QES to return 100% complexity of O L2Φ2 . QES shows gradual increase in optimal coefficient vectors, even when its runtime exceeds that runtime with increasing L due to the minimization function  of Algorithm 1. Therefore, we conclude that while QES is a term (10) which must be evaluated at a complexity of O (L) highly efficient and competitive search algorithm which can for each a (α) obtained in the iterative search. Finally, even IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, TO APPEAR 12 though CLLL has a theoretical complexity of O L4 LogL , [11] A. K. Lenstra, H. W. Lenstra, and L. Lov´asz, “Factoring polynomials based on actual runtime performance, it is still very efficient with rational coefficients,” Mathematische Annalen, vol. 261, no. 4, pp.  515–534, 1982. because of the low computational complexity of each round [12] A. Sakzad, E. Viterbo, J. J. Boutros, and Y. Hong, “Phase precoding of calculation. for the compute-and-forward protocol,” arXiv preprint arXiv:1404.4157, 2014. [13] S. Sahraei and M. Gastpar, “Compute-and-forward: Finding the best V. CONCLUSION equation,” in Communication, Control, and Computing (Allerton), 2014 52nd Annual Allerton Conference on. IEEE, 2014, pp. 227–233. In this paper, we proposed algorithms in low polynomial [14] S. Sahraei and M. Gastpar, “Polynomially solvable instances of the complexity to optimally solve the shortest vector problem that shortest and closest vector problems with applications to compute-and- occurs in C-F over complex channels, for both the single forward,” arXiv preprint arXiv:1512.06667, 2015. [15] J. Wen and X.-W. Chang, “A linearithmic time algorithm for a short- receive antenna case and MIMO C-F. The algorithms can est vector problem in compute-and-forward design,” arXiv preprint be used to obtain the optimal equation coefficients for C-F arXiv:1602.00169, 2016. over the ring of Gaussian integers and the ring of Eisenstein [16] Y. H. Gan, C. Ling, and W. H. Mow, “Complex lattice reduction algorithm for low-complexity full-diversity mimo detection,” IEEE integers. We derived the computational complexity for our Transactions on Signal Processing, vol. 57, no. 7, pp. 2701–2710, 2009. proposed algorithms and used simulation results to verify [17] J. Conway and N. Sloane, “Fast quantizing and decoding and algorithms the gap in actual performance between our proposed search for lattice quantizers and codes,” IEEE Transactions on Information Theory, vol. 28, no. 2, pp. 227–232, 1982. method, exhaustive search, quantized exhaustive search, and [18] W. Mow, “Fast decoding of the hexagonal lattice with applica- complex-LLL, which are the main coefficient search algo- tions to power efficient multi-level modulation systems,” in Singapore rithms in literature for C-F over complex value channels. It ICCS/ISITA’92.’Communications on the Move’. IEEE, 1992, pp. 370– 373. is shown that our proposed search algorithm for standard C-F can achieve optimal performance at competent computational costs. Although quantized exhaustive search can obtain near optimal rates at very efficient computational cost, it cannot guarantee the optimal solution for arbituary channel instances. For future work, the natural extension would be to extend our search algorithms to compute-and-forward over general alge- braic rings. This would be particularly useful in conjunction with an adaptive compute-and-forward scheme which chooses the best ring of imaginary quadratic integers to quantize each complex valued channel coefficient, thus achieving better performance than by working strictly with fixed rings.

REFERENCES [1] B. Nazer and M. Gastpar, “Compute-and-forward: Harnessing inter- ference through structured codes,” IEEE Transactions on Information Theory, vol. 57, no. 10, pp. 6463–6486, 2011. [2] M. P. Wilson, K. Narayanan, H. D. Pfister, and A. Sprintson, “Joint physical layer coding and network coding for bidirectional relaying,” IEEE Transactions on Information Theory, vol. 56, no. 11, pp. 5641– 5654, 2010. [3] C. Feng, D. Silva, and F. R. Kschischang, “An algebraic approach to physical-layer network coding,” IEEE Transactions on Information Theory, vol. 59, no. 11, pp. 7576–7596, 2013. [4] N. Tunali, K. Narayanan, J. Boutros, and Y. Huang, “Lattice codes based on eisenstein integers for compute-and-forward,” in 50th Annual Allerton Conference on Communication, Control, and Computing (Allerton), IL, USA, 2012. [5] Q. T. Sun, J. Yuan, T. Huang, and K. W. Shum, “Lattice network codes based on eisenstein integers,” IEEE Transactions on Communications, vol. 61, no. 7, pp. 2713–2725, 2013. [6] Y.-C. Huang, K. R. Narayanan, and P.-C. Wang, “Adaptive compute- and-forward with lattice codes over algebraic integers,” in 2015 IEEE International Symposium on Information Theory (ISIT). IEEE, 2015, pp. 566–570. [7] A. Sakzad, E. Viterbo, Y. Hong, and J. Boutros, “On the ergodic rate for compute-and-forward,” in 2012 International Symposium on Network Coding (NetCod). IEEE, 2012, pp. 131–136. [8] A. Sakzad, J. Harshan, and E. Viterbo, “Integer-forcing mimo linear receivers based on lattice reduction,” IEEE Transactions on Wireless Communications, vol. 12, no. 10, pp. 4905–4915, 2013. [9] J. Zhan, B. Nazer, U. Erez, and M. Gastpar, “Integer-forcing linear receivers,” IEEE Transactions on Information Theory, vol. 60, no. 12, pp. 7661–7685, 2014. [10] J. Zhan, B. Nazer, M. Gastpar, and U. Erez, “Mimo compute-and- forward,” in 2009 IEEE International Symposium on Information The- ory. IEEE, 2009, pp. 2848–2852.