Lattice reduction in wireless communication

Information

  • Patent Grant
  • 11533203
  • Patent Number
    11,533,203
  • Date Filed
    Monday, August 23, 2021
    3 years ago
  • Date Issued
    Tuesday, December 20, 2022
    2 years ago
Abstract
Methods, systems and devices for lattice reduction in decision feedback equalizers for orthogonal time frequency space (OTFS) modulation are described. An exemplary wireless communication method, implementable by a wireless communication receiver apparatus, includes receiving a signal comprising information bits modulated using OTFS modulation scheme. Each delay-Doppler bin in the signal is modulated using a quadrature amplitude modulation (QAM) mapping. The method also includes estimating the information bits based on an inverse of a single error covariance matrix of the signal, with the single error covariance matrix being representative of an estimation error for all delay-Doppler bins in the signal.
Description
TECHNICAL FIELD

The present document relates to wireless communication, and more particularly, to signal reception schemes used in wireless communication.


BACKGROUND

Due to an explosive growth in the number of wireless user devices and the amount of wireless data that these devices can generate or consume, current wireless communication networks are fast running out of bandwidth to accommodate such a high growth in data traffic and provide high quality of service to users.


Various efforts are underway in the telecommunication industry to come up with next generation of wireless technologies that can keep up with the demand on performance of wireless devices and networks.


SUMMARY

This document discloses techniques that can be used to implement receivers that receive orthogonal time frequency space (OTFS) modulated symbols and recover information bits from these symbols based, in part, on lattice reduction techniques for OTFS modulation.


In one example aspect, a method for wireless communication implementable at a receiver device is disclosed. The method includes receiving a signal comprising information bits modulated using an orthogonal time frequency space (OTFS) modulation scheme, where each delay-Doppler bin in the signal is modulated using a quadrature amplitude modulation (QAM) mapping, and estimating the information bits based on an inverse of a single error covariance matrix of the signal, where the single error covariance matrix is representative of an estimation error for all delay-Doppler bins in the signal.


In another example aspect, a wireless communication apparatus that implements the above-described method is disclosed.


In yet another example aspect, the method may be embodied as processor-executable code and may be stored on a non-transitory computer-readable program medium.


These, and other, features are described in this document.





DESCRIPTION OF THE DRAWINGS

Drawings described herein are used to provide a further understanding and constitute a part of this application. Example embodiments and illustrations thereof are used to explain the technology rather than limiting its scope.



FIG. 1 shows an example of a wireless communication system.



FIG. 2 is a block diagram of an example implementation of Decision Feedback Equalization (DFE) in an OTFS wireless receiver apparatus.



FIG. 3 shows an example of lattice expansion.



FIG. 4 shows an example of a unipotent change of basis.



FIG. 5 shows an example of a flip change of basis.



FIG. 6 shows an example of a change of realization transform of a standard rank two real lattice.



FIGS. 7A and 7B show examples of a Babai approximation with respect to a non-reduced basis and a reduced basis, respectively.



FIG. 8 shows an example of a sphere decoding combinatorial tree.



FIG. 9 is a flowchart of an example method of wireless signal reception.



FIG. 10 is a block diagram of an example of a wireless communication apparatus.





DETAILED DESCRIPTION

To make the purposes, technical solutions and advantages of this disclosure more apparent, various embodiments are described in detail below with reference to the drawings. Unless otherwise noted, embodiments and features in embodiments of the present document may be combined with each other.


Section headings are used in the present document to improve readability of the description and do not in any way limit the discussion or the embodiments to the respective sections only.


1 Overview of Multiple Input Multiple Output (MIMO) Systems

One of the fundamental attributes of a Multiple Input Multiple Output (MIMO) system is the data transmission rate increase it offers for a given bandwidth. This is achieved by sending several data streams in parallel. Data streams can be coded into parallel stream of QAM symbols and can be transmitted simultaneously from different transmit antennas that are kept appropriately separated. By receiving these signals on a group of receive antenna, these vector of QAM symbols can be detected correctly and thus the transmitted bit streams can be recovered correctly. The capacity increase is proportional to either a) the number of transmit antenna orb) the number of receive antenna, whichever is minimum.


At the receiver, the received QAM vector is typically jointly detected. Optimal QAM vector detection for MIMO channels is extremely computationally intensive. To the point that for reasonable antenna configurations (for example, 4×4 antennas transmitting QAM 64), highly sub-optimal QAM detectors are currently used in practice.


In orthogonal time frequency space (OTFS) modulation, due to the delay-Doppler domain organization of transmitted symbols, all transmitted QAMs vectors experience the same channel. Therefore, after equalization, all QAM vectors will have the same error covariance matrix, denoted by Ree. This property is mathematically different from traditional orthogonal frequency division multiplexing (OFDM) based transmissions such as LTE systems because each QAM vector in the traditional OFDM schemes experiences a different channel and therefore the residual error matrix for each QAM vector would be typically different.


Embodiments of the disclosed technology exploit this property of OTFS modulation at receivers to apply a single pre-processing algorithm to Ree. After pre-processing the Ree, a computationally inexpensive QAM detection algorithm (for example, a Babai detector) can be effectively used for all transmitted QAM vectors. The pre-processing algorithm includes performing lattice reduction, as is disclosed in the present document.



FIG. 1 depicts an example of a wireless communication system 100 where the techniques described in the present document may be embodied. The system 100 may include one or more Base Stations (BS) and one or more User Equipment (UE) 102. The device 102 (marked as Receiver) may be user devices embodied in various forms such as a mobile phone, a smartphone, a tabled, a computer, and so on. The BS (marked as transmitter) may emit downlink transmissions to the UE, 102. The UE (102) may transmit uplink transmissions to the BS (not explicitly shown in the figure). These transmissions may experience distortion and multipath delays due to objects such as moving vehicles, buildings trees and so on. Similarly, the UEs may be moving, and therefore may add Doppler distortion to the received signal at the UE and BS. The methods described in the present document may be implemented by either the UE receiver or BS receiver when receiving transmissions from the BS transmitter or UE transmitter.


1.1 MIMO Channel Detection Problem

Consider a MIMO channel. Assume that QAM signals transmitted on the MIMO channel have unit energy and are represented by:









y
=

Hx
+
w





(
1.1
)







Table 1 below, explains some of the variables used in the sequel.











TABLE 1





Wireless Object
Notation
Mathematical Object







Number of transmit antennas
Lt
A positive integer


Number of receive antennas
Lr
A positive integer


MIMO channel
H
A Lr × Lt complex matrix


Vector of transmitted QAMs
x
A Lt × 1 complex vector


Variance of noise
σw2
A positive scaler


White noise
w
A custom character  (0, Rww) random variable


Received vector
y
A Lr × 1 complex vector









1.2 MMSE Receive Equalizer and Slicer Based QAM Detection

A minimum mean square estimate (MMSE) equalizer finds the most likely transmitted vector in the mean square error sense. This algorithm is typically implemented under the assumption that the noise in the system can be modelled as Additive White Gaussian Noise (AWGN).


If MMSE receive equalizer is denoted by C, then it can be shown that:









C
=



(



σ
w

-
2




H
*


H

+
I

)


-
1




H
*



σ
w

-
2







(
1.2
)







Applying the MMSE receive equalizer to the received vector gives a vector of soft estimates, denoted as xs, of the transmit vector:

xs=Cy  (1.3)


A simple symbol detection mechanism can be implemented using a commonly known slicer. This is achieved by mapping the soft-estimate to the nearest QAM constellation points. The vector of soft-estimates must be close to the transmitted QAM vector to ensure a true reception of the transmitted QAM vector.


1.2.1 Residual Error

Let e denote the difference between the soft estimate and the true transmitted vector:









e
=

x
-

x
s






(
1.4
)







Denote covariance of e by Ree. Then the theory of MMSE gives:










R
ee

=


(



σ
w

-
2




H
*


H

+
I

)


-
1






(
1.5
)







1.2.2 ML Detection Criterion

In certain scenarios, no receiver can perform better than receivers that perform Maximum Likelihood (ML) based symbol detection. ML receivers, however, is computationally intractable, hence implementation of the same is very hard. Embodiments of the disclosed technology implement computationally efficient near-ML receiver for OTFS modulated signals.


The QAM estimation problem can be formulated as follows. The receiver needs to find the most likely transmitted vector of QAMs:










x
ML

=


argmax


x
~



QAM

L
t










p


(


x
~


y

)







(
1.6
)







Here, the term QAMLt denotes collection of QAM valued vectors of size Lt.


1.2.3 Probability Approximations

For the channel model described in (1.1), the probability p({tilde over (x)}|y) can be well approximated by a Gaussian density function with mean xs and covariance Ree.













p


(


x
~


y

)







𝒩


(


x
s

,

R
ee


)




(

x
~

)











=



(

2

π

)


-


L
t

2








R
ee




-

1
2






exp


(


-

1
2





(


x
~

-

x
s


)

*




R
ee

-
1




(


x
~

-

x
s


)



)


.










(
1.7
)







1.2.4 QAM Vector Detection Via Quadratic Minimization


Using the probability approximation, the following simplification can be performed:













x
ML



=


argmax


x
~



QAM

L
t










p


(


x
~


y

)















argmax


x
~



QAM

L
t










𝒩


(


x
s

,

R
ee


)




(

x
~

)












=


argmin


x
~



QAM

L
t














R
ee

-
1




(


x
~

-

x
s


)




2










(
1.8
)







The search space QAMLt grows exponentially in Lt. For example, when Lt=4, and QAM=64 (corresponding to 64 QAM), then












QAM

L
t




=

16.77

e





6





(
1.9
)







It may be possible to use heuristics to speed up the search. However, these “short cuts” may not provide good results (or may not speed up calculations), particularly for ill conditioned channels. In conventional MIMO OFDM (e.g., LTE), a frequency block is divided into subcarriers. QAM vectors are transmitted across each of the subcarriers. Each transmitted QAM vector experiences a different channel. To recover the QAM vectors, a receiver may perform a separate QAM detection for each subcarrier. The computation complexity, above described, thus gets further boosted by the number of data sub-carriers in the system. This further forces the receiver to use suboptimal detection algorithms.


1.3 Preprocessing Stage for Near ML Detection of QAM Vectors

In MIMO OTFS the information to be transmitted is specified in the delay-Doppler domain. Namely, for each delay Doppler bin a vector of QAMs is transmitted.


Table 2 summarizes notation used with respect to MIMO OTFS signals.











TABLE 2





Wireless Object
Notation
Mathematical object







Number of transmit antennas
Lt
A positive integer.


Number of receive antennas
Lr
A positive integer.


Number of delay bins
Nυ
A positive integer.


Number of Doppler bins
Nh
A positive integer.


Vector of QAMs to transmit
X
A Lt × Nυ × Nh complex array.









For simplicity, QAM vectors are assumed to have unit average energy. A QAM vector assigned to the delay-Doppler bin (τ, v) is denoted by x(τ, v).


A MIMO OTFS system can also be described by (1.1). Here, y denotes the received signal in the delay-Doppler domain, H denotes the channel in delay Doppler domain and w denotes the noise in the delay-Doppler domain. In a typical equalization structure in OTFS, feed-forward equalizer (FFE) is applied in the time-frequency domain and a 2D noise-predicting DFE is applied in the hybrid delay-time domain.



FIG. 2 discloses a block diagram of an example implementation of channel equalization in an OTFS receiver. In FIG. 2, Y denotes the received signal in the time frequency domain, xh denotes the hard decisions, FFE denotes the feedforward equalizer, and FBE denotes the feedback filter, (I)FFT stands for (inverse) fast Fourier transform and RAM represents memory in which intermediate results are stored. Let xin (τ, v) denote the Lt×l dimensional vector (a set of soft symbols) at delay τ and Doppler v be input to the slicer. The error between the soft and hard symbols ein is:










e
in

=


(

τ
,
v

)

=


x


(

τ
,
v

)


-



x
in



(

τ
,
v

)


.







(
1.10
)







for all delay-Doppler bins (τ, v).


Due to spreading in OTFS the covariance matrix of the input error is constant across delay and Doppler frame. That is










𝔼


[



e
in



(

τ
,
v

)





e
in
*



(

τ
,
v

)



]


=

𝔼


[



e
in



(


τ


,

v



)





e
in
*



(


τ


,

v



)



]






(
1.11
)







for all pairs of transmission delay-Doppler bins (τ, ∝) and (τ′, v′).


This means a single matrix defines or represents the error covariance for delay Doppler bins of a given transmission frame. Therefore, there exists an Lt×Lt matrix denoted Reein such that










𝔼


[



e
in



(

τ
,
v

)





e
in
*



(

τ
,
v

)



]


=

R
ee
in





(
1.12
)







for all delay-Doppler bins (τ, v), (Reein)−1 can be obtained as a by-product of the DFE computation. As described earlier, the detection problem can be approximated with a quadratic minimization problem.












x
ML



(

τ
,
v

)





argmin

q


QAM

L
t











(

R
ee
in

)


-
1




(



x
in



(

τ
,
v

)


-
q

)




2



,




(
1.13
)







for all delay-Doppler transmission bins (τ, v).


If the matrix (Reein)−1 is perfectly conditioned, an ordinary slicer that slices each QAM symbol (of the QAM vector) co-ordinate by co-ordinate along the standard lattice of xin (τ, v) is optimal. In other words, if condition number is close to one, then an ordinary slicer can be a near optimal detector.


In some embodiments, the condition of the matrix (Reein)−1 can be improved by performing a scheme called lattice reduction. Section 2 and Section 3 provide a theoretical framework and some implementation examples of lattice reduction algorithms.


As depicted in FIG. 3, a QAM constellation can be thought of as a small slice of an infinite lattice. The underlying lattice may be denoted as Λ. A matrix is called a unimodular matrix if all entries are integers and the determinant is one. If a matrix is unimodular, then its inverse is also unimodular. Furthermore, if U is a unimodular matrix of dimensions Lt×Lt, then









v



Λ

L
t



Uv




Λ

L
t


.





(
1.14
)







For a unimodular matrix U, the pre-conditioned lattice detection problem is











x
ML
U



(

τ
,
v

)


=


argmin

q


Λ

L
t












(

R
ee
in

)


-
1




U


(



U

-
1





x
in



(

τ
,
v

)



-
q

)





2

.






(
1.15
)







Here, q′=U−1q.


There exist algorithms to find a unimodular matrix U that makes (Ree−1)U well-conditioned. In some embodiments, a Lenstra-Lenstra-Lovász (LLL) lattice reduction algorithm may be used, and which is further detailed in Sections 2 and 3. Using these results, an OTFS QAM vector detection scheme may be implemented as follows.


1.4 Near ML Detection Using the Pre-Processed Error Covariance Matrix

First, a lattice reduction algorithm may be implemented to find a unimodular matrix U which makes (Ree−1)U well-conditioned.


Next, for each delay-Doppler bin the U pre-conditioned detection problem is solved using a computationally inexpensive algorithm (e.g., a Babai detector as described in Section 2).


Then, the result is multiplied by U to get a near ML estimate of the transmitted QAM vector.


As observed earlier, in OTFS all transmitted QAM vectors experience the same channel. Therefore, after MMSE equalization all QAM vectors of a given frame have the same error covariance matrix, (denoted Ree). This implies that a single pre-processing algorithm, such as lattice reduction, to Ree−1 for a given OTFS frame. This brings significant computational advantages compared to OFDM. After pre-processing any of several well-known QAM detection algorithms can be effectively used for all transmitted QAM vectors.


One of skill in the art would appreciate that this technique cannot be used for standard OFDM systems where each transmitted QAM vector experiences a different channel and hence after equalization has a different residual error matrix.


However, it may be possible to reduce computational complexity in traditional OFDM receivers using some techniques described herein. For example, as described, in the case of OFDM systems, the number of error covariance matrices to pre-process will be equal to the number of data sub-carriers in the system. As was noted, the complexity of approximate ML detection in such systems is very high. However, some simplifications can be done to ease this computational burden. For example, Ree from sub-carriers that have similar channel characteristics can be averaged to get a single average Ree. This entity can be taken as the representative Ree for all those sub-carriers. This mechanism can bring down the computational load for OFDM systems, with possibly some degradation in the over-all performance.


2 An Exemplary Embodiment of a MIMO Turbo Equalizer
2.1 Based Hermitian Lattices

Gaussian Integers. We denote by custom characteri the ring of Gaussian integers, i.e., an element z∈custom characteri is a complex number of the form:










z
=

a
+
bi


,




(
2.1
)








where a, b ∈custom character. Gaussian integers constitute the complex generalization of the plain ring of integers custom charactercustom character. All the constructions in this manuscript will be derived over custom character(custom characteri) with the understanding that they admit a simple counterpart over custom character(custom character). In particular, when considering a diagrammatic depiction we will restrict to custom character(custom character)


Euclidean metric. Let R∈custom characterN×N be a positive definite Hermitian matrix. The matrix R defines an Euclidean metric on custom characterN given by:











R


(

x
,
y

)


=


x
H


Ry


,




(
2.2
)








for every x, y∈custom characterN. We denote by ∥−∥R the norm associated with R, i.e.,:













x


R

=


R


(

x
,
x

)




,




(
2.3
)








for every x∈custom characterN. Finally, we denote by RN the standard Euclidean metric on custom characterN given by the unit matrix IN, i.e.,:












R
N



(

x
,
y

)


=


x
H


y


,




(
2.4
)







We denote the norm associated with RN simply by ∥−∥. Finally, given a point x∈custom characterN, we denote by Br(x; R) the ball of radius r>0 around x with respect to the metric R, i.e.,:











B
r



(

x
;
R

)


=


{

y





N



:






y
-
x



R


<
r


}

.





(
2.5
)







Based Hermitian lattices. A based Hermitian lattice (BHL for short) of rank N is a pair custom character=(G,R) where R is an Euclidean metric on custom characterN and G is an invertible matrix G∈custom characterN×N. The matrix G defines a full rank Gaussian lattice Λ⊂custom characterN Given by:










Λ
=

{




ξ


[
1
]




g
1


+


ξ


[
2
]




g
2


+


.



.

+

ξ


[
N
]






g
N



:



ξ


[
k
]







i


}


,




(
2.6
)








where gk denotes the kth column of G, i.e.,:









G
=


[





















g
1




g
2



·



g

N
-
1





g
N





















]

.





(
2.7
)







Alternatively, the full rank Gaussian lattice can be expressed as:

Λ=G(custom characteriN),  (2.8)

that is, every element λ∈Λ is uniquely represented as λ=Gξ for some ξ∈custom characteriN. We refer to the matrix. G as a basis of the lattice Λ and to the integral vector ξ as the coordinates of λ with respect to the basis G. The standard example of a rank N based Hermitian lattice is custom characterN=(I, RN). To summarize, a based Hermitian lattice is a lattice equipped with a basis and residing in a complex vector space equipped with an Euclidean metric. Based Hermitian lattices are objects in a category (in contrast to being points of a set). As consequence they admit multitude of isomorphic representations which we refer to as realizations. To transform from one realization to another one applies two basic operations: change of basis and change of coordinates.


Change of basis. A change of basis of custom character is a based Hermitian lattice custom character′=(G′, R) where G′=G∘T with T being an N×N matrix of determinant 1 with coefficients in the Gaussian ring custom character. The matrix T is called change of basis transition matrix. One can verify that the determinant condition ensures that the inverse matrix T−1 has also integral coefficients. We give two examples change of basis of custom character2=(I2, R2). The first is called unipotent change of basis (see FIG. 4) and is realized by transition matrix of the form:











T
a

=

[



1


a




0


1



]


,




(
2.9
)








where a∈custom characteri. The second change of basis is called a flip (see FIG. 5) and it is realized by the transition matrix:











T
flip

=

[



0


1





-
1



0



]


,




(
2.10
)








In fact, one can show that every unimodular integral matrix T, det T=1, is a finite composition of flips and unipotent transition matrices. This will become important when we discuss algorithms for computing reduced bases.


Change of coordinates. A change of coordinates of custom character is a based Hermitian lattice custom character′=(G′, R′) where G′=A∘G and R′=A−HRA−1 with A being an N×N invertible matrix. The matrix A is called change of coordinates transition matrix. The matrix A defines an isometry between the Euclidean metrics R and R′, that is:

R′(Ax,Ay)=R(x,y),  (2.11)

for every x, y∈custom characterN. There is a distinguished realization, called the upper triangular realization, where the basis matrix is upper triangular and the metric R=IN.


The corresponding transition matrix is given by A=UG−1, where U is the upper triangular factor in the Cholesky decomposition:

GHRG=UHU,  (2.12)


Furthermore, it may be verified that:














G




=

AG
=
U


,







R




=


A

-
H




RA

-
1












=


U

-
H




G
H



RGU

-
1













=

I
N









(
2.13
)







LLL reduced basis. A based Hermitian matrix custom character=(G, R) is called LLL reduced (LLL stands for Lenstra-Lenstra-Lovász) if, roughly speaking, the vectors of the basis G are orthogonal with respect to the metric R, i.e., R(gi, gj)=0, for every i≠j.


Dimension two. We denote by P1 the orthogonal projection on the one dimensional subspace V1=custom characterg1 and respectively by P1=I−P1 the orthogonal projection on the complement subspace. The formula of P1 is given by:












P
1



(
x
)


=


g
1




R


(


g
1

,
x

)



R


(


g
1

,

g
1


)





,




(


2
.
1


4

)








for every x∈custom character2.


Definition 1.1. We say that custom character is LLL reduced if it satisfies the following two conditions:


(1) Size reduction condition:













Re






R


(


g
1

,

g
2


)
















1
2



R


(


g
1

,

g
1


)













Im






R


(


g
1

,

g
2


)
















1
2



R


(


g
1

,

g
1


)








(

2.1

5

)







(2) Well ordering condition:

R(g1,g1)≤R(g2,g2)  (2.16)


The main statement in the two-dimensional theory is summarized in the following theorem:


Theorem 1.2 (Reduction theorem). If g1, g2 is LLL reduced basis then:


(1) The vector g1 satisfies:

√{square root over (R(g1,g1))}≤c√{square root over (Rshortshort))},


where c=1/2√2−√2 and λshort denotes the shortest non-zero vector in Λ.


(2) The vector g2 satisfies:









R


(



P
1




g
2


,

g
2


)






R


(



P
1



λ

,
λ

)




,




for every vector λ∈Λ with non-zero orthogonal projection on V1.

    • In words, Theorem 1.2 asserts that the first basis vector g1 is no longer than a scalar multiple of the shortest non-zero vector in the lattice where the scalar is universal (does not depend on the lattice) and that the second basis vector is the shortest non-zero vector mod g1.


General dimension. Assuming custom character is of rank N, we denote by Vn the subspace spanned by the first n basis vectors, i.e., Vn=custom charactercustom characterg1, g2, . . . gncustom character. We take the convention V0={0}. The collection of subspaces Vn=n=0, . . . , N form a complete flag:









0
=





V
0



V
1



..



V
n


=


N

.






(
2.17
)








We denote by Pn the orthogonal projection (with respect to R) on the subspace Vn. Respectively, we denote by Pn=I−Pn the orthogonal projection on the orthogonal complement subspace.


Definition 1.3. We say that (G, R) is LLL reduced if it satisfies the following two conditions:


(1) Size reduction condition:













Re






R


(



P

n
-
1





g
n


,

g
m


)
















1
2



R


(



P

n
-
1





g
n


,

g
n


)














Im






R


(



P

n
-
1





g
n


,

g
m


)
















1
2



R


(



P

n
-
1





g
n


,

g
n


)




,













for every n=1, . . . , N'1 and m>n.


(2) Well ordering condition:

R(Pn−1gn,gn)≤R(Pn−1gn+1,gn+1),


forever n=1, . . . , N−1.


When G is upper triangular and R=I, the LLL conditions take a particularly simple form. The size reduction condition takes the form:













Re






g
nm















1
2



g
nm














Im

g

nm














1
2



g
nn



,














for every n=1, . . . , N−1 and m>n. The ordering condition takes the form:

|gnn|2≤|gn,n+1|2+|gn+1,n+1|2.


2.2 Hard/Soft Detection Problem

In this section, a delay Doppler convolution channel model is assumed:

y=h*x+w,  (2.18)

where x[τ,v]∈custom characterN, y[τ, v]∈custom characterM, h[τ, v]∈custom characterM×N and w is the noise term. We assume that the input variables x[τ, v] are independent random variables, taking values in a QAM constellation set Ω⊂custom characterN, #Ω=2NQ.

    • Our ultimate goal is to calculate the finite a-posteriori probability distribution. Since this is formidable problem we approximate the prior probability distribution of x[τ, v] by a circular symmetric Gaussian distribution custom character(x[τ, v], Rx[τ,v]). We denote by {circumflex over (x)}s={circumflex over (x)}s[τ, v] the MMSE estimation of the MIMO symbol x=x[τ, v]. The random variables and x are related through the backward and scaling equations:










x
=



x
^

s

+
e


,




(
2.19
)









x
^

s

=

Ax
+


(

1
-
A

)



x
_


+
x


,




(
2.20
)








where e⊥{circumflex over (x)}s and z⊥x. Furthermore, the parameters of the above equation related through:










A
=

I
-


R
e



R
x

-
1





,






R
x

=


AR
e

.






(
2.21
)








The MMSE variable {circumflex over (x)}s establishes a sufficient statistics for x, moreover the a-posteriori probability distribution is given by:










P


(

x
|


x
^

s


)





exp


(


-

R
e

-
1





{




x
^

s

-
x

,



x
^

s

-
x


)


)


.





(
2.22
)







Roughly speaking, we wish to find a small subset of Ω that faithfully represents (2.22). We refer to this problem as the soft MAP detection problem. The expression in the exponent of (2.22) suggests to define the solution in geometric terms using the Euclidean metric R=Re−1. To this end, we introduce the following notion:


Definition 2.1. An Ω-ball of size K around the point {circumflex over (x)}s where K∈custom character≥1 is the finite set:












B
K



(



x
^

s

,
R
,
Ω

)


=



B

r


(
K
)





(



x
^

s

,
R

)



Ω


,




(
2.23
)








where r(K) the maximum radius such that |Br({circumflex over (x)}s, R)∩Ω|≤K.


In plain language, (2.23) is the ball of maximum radius around {circumflex over (x)}s that contains at most K constellation points. In particular, when K=1 the ball consists of one element {circumflex over (x)}h called the MAP detector, defined by:











x
^

h

=

arg





min



{







x
^

s

-
x



R

:

x

Ω


}

.






(
2.24
)







The soft MAP detection problem is formulated as the problem of calculating the Ω-ball of size K for various choices of the parameter K. Note that (2.23) gives a precise mathematical definition of an optimal list of size K that approximates the a-posteriori probability distribution. In some embodiments, as the size of the list gets larger, the corresponding approximation gets better.


Extrinsic a-posteriori bit probabilities (LLR computation). Let L: Ω→custom character≥0 denote the total MIMO likelihood function defined through the scaling equation (2.20) as:











L


(
x
)




exp


(

-






x
^

s

-

(

Ax
+


(

1
-
A

)



x
_



)




R
2


)



,




(
2.25
)








for every x∈Ω. Let bin denote the ith bit of the nth MIMO symbol where n=1, . . . , N and i=1, . . . , Q. Let Pin: {0, 1}→custom character≥0 denote the prior probability distribution on the (i, n) bit. One can verify that the (exact) extrinsic a-posteriori probability on the (i, n) bit is given by:












E
i
n





(
b
)

=









b


:



b
i
n


=
b





L


(

x
=

m


(
b
)



)








(

j
,
m

)



(

i
,
n

)






P
i
m



(

b
j
m

)






,




(
2.26
)








where m: {0, 1}QN→Ω is the total mapping rule, converting between bits and constellation vectors.


Typically, in formula (2.26), the summation over all elements b∈{0, 1}QN−1 is intractable for large values of N or/and Q. Instead, using the list custom character we can define the approximated likelihood function:











L
_



(
x
)


=

{





L


(
x
)





x



B
K



(



x
^

s

,
R
,
Ω

)







0



x



B
K



(



x
^

s

,
R
,
Ω

)






.






(
2.27
)







Using this approximation, define the approximated extrinsic probability distribution by:












E
_

i
n



(
b
)


=





b
:

b
i
n


=
b






L
_



(

x
=

m


(
b
)



)









(

j
,
m

)



(

i
,
n

)












P
j
m



(

b
j
m

)


.








(
2.28
)







The summation in (2.28) is over a much smaller set of size≤K. In order for (2.28) to be well posed, the set BK({circumflex over (x)}s, R, Ω) should satisfy a mild technical requirement that for every (i, n) and bit value b∈{0, 1} there exists a vector b∈{0, 1}QN such that:











b
i
n

=
b








m


(
b
)






B
K



(



x
^

s

,
R
,
Ω

)


.






(
2.29
)







2.3 Examples of Lattice Relaxation

In some embodiments, computing (2.23) may be difficult since the search space Ω grows exponentially with the MIMO dimension N and the constellation order Q. This difficulty increases when the Euclidean metric R is highly correlated. One example of reducing complexity of the search problem is to embed Ω inside a bigger set that is better behaved (and is generally referred to as problem relaxation).

    • One way to do that is to embed Ω as subset of an infinite (shifted) lattice. Let Λ=custom characteriN denote the standard Gaussian lattice of rank N. Let v0=(1+i)/2·1 where 1=(1, 1, . . . , 1). One can easily verify that when Q is even, we have:

      Ω⊂Λ+v0  (2.30)

      We equip Λ with the based Hermitian lattice structure custom character=(G, R) where G=IN. We define {circumflex over (x)}={circumflex over (x)}s−v0. We consider discrete balls centered at the point {circumflex over (x)} parametrized either by their radius or their size: given a positive real number r>0, we define the custom character-ball of radius r around {circumflex over (x)} as the set:











B
r



(


x
^

,
Υ

)


=


{

ξ





i
N



:







x
^

-

G


(
ξ
)





R


<
r


}

.





(
2.31
)







In words, the set (2.31) consists of all lattice points inside a ball or radius r around the point {circumflex over (x)} or, more precisely, the coordinates of these points with respect to the standard basis.

    • Given a positive integer K∈custom character≥1, we define the custom character-ball of size K around {circumflex over (x)} as the set:












B
K



(


x
^

,
Υ

)


=


B

r


(
K
)





(


x
^

,
Υ

)



,




(
2.32
)








where (K) the maximum radius such that |Br({circumflex over (x)}, custom character)|≤K, i.e.,:










r


(
K
)


=

max


{


r


:






B
r



(


x
^

,
Υ

)






K

}






(
2.33
)







In words, the set (2.32) is the custom character-ball of maximum radius that contains at most K points. In some embodiments, the relation BK({circumflex over (x)}s, R, Ω)=BK({circumflex over (x)}, custom character)+v0 available. The solution of the soft lattice detection problem may be defined to be the ball BK({circumflex over (x)}, custom character) for various choices of the parameter K. One benefit, amongst others, in replacing (2.23) by (2.32) is that based Hermitian lattices (unlike constellation sets) admit a multitude of isomorphic realizations (or images). This advantageously enables a convenient realization for custom character to be chosen for computing (2.32), and this flexibility is one reason the lattice relaxation approach is employed.


2.4 Example of an Approximate Solution for Soft Lattice Detection

In some embodiments, an approximate solution of the soft lattice detection problem may be implemented efficiently. For example, the construction may use an LLL reduced upper triangular realization of the based Hermitian lattice custom character, which is denoted as custom characterLR.

    • That is, custom characterLR=(U, IN) where U=(unm) is an upper triangular matrix size reduced and well ordered. We further assume that we are given a change of basis T and a change of coordinates A such that U=A∘G∘T and IN=A−H∘R∘A−1. We construct an approximation of the ball BK(ŷ, custom characterLR), where ŷ=A{circumflex over (x)} and than derive an approximation of the ball BK({circumflex over (x)}, custom character) through the relation:











B
K



(


x
^

,
Υ

)


=

T


(


B
K



(


y
^

,

Υ
LR


)


)






(
2.34
)








We introduce a one parametric family of probability distributions on custom characteriN. For any positive real number a>0 we define a probability distribution Pa: custom characteriNcustom character≥0 expressed as multiplication of one dimensional conditional probability distributions, i.e.,:












P
a



(
ξ
)


=




n
=
1

N




P
a



(


ξ


[
n
]




ξ


[

n
+

1


:


N


]



)




,




(
2.35
)








for every ξ=(ξ[1], ξ[2] . . . ξ[N])∈custom characteriN. The nth conditional probability is given by:












P
a



(


ξ


[
n
]


=

z


ξ


[

n
+

1


:


N


]




)


=


1


s
n



(

ξ


[

n
+

1


:


N


]


)





exp


(


-
a








y
^

n

-


u
nn


z




2


)




,




(
2.36
)










where


















y
^

n

=



y
^



[
n
]


-




m
=

n
+
1


N




ξ


[
m
]




u

n





m










(
2.37
)













s
n



(

ξ
(

n
+

1


:


N


]

)


=




z



i






exp


(


-
a








y
^

n

-


u

n
,
n


·
z




2


)


.
















We note that sn(ξ[n+1:N]) is merely the normalization factor to ensure that the total probability is equal 1. Moreover, the complex number ŷn has geometric meaning: to explain it, we denote by Pn the orthogonal projection on the subspace Vn—spanned by the basis vectors u1, . . . , un which by the upper triangular structure coincides with the standard coordinate n dimensional subspace Vn={x:x[n+1:N]=0}. We have:












y
^

n



e
n


=


P

n
-
1







P
n



(


y
^

-




n
+
1

N




ξ


[
m
]




u
m




)


.






(
2.38
)








To get some intuition for the construction it, is worthwhile to consider the limiting case when a→∞. One can see, that in the limit the nth conditional probability collapses to a deterministic delta supported at the element ξbabai[n]=┌yn/unn┘ where ┌z┘∈custom characteri denotes rounding to the closest Gaussian integer to z. The vector ξbabai=(ξbabai[1], . . . , ξbabai[N]) is called the Babai lattice point and it can be interpreted as the solution of a successive cancellation detector. Fixing the value of the parameter K, we define the set:

BK(a)={ξ: Pa(ξ)≥1/K}.  (2.39)


In words, the set BK(a) consists of all points ξ∈custom characteriN whose probability is ≥1/K. Evidently, the number of elements in BK(a) is ≤K since the total probability is equal 1. The upshot is that. BK(a) is a good approximation of the ball BK(ŷ,custom characterLR) if the parameter a is chosen appropriately. The main technical statement is that the set BK(a) contains a custom characterLR-ball of certain radius r which of course depends on the value of a and K. The precise statement is summarized in the following lemma:


Lemma 4.1 (Technical Lemma). We have Br(ŷ, custom characterLR)⊂BK(a) where r=r(a, K) is given by:












r


(

a
,
K

)


2

=


min
m







u

m





m




2



(



ln


(
K
)



ln


(
ρ
)



-


4

N


ρ






ln


(
ρ
)





)




,




(
2.40
)








with a=ln(ρ)/minm|umm|2.

    • Granting the validity of Lemma 4.1, it is natural to ask, for a given value of K, what is the optimal value of the parameter ρ that maximizes the radius r (a, K).


Denoting by f(ρ) the expression on the right hand side of (2.40) and equating the derivative f′(ρ0)=0, it may be verified that ρ0 and K are related through:









K
=



(

e






ρ
0


)


4






N
/

ρ
0




.





(
2.41
)








Substituting ρ0 back in f we get the following formula for the optimal radius:














r


(
K
)


2

=




min
m







u

m





m




2



(




4

N


ρ
0






ln


(

ρ
0

)


+
1


ln


(

ρ
0

)




-


4

N



ρ
0



ln


(

ρ
0

)





)









=





4

N


ρ
0





min
m







u

m





m




2

.










(
2.42
)








To put things in order, it is convenient to introduce an additional parameter: for a given radius r>0, we define:










G


(
r
)


=



4


r
2




min
m






u

m





m




2



.





(
2.43
)








To explain the meaning of this parameter we note that the expression ½ minm|umm| is the Babai radius, that is if ∥ŷ−Uξ∥≤½ minm|umm| then ξbabaiwhere ξis the closest lattice point to ŷ. Granting this fact, G(r) can be interpreted as the radial gain of r over the Babai radius. For example if G(r)=2, we say r has 3 dB gain over the Babai radius. In practice, it is natural to fix the gain G and to ask for the value of the parameter K such that 4·r(K)2/minm|umm|2=G.


Using the expression in (2.42), and the definition in (2.43), we can derive:









G
=



4
·



r


(
K
)


2

/


min
m






u

m





m




2











=




16

N


ρ
0



,







This implies that ρ0=16N/G. Hence, using (2.41), we get:

K=(16Ne/G)G/4  (2.44)


From formula (2.44), the size parameter K as a function of the radial gain can be seen to grow as O(NG/4) with the MIMO order, and thus, to realize larger gains, larger list sizes may be employed. For example, to get a radial gain of 3 dB, we use K=√{square root over (8eN)} and ρ0=8N.


2.5 Exemplary Deformation of the Sphere Decoder

In this section we describe a deformation of the standard sphere decoder that is specifically adapted to computing the set BK(a). For the rest of this section we fix the value of the parameters K and a. Next we introduce some basic terminology related to the underlying combinatorics of sphere decoding.



FIG. 8 shows an exemplary definition of a layered directed tree structure on the standard lattice custom characteriN. The tree consists of N+1 levels.

    • For every number n=1, . . . , N+1, we denote the nth level by Ln and it consists of elements ξ∈custom characteriN such that ξ[m]=0 for every m<n. In particular, the level LN+1 consists of one element which is the zero vector, called the root of the tree; on the other extreme, the level L1 is equal custom characteriN and its elements are called leaves. The edges connect vertices in Ln+1 with vertices in Ln: given a pair of elements ξn+1∈Ln+1 and ξn∈Ln, the ordered pair (ξn+1, ξn) is an edge if ξn[m]=ξn+1[m] for every m≥n+1.


Formula (2.36) may be used to introduce weights on the edges. For example, given an edge en=(ξn+1, ξn), its weight may be defined as:













w


(
e
)


=


-
ln








P
a



(



ξ
n



[
n
]




ξ

n
+
1



)









=


a







y
^

n

-


u
nn




ξ
n



[
n
]






2


+

ln








s
n



(

ξ

n
+
1


)


.










(
2.45
)







It may be observed that a leaf ξ∈L1 belongs to the set BK(a) if and only if:














n
=
N

1







w


(

e
n

)





ln


(
K
)



,




(
2.46
)







Here eN, eN−1, . . . , e1 are the edges along the unique branch leading from the root to the leaf ξ. Note that substituting a=1 in (2.45) and omitting the affine term ln snn+1), we get the weights used by the conventional sphere decoder. In this regard, the new weights may be interpreted as a deformation of the sphere decoder structure. In some embodiments, and based on this weighted tree structure, the algorithm for computing the set BK(a) proceeds as a depth first search algorithm along the vertices of the weighted tree.


2.6 Examples of Lattice Reduction Algorithm in Two Dimensions

Reduction algorithm—invariant form. The algorithm accepts as input a basis matrix G and produces as output an LLL reduced basis matrix G′ such that G′=G∘T, where T∈SL2(custom characteri). Specifically, the algorithm constructs a sequence:










G
=

G
0


,

G
1

,

.



.





,


G
K

=

G



,




(
2.47
)








such that Gk+1=Gk∘Tk where Tk∈SL2(custom characteri). Consequently, we have T=T0∘T1∘ . . . ∘TK−1.


The sequence (2.47) is constructed via alternating between the two basic transformations.


(1) Size reduction transformation. Reduce the size of the second basis vector with respect to the first basis vector according to the rule g2k+1=g2k−a·g1k where:







a
=

[


R


(


g
1
k

,

g
2
k


)



R


(


g
1
k

,

g
1
k


)



]


,




This transformation is realized by the unimodular matrix.








T
k

=

[



1



-
a





0


1



]


,




(2) Flipping transformation. Interchange the basis vectors according to the rule g1k+1=−g2k and g2k+1=g1k. This transformation is realized by the unimodular matrix:








T
k

=

[



0


1





-
1



0



]


,




Reduction algorithm—upper triangular form. We describe a version of the LLL reduction algorithm which is adapted to the upper-triangular realization. The algorithm accepts as input an upper-triangular basis matrix U and produces as output an LLL reduced basis matrix U′ such that U′=A∘U∘T where T∈SL2(custom characteri) and A∈U(custom character2). Specifically, the algorithm constructs a sequence of upper triangular matrices:

U=U0,U1, . . . , UK=U′,  (2.48)

such that Uk+1=Ak∘Gk∘Tk where Tk∈Ls(custom characteri) and Ak∈U(custom character2) (Unitary matrix. Consequently, we have T=T0∘T1∘ . . . ∘TK−1 and A=AK−1∘ . . . ∘A2∘A1. In what follows, we use the notation for uijk for the (i, j) coordinate of the matrix Uk and denote by unk=Uk(:, n) the nth vector of the kth basis.


The sequence of generators in (2.48) is constructed by alternating between the following two types of transformations.


(1) Size reduction transformation. Reduce the size of the second basis vector with respect to the first basis vector according to the rule u2k+1=u2k−au1k where:







a
=


[





u
1
k

,

u
2
k








u
1
k

,

u
1
k





]

=

[


u
12
k


u
11
k


]



,




This transformation is realized by the unimodular matrix:







T
k

=


[



1



-
a





0


1



]

.





(2) Flipping transformation. The basis vectors are flipped according to the rule g2k+1=−u1k and g1k+1=u2k. This change of basis is realized by the unimodular matrix:








T
k

=

[



0


1





-
1



0



]


,




The resulting matrix Gk+1=Uk∘Tk is lower triangular and is transformed back to upper triangular form by change of realization Ak=Q, where Q is the Unitary factor in the QR decomposition of Gk+1. Alternatively, Uk+1=U—the upper triangular multiplier in the Cholesky decomposition Gk+1HGk+1=UHU.


Convergence of the algorithm. The convergence of the reduction algorithm can be proved by energy considerations. We define the energy functional:

E(G)=R(g1,g1)2R(P1g2,g2).


Considering the sequence in (2.47), we have the following theorem: Theorem 6.1. The following inequality always hold:

E(Gk+1)≤E(Gk),

moreover, when Gk is flipped we have E(Gk+1)≤αE(Gk) for some α<1.


2.7 Examples of Lattice Reduction Algorithm in Higher Dimensions

Reduction algorithm—invariant form. The invariant LLL reduction algorithm accepts as input a basis matrix G and produces as output an LLL reduced basis matrix G′ such that G′=G∘T where T∈SLN(custom characteri). Specifically, the algorithm constructs a sequence:










G
=

G
0


,

G
1

,

.



.





,


G
K

=

G



,




(
2.49
)








such that Gk+1=Gk∘Tk, Tk∈SLN(custom characteri). Consequently, we have T=T0∘T1∘ . . . ∘TK−1.


The sequence (2.49) is constructed using two types of change of basis transformations.


(1) Size reduction transformation. Let m>n∈[1, N]. Reduce the size of the jth basis vector with respect to the ith basis vector according to the rule gmk+1=gmk−agnk where:







a
=

[


R


(



P

n
-
1





g
n
k


,

g
m
k


)



R


(



P

n
-
1





g
n
k


,

g
n
k


)



]


,




Here [−] stands for the closest Gaussian integer. This transformation, is realized by the unimodular matrix:








T
k

=

[



1


.


0


0


.


0




.


.


0


0


0


0




0


0


1


.



-
a



0




0


0


0


.


.


0




.


0


0


0


1


.




0


0


0


0


.


1



]


,




i.e., the unit matrix with additional non-zero entry Tk(n, m)=−a.


(2) Flipping transformation. Let n∈[1, N−1]. Interchange the nth and the n+1th basis vectors according to the rule gnk+1=−gn+1k and gn+1k+1=gnk. This transformation is realized by the unimodular matrix:








T
k

=

[



1


.


0


0


.


0




.


.


0


0


0


0




0


0


0


1


0


0




0


0



-
1



0


0


0




.


0


0


0


.


.




0


0


0


0


.


1



]


,




i.e., the unit matrix except that








T
k



(



n


:


n

+
1

,


n


:


n

+
1


)


=


[



0


1





-
1



0



]

.





Remark. The algorithm applies the size reduction step only if the size reduction condition is not satisfied and applies the flipping transformation always after applying size reduction transformation and only if the well ordering condition is not satisfied.


Reduction algorithm—upper triangular form. The upper triangular version of the LLL reduction algorithm accepts as input an upper triangular basis matrix U and produces as output an LLL reduced upper triangular basis matrix U′ such that U′=A∘U∘T where T∈SLN(custom characteri) and A∈U(custom characterV). In more details, the algorithm constructs a sequence of upper triangular matrices:











U
0

=
U

,

U
1

,

.



.





,


U
K

=

U



,




(
2.50
)








such that Uk+1=Ak∘Uk∘Tk where Tk∈SLN(custom characteri) and Ak∈U(custom characterN). Consequently, T=T0∘T2∘ . . . ∘TK−1 and let A=A0∘A2∘ . . . ∘AK−1. In what follows, we use the notation uijk fro the (i, j) coordinate of the matrix Uk and denote by unk=Uk(:, n) the nth vector of the kth basis.


The sequence (2.50) is constructed using two types of transformations, each being a combination of a change of basis with a change of realization.


(1) Size reduction transformation. For m>n, reduce the size of the mth basis vector um with respect to the nth basis vector un according to the rule umk+1=umk−aunk where:






a
=


[






P

n
-
1





u
n
k


,

u
m
k









P

n
-
1





u
n
k


,

u
n
k





]

=


[


u
nm
k


u
nn
k


]

.






This is realized by the unimodular matrix:








T
k

=

[



1


.


0


0


.


0




.


.


0


0


0


0




0


0


1


.



-
a



0




0


0


0


.


.


0




.


0


0


0


1


.




0


0


0


0


.


1



]


,




i.e., the unit matrix with additional non-zero entry Tk(n, m)=−a. To conclude:

Uk+1=Uk∘Tk,


Note that the upper triangular size reduction transformation has the same form as its invariant counterpart since Uk∘Tk is already in upper triangular form.


(2) Flipping transformation. For n=1, . . . , N−1, interchange between the nth and the n+1th basis vectors according to the rule gnk+1=−un+1k and gn+1k+1=unk followed by a change of realization to return to upper triangular form. The change of basis matrix is given by:







T
k

=


[



1


.


0


0


.


0




.


.


0


0


0


0




0


0


0


1


0


0




0


0



-
1



0


0


0




.


0


0


0


.


.




0


0


0


0


.


1



]

.





The change of realization matrix is defined as follows. Let Gk+1=Uk∘Tk. One can verify that Gk+1 is almost upper triangular except that L=Gk+1(n: n+1, n: n+1) is lower triangular. Let L=QR be the Q-R decomposition of L where Q is unitary and R upper triangular. We define:








A
k

=

[



1


.


0


0


.


0




.


.


0


0


0


0




0


0



q
11




q
12



0


0




0


0



q
21




q
22



0


0




.


0


0


0


.


.




0


0


0


0


.


1



]


,




i.e., Ak is the unit matrix except that Ak(n: n+1, n: n+1)=Q. To conclude: Uk+1=Ak∘Uk∘Tk. Alternatively, we can define Uk+1=Gk except that Uk+1(n: n+1, n: n+1)=U where U is the upper triangular factor in the Cholesky factorization LHL=UHU.


3 Exemplary Implementations for Lattice Detection/Reduction

Typical constellations like QAM vectors can be naturally viewed as truncation of translated lattices in custom characterN. This observation suggests the idea of relaxing the problem of finding the closest constellation point (aka CCP problem) to the problem of finding the closest corresponding lattice point (aka CLP problem) ignoring the truncation boundary conditions. One of the advantages of working with lattices over working with constellation sets is that lattices admit various bases and realizations. This freedom enables to device lower complexity detection algorithms. Two examples of such algorithms are the Heuristic Babai detector and the exact sphere detector. Both algorithms use a canonical weighted tree structure which is associated with the lattice.


3.1 Preliminaries from Linear Algebra
Euclidean Geometry

Hermitian vector spaces. Euclidean geometry over the complex numbers study Hermitian vector spaces.


Definition An Hermitian vector space is a pair (V, R) where V is a vector space over custom character and R: V×V→custom character is an Hermitian, product.


We follow the convention that the first variable is skew linear, that is:

Rv,λ′v′)=λλ′R(v,v′),

for every v, v′∈v and λ, λ′∈custom character. Hermitian products transform under linear maps. Given an Hermitian vector space (V, R) and a linear map A: U→v, one defines the pullback Hermitian product A*(R): U×U→custom character by the rule:

A*(R)(u,u′)=R(Au,Au′),

for every u, u′∈U. We note the relation with standard matrix definitions. When V=custom characterN the form R can be represented by an Hermitian matrix R so that:

R(x,y)=xHRy,


for every x, y∈custom characterN where xH denotes the iron vector obtained as the complex conjugate of a column vector x. Moreover, if in addition U=custom characterM and A is an N×M matrix then:

A*(R)=AHRA.

where AH stands for the conjugate transpose of A. To conclude, one should view Hermitian vector spaces as the coordinate free counterpart of Hermitian matrices. In the sequel we use the notation:

R(v)=R(v,v),

for every v∈V. We also use the notation R0: custom characterN×custom characterNcustom character for the standard Hermitian product:

R0(x,y)=xHy,

for every x, y∈custom characterN.


Duality, Hermitian vector spaces admit duals. Given an Hermitian vector space (V, R) there exists a canonical Hermitian form on the dual vector space V*. To define it, let {circumflex over (R)}: V→V* denote the canonical skew linear map sending a vector v∈V to the linear functional {circumflex over (R)}(v)∈V* defined by:

{circumflex over (R)}(v)(v′)=R(v,v′),

for every v′∈V. The map {circumflex over (R)} is a bijection since R is non-degenerate. The dual Hermitian product Rd: V*×V*→custom character is characterized by the pullback equation:












R
^

*



(

R
d

)


=


R


R
d


=




R
^



-
1

*




(
R
)


.






(
3.1
)








Note that Rd is skew linear in the second variable. Finally, we note the relation with standard matrix definitions. Assume V=custom characterN. Let us denote by R0 the standard inner product on custom characterN. Assume that the Hermitian product R is represented by an Hermitian matrix:

R(x,y)=xHRy,

for every x, y∈custom characterN. Under these assumptions one can show that:














R
^

0
*



(

R
d

)




(

x
,
y

)


=


x
H



R

-
1



y


,




(
3.2
)








for every x, y∈custom characterN. In words, the pullback of Rd under the map {circumflex over (R)}0 is represented by the inverse of the matrix R.


Remark. There: is a nice interpretation of R and Rd in the framework of probability theory. Under this interpretation, the form, R is the information matrix of a Gaussian random variable X∈V such that:










(

X
=
x

)





e


-

1
2




R


(

x
,
x

)




.






The dual form Rd is the covariance matrix of X. One can show that:









R
d



(

α
,
β

)


=




x

V





α


(
x
)





β


(
x
)


_






(

X
=
x

)



dx



,





for every pair of linear functionals α, β∈V*. In words, Rd (α, β) is the covariance between any pair of scalar measurements of the random variable X. Note that in standard texts both R and Rd are given by Hermitian matrices satisfying Rd=R−1. This convention is not canonical and relies on the existence of another Hermitian form R0 on V used to identify V and V*.


Orthogonal projection. Probably the most important notion in Euclidean geometry is that of orthogonal projection. Let (V, R) be a finite dimensional Hermitian vector space. Let U⊂V be a linear subspace. The orthogonal complement of U is denoted by Uand is defined as:

U={v∈V: R(v,u)=0 for every u∈U}.

Every vector v∈V can be written in a unique manner as a sum:

v=PU(v)+PU(v),

where PU(v)∈U and PU(v)∈U. The rule vcustom characterPU(v) gives a linear map PU: V→V called the orthogonal projection on U. Similarly, the rule vcustom characterPU(v) gives a linear map PU: V→V called the orthogonal projection on U. One can verify the following identities:








P
U

+

P

U




=
Id









P
U



P
U


=

P
U


,







P

U





P

U




=

P

U




,







P

U





P
U


=



P
U



P

U




=
0.






In words, PU and PUform an orthogonal decomposition of the identity. Interestingly, PU can be characterized by the geometric property:









P
U



(
v
)


=

arg







min
u







{



R


(

v
-
u

)




:


u


U

}




,





for every v∈V. In words, PU(v) is the vector in U that is the closest to v with respect to the Euclidean metric R.


Remark. The notion of orthogonality and hence the definition of orthogonal projection depends very strongly on the Hermitian structure R. Note that even when V=custom characterN and U={(x1, . . . , xK, 0, . . . , 0): xicustom character} is the standard coordinate subspace the orthogonal complement Umight look very different from {(0, . . . , 0, xK+1, . . . , xN): xicustom character} unless the Hermitian product is the standard product:

R0(x,y)=xHy,

for every x, y∈custom characterN.


Schur reduction. Let (V, R) be a finite dimensional Hermitian vector space. Let U⊂V be a linear subspace. We define a degenerate Hermitian product RU: V×V→custom character by:

RU(v,v′)=R(PUv,v′).  (3.3)

The Hermitian product RU is called the Schur reduction of R to the subspace U. One can verify that RU(u, v)=0 for every u∈Uand v∈V thus RU reduces to a non-degenerate Hermitian product on the quotient vector space V/U. Similarly, the Schur reduction with respect to Uis given by:











R

U





(

v
,

v



)


=

R


(



P

U




v

,

v



)








=


R


(

v
,

v



)


-



R
U



(

v
,

v



)


.










The Hermitian product RUis sometimes called the Schur complement of R with respect to U; it is a degenerate Hermitian form that reduces to a non-degenerate Hermitian form on the quotient space V/U.


We note the relation to standard matrix formulation. Assume V=custom characterN and U={(x1, . . . , xK, 0, . . . , 0): xicustom character}. Assume R is represented by an N×N Hermitian matrix R of the form:







R
=

[



A


B





B
H



D



]


,





where A, B and D are matrices of dimensions K×K, K×N−K and N−K×N−K respectively. We assume A is invertible. The Schur reductions of RU and RU⊥ are represented respectively by the (singular) Hermitian matrices:











R
U

=

[



A


B





B
H





B
H



A

-
1



B




]


,






R

U



=


[



0


0




0



D
-


B
H



A

-
1



B





]

.






(
3.4
)







Based Hermitian lattices. Let custom characteri=custom character⊕icustom character be the ring of Gaussian integers where i=√{square root over (−1)}. The main object of study in these notes is full rank lattices lying inside Hermitian vector spaces. Such objects lie at the intersection of lattice theory and Euclidean geometry. In fact, we will require in addition a choice of a particular basis of the lattice giving rise to the notion of a based Hermitian lattice.


Definition. A based Hermitian lattice over custom characteri is a triple (Y, G, R) where:






    • V is a complex vector space of dimension N.

    • G is a linear isomorphism G: custom characterV.

    • R is an Hermitian product R: V×V→custom character.





A based Hermitian lattice (V, G, R) defines in particular a lattice Λ=G(custom characteriN). Elements of Λ are custom characteri linear combinations of the vectors λi=G(ei) where ei is the standard ith basis vector of custom characterN, that is:

Λ={a[1]λ1+ . . . +a[NN: a[k]∈custom characteri}.

The vectors λ1, . . . , λn∈V form a basis of Λ. The map C is called the generator of Λ. The Hermitian vector space (V, R) is called the realization space of Λ.


Remark. A based Hermitian lattice is a full rank lattice in an Hermitian vector space equipped with a specific choice of basis.


Two basic operations on based Hermitian lattices include:


1. Change of basis. Changing the basis of a based Hermitian lattice amounts to changing the generator matrix G. Let SLN(custom characteri) denote the group of Gaussian unimodular N×N matrices, that is, the set consisting of N×N matrices of determinant 1 with coefficients in the ring custom characteri equipped with the operation of matrix multiplication (it can be shown that the inverse of a unimodular matrix is also unimodular).


Definition. A change of basis of a based Hermitian lattice (V, G, R) is a based Hermitian lattice of the form (V, G′, R) where G′=G∘T for some T∈SLN(custom characteri).


2. Change of realization. Changing the realization of a based Hermitian lattice amounts to changing the realization space (V, R).


Definition. A change of realization of a based Hermitian lattice (V, G, R) is a based Hermitian lattice (V′, G′, R′) where G′=A∘G and R=A*(R′) for some isomorphism A: Vcustom characterV′.


Note that if V=V′=custom characterN then the forms R and R′ can be represented by Hermitian matrices and the pullback equation R=A*(R′) translates to the conjugation condition:

R=AHR′A.


Triangular realizations. Let (V, G, R) be a based Hermitian lattice. There exists two special realizations. An upper triangular realization (custom characterN, U, R0) where U is an upper triangular matrix. The generator U is defined by the upper Cholesky decomposition:

G*(R)=LHL.

Similarly, there exists a lower triangular realization (custom characterN, L, R0) where L is a lower triangular matrix. The generator L is defined by the lower Cholesky decomposition:

G*(R)=LHL.


We refer to an upper triangular realization of an Hermitian lattice as upper triangular Hermitian lattice, and a lower triangular realization of an Hermitian lattice is referred to as a lower triangular Hermitian lattice.


Standard filtrations. Let (V, G, R) be a based Hermitian lattice with basis λi=G(ei), i=1, . . . , N. We define two ascending filtrations of V. The lower filtration:

0=V0⊂V1⊂ . . . ⊂VN=V,

where Vn the subspace of V spanned by the basis vectors λ1, . . . , λn. The upper filtration:







0
=



V
0



V
1



.



.







V
N


=
V


,





where Vn is the subspace of V spanned by the basis vectors λN−n+1, . . . , λN. In what follows, we use the notations [R]n and [R]n for the Schur complements of R with respect to Vn and Vn respectively.


Duality. Based Hermitian lattices admit duals. Let (V, G, R) be a based Hermitian lattice with basis λi=G(ei), i=1, . . . , N. Let λ*i∈V*, i=1, . . . , N denote the dual basis. Recall that λ*i is defined by:








λ
i
*



(

λ
j

)


=

{




1



j
=
1





0


otherwise



,







for every j∈[1, N]. The dual based Hermitian lattice is the triple (V*, Gd, Rd) where the dual generator is defined by:

Gd(ei)=λ*i,

for every i∈[1, N]. Note that the lattice Λ*=Gd(custom characteriN) is dual to Λ in the conventional sense, namely, Λ*={α∈V*: α(λ)∈custom character for every λ∈Λ}.


VBLAST reduced basis. Let (V, G, R) be a based Hermitian lattice. Let λ1, . . . , λN∈V be the corresponding basis where λi=G(ei). The VBLAST reduction condition is expressed in terms of the dual lattice.


Definition. We say that λ1, . . . , λN BLAST reduced basis of Λ if it satisfies the following condition:







N
-
n

=

arg







min
k




{




[

R
d

]

n



(


λ
k
*

,

λ
k
*


)



:


k



[

1
,

N
-
n


]


}

.








for n∈[0, N−1].


In words, λ1, . . . , λN is VBLAST reduced if the basis vectors are well ordered so that λ*N−n has the minimum dual norm taken mod λ*N−n+1, . . . , λ*N.


Remark. There is a nice interpretation of the VBLAST well ordering condition in the framework of Wiener theory of decision feedback equalization. Under this interpretation, the last among the first N−n symbols has the maximum SNR after substracting the interference from symbols N−n+1, . . . , N. This implies that the VBLAST ordering is optimal with respect to error propagation effect.


VBLAST reduction algorithm. The VBLAST reduction algorithm accepts as input a based Hermitian lattice (V, G, R) and produces as output a based Hermitian lattice (V, G′, R) such that:


(1) G′=G∘T where T∈SLN(custom characteri) is a permutation matrix.


(2) λ′i=G′(ei), i=1, . . . , N is a VBLAST reduced basis of Λ=G(custom characteriN).


The VBLAST change of basis permutation π: [1, N]→[1, N] is defined according to the following recursive formula. At step n∈[0, N−1].

  • Let V*πn⊂V* denote the subspace spanned by λ*π(N−n+1), . . . , λ*π(N).
  • Let [Rd]πn denote the Schur complement of Rd with respect to V*πn.


Define the value π(N−n) by:







π


(

N
-
n

)


=

arg







min
k




{




[

R
d

]

π
n



(


λ
k
*

,

λ
k
*


)



:


k



π


(

[


N
-
n
+
1

,
N

]

)



}

.








Consequently, the change of basis transformation is the matrix T obtained by permuting the columns of the identity according to π.


LLL (Lenstra-Lenstra-Lovász) reduced basis. One can view the LLL reduction condition as kind of a generalization of the VBLAST reduction condition explained in the previous subsection. Let (V, G, R) be a based Hermitian lattice. Let λ1, . . . , λN∈V be the corresponding basis where λi=G(ei).


Definition. We say that λ1, . . . , λN is an LLL reduced basis of Λ if it satisfies the following two conditions:


(1) Size reduction condition:












Re


[
R
]



i
-
1




(


λ
i

,

λ
j


)









1
2



[
R
]



i
-
1




(


λ
i

,

λ
i


)



,










Im


[
R
]



i
-
1




(


λ
i

,

λ
j


)









1
2



[
R
]



i
-
1




(


λ
i

,

λ
i


)



,




for every i=1, . . . , N−1, and j>i.


(2) Well ordering condition:










[
R
]


i
-
1




(


λ
i

,

λ
i


)






[
R
]


i
-
1




(


λ

i
+
1


,

λ

i
+
1



)



,




for every i=1, . . . , N−1.


Note that the size reduction condition implies the inequality:












[
R
]


i
-
1




(


λ
i

,

λ
j


)









1

2




[
R
]



i
-
1




(


λ
i

,

λ
i


)



,





for every i=1, . . . , N−1 and j>i. When λ1, . . . , λN is LLL reduced basis we say that the generator matrix G is LLL reduced.


Reduction algorithm. We describe two versions of the LLL reduction algorithm. The first version is independent of the specific realization of the lattice and the second version is defined in terms of upper triangular realizations.


Invariant form. The invariant LLL reduction algorithm accepts as input a based Hermitian lattice (V, G, R) and produces as output a (change of basis) based Hermitian lattice (V, G′, R) such that:


(1) G′=G∘T where T∈SLN(custom characteri).


(2) λ′i=G′(ei), i=1, . . . , N is an LLL reduced basis of Λ=G′(custom characteriN)=G(custom characteriN).


In more details, the algorithm constructs a sequence of generator matrices:

G=G0,G1, . . . , GK=G′,  (3.5)

such that Gk+1=Gk∘Tk, Tk∈SLN(custom characteri). Let T=T0∘T2∘ . . . ∘TN−1. The LLL reduced generator GK=G∘T.


The sequence (3.5) is constructed using two types of change of basis transformations.


Size reduction transformation. Let j>i∈[1, N]. Reduce the size of the jth basis vector with respect to the ith basis vector according to the rule λjk+1jk−aλik where:






a
=


[




[
R
]


i
-
1




(


λ
i
k

,

λ
j
k


)





[
R
]


i
-
1




(


λ
i
k

,

λ
i
k


)



]

.






Here [−] stands for the closest Gaussian integer. This transformation is realized by the unimodular matrix:








T
k

=

[



1


.


0


0


.


0




.


.


0


0


0


0




0


0


1


.



-
a



0




0


0


0


.


.


0




.


0


0


0


1


.




0


0


0


0


.


1



]


,





i.e., the unit matrix with additional non-zero entry Tk(i, j)=−a.


Flipping transformation. Let i∈[1, N−1]. Interchange the ith and the i+1th basis vectors according to the rule λik+1=−λi+1k and λi+1k+1ik. This transformation is realized by the unimodular matrix:







T
k

=

[



1


.


0


0


.


0




.


.


0


0


0


0




0


0


0


1


0


0




0


0



-
1



0


0


0




.


0


0


0


.


.




0


0


0


0


.


1



]






i.e., the unit matrix except that








T
k



(


i


:


i

+
1

)


,


(


i


:


i

+
1

)

=


[



0


1





-
1



0



]

.






Remark. The algorithm applies the size reduction step only if the size reduction condition is not satisfied and applies the flipping transformation always after applying size reduction transformation if and only if the well ordering condition is not satisfied.


Upper triangular form. The upper triangular version of the LLL reduction algorithm accepts as input an upper triangular based Hermitian lattice (custom characterN, U, R0) and produces as an output an upper triangular based Hermitian lattice (custom characterN, U′, R0) such that:


(1) U′=A∘U∘T where T∈SLN(custom characteri) and A∈UN.


(2) λ′i=U′(ei), i=1, . . . , N is an LLL reduced basis of Λ′=U′(custom characteriN).


In some embodiments, the algorithm constructs a sequence of upper triangular matrices:

U0=U,U1, . . . , UK=U′,  (3.6)

such that Uk+1=Ak∘Uk∘Tk where Tk∈SLN(custom characteri) and Ak∈UN. Let T=T0∘T2∘ . . . ∘TN−1 and let A=A0∘A2∘ . . . ∘AN−1. The reduced upper triangular realization is given by UK=A∘U0∘T. In what follows we use the notation:







U
k

=


[




U
11
k



.


.


.


.



U

1

N

k





0



U

2

2

k



.


.


.


.




0


0


.


.


.


.




.


.


.


.


.


.




.


.


.


0


.


.




0


.


.


0


.



U
NN
k




]

.





The sequence (3.6) is constructed using two types of transformations, each being a combination of a change of basis with a change of realization.


Size reduction transformation. Let j>i∈[1, N]. Reduce the size of the jth basis vector with respect to the ith basis vector according to the rule λjk+1jk−aλik where:






a
=


[




[
R
]


i
-
1




(


λ
i
k

,

λ
j
k


)





[
R
]


i
-
1




(


λ
i
k

,

λ
i
k


)



]

=


[




U
ii
k

_

·

U
ij
k






U
ii
k



2


]

.







This is realized by the unimodular matrix:








T
k

=

[



1


.


0


0


.


0




.


.


0


0


0


0




0


0


1


.



-
a



0




0


0


0


.


.


0




.


0


0


0


1


.




0


0


0


0


.


1



]


,





i.e., the unit matrix with additional non-zero entry Tk(i, j)=−a. To conclude:

Uk+1=Uk∘Tk.

Note that the upper triangular size reduction transformation has the same form as its invariant counterpart since Uk∘Tk is already in upper triangular form.


Flipping transformation. Let i∈[1, N−1]. Interchange between the ith and the i+1th basis vectors according to the rule λik+1=−λi+1k and λi+1k+1ik followed by a change of realization to return to upper triangular form. The change of basis matrix is given by:







T
k

=


[



1


.


0


0


.


0




.


.


0


0


0


0




0


0


0


1


0


0




0


0



-
1



0


0


0




.


0


0


0


.


.




0


0


0


0


.


1



]

.






The change of realization matrix is defined as follows. Let Gk+1=Uk∘Tk. One can verify that Gk+1 is almost upper triangular except that L=Gk+1(i: i+1, i: i+1) is lower triangular. Let L=QR be the Q-R decomposition of L where Q is unitary and R upper triangular. We define:








A
k

=

[



1


.


0


0


.


0




.


.


0


0


0


0




0


0



Q
11




Q
12



0


0




0


0



Q
21




Q
22



0


0




.


0


0


0


.


.




0


0


0


0


.


1



]


,





i.e., Ak is the unit matrix except that Ak(i: i+1, i: i+1)=Q. To conclude:

Uk+1=Ak∘Uk∘Tk.

Alternatively, we can define Uk+1=Gk except that Uk+1(i: i+1, i: i+1)=U where U is the upper triangular factor in the Cholesky factorization L*L=U*U.


The LLL reduction theory in dimension two. For pedagogical reasons it is worthwhile to explain the general theory in the special case when dim V=2. The set-up includes a based Hermitian lattice (V, G, R) where dimV=2. The vectors λ1=G(e1) and λ2=G(e2) basis of the corresponding rank 2 lattice Λ=G(custom characteri2).


Definition. We say that λ1, λ2 is an LLL reduced basis of Λ it satisfies the following two conditions:


(1) Size reduction, condition:











Re

R



(


λ
1

,

λ
2


)







1
2



R


(


λ
1

,

λ
1


)




,









Im

R



(


λ
1

,

λ
2


)







1
2




R


(


λ
1

,

λ
1


)


.







(2) Well ordering condition:

R11)≤R11).


Note that the size reduction condition implies the inequality:









R


(


λ
1

,


λ
2


𝔩


)







1

2





R


(


λ
1

,

λ
1


)


.







The nice thing about LLL reduced bases is that they consists of short vectors which are nearly orthogonal to one another. The quantitative meaning of this statement is the content of the following theorem.


Theorem. (Reduction theorem). If λ1, λ2 is LLL reduced basis then:


(1) The vector λ1 satisfies:









R


(


λ
1

,

λ
1


)





c



R


(


λ
short

,

λ
short


)





,




where c=1/√{square root over (2−√2)} and λshort denotes the shortest non-zero vector in Λ.


(2) The vector A2 satisfies:










R

V
1





(


λ
2

,

λ
2


)







R

V
1





(

λ
,
λ

)




,




for every vector λ∈Λ with non-zero orthogonal projection on V1.

    • In words, the Theorem asserts that the first basis vector λ1 is no longer than a scalar multiple at the shortest non-zero vector in the lattice There the scalar is universal (does not depend on the lattice) and that the second basis vector is the shortest non zero vector mod λ1.


Reduction algorithm—invariant form. The algorithm accepts as input a based Hermitian lattice (V, G, R) and produces as output a (change of basis) based Hermitian lattice (V, G′, R) such that:


(1) G′=G∘T, where T∈SL2(custom character).


(2) λ′i=G′(ei), i=1, 2 is an LLL reduced basis of Λ=G(custom characteri2).


In some embodiments, the algorithm constructs a sequence of generator matrices:










G
=

G
0


,

G
1

,





,


G
K

=


G
d

.






(
3.7
)







Herein, Gk+1=Gk∘Tk where Tk∈SL2(custom characteri). The sequence (3.7) is constructed by alternating between the two following basic transformations.


Size reduction transformation. Reduce the size of the second basis vector with respect to the first basis vector according to the rule λ2k+12k−aλ1k where:






a
=


[


R


(


λ
1
k

,

λ
2
k


)



R


(


λ
1
k

,

λ
1
k


)



]

.






This transformation is realized by the unimodular matrix:







T
k

=


[



1



-
a





0


1



]

.





Flipping transformation. Interchange the basis vectors according to the rule λ1k+1=−λ2k and λ2k+11k. This transformation is realized by the unimodular matrix:







T
k

=


[



0


1





-
1



0



]

.





Reduction algorithm—upper triangular form. The algorithm accepts as input an upper triangular based Hermitian lattice (custom character2, U, R0) and produces as output an upper triangular based Hermitian lattice (custom character2, U′, R0) such that:


(1) U′=A∘U∘T where T∈SL2(custom characteri) and A∈U2.


(2) λ′i=U′(ei), i=1, 2 is an LLL reduced basis of Λ′=U′(custom characteri2).


In some embodiments, the algorithm constructs a sequence of upper triangular generator matrices:

U=U0,U1, . . . , UK=U′,  (3.8)

such that Uk+1=Ak∘Gk∘Tk where Tk∈SL2(custom characteri) and Ak∈U2. In what follows, we use the notation:







U
k

=


[




U
11
k




U

1

2

k





0



U

2

2

k




]

.





The sequence of generators in (3.8) is constructed by alternating between the following two type of transformations.


Size reduction transformation. Reduce the size of the second basis vector with respect to the first basis vector according to the rule λ2k+12k−aλ1k where:






a
=


[


R


(


λ
1
k

,

λ
2
k


)



R


(


λ
1
k

,

λ
1
k


)



]

.






This transformation is realized by the unimodular matrix:







T
k

=


[



1



-
a





0


1



]

.





Flipping transformation. The basis vectors are flipped according to the rule λ2k+1=−λ1k and λ1k+12k. This change of basis is realized by the unimodular matrix:







T
k

=


[



0


1





-
1



0



]

.






The resulting matrix Gk+1=Uk∘Tk is lower triangular and is transformed back to upper triangular form by change of realization Ak=Q, where Q is the Unitary factor in the QR decomposition of Gk+1. Alternatively, Uk+1=U—the upper triangular multiplier in the Cholesky decomposition Gk+1*Gk+1=U*U.


Convergence of the algorithm. The convergence of the reduction algorithm can be proved by energy considerations. We define the energy functional:

E(G)=R11)2[R]122).


Considering the sequence in (3.7), we have the following theorem.


Theorem. The following inequality always hold:

E(Gk+1)≤E(Gk),

moreover, when Gk is flipped we have E(Gk+1)≤αE(Gk) for some α<1.


3.2 Examples of Lattice Detection

Closest lattice point (CLP) problem. The CLP problem emerges as a relaxation of a hard finite quadratic minimization problem called the closest constellation point (CCP) problem. We consider the following general set up:


(1) Let (V, R) be an Hermitian vector space of dimension N.


(2) Let G: custom characterN→V be the generator of a lattice Λ=G (custom characteriN).


(3) Let {circumflex over (x)}∈V be a point in V called the soft estimation.


(4) Let Ω→(Λ+v0)∩B where B is some bounded set and v0∈V is some translation vector. The set Ω is called the set of constellation points.


The CCP problem is defined by:











x
^

h

=

arg



min
p



{



R
(


x
^

-
p

]


p


Ω

}







(
3.9
)







Let {circumflex over (x)}t={circumflex over (x)}−v0. The CLP problem is the following relaxation of (3.9):










a
*

=

arg



min
a




{



R


(



x
t

^

-

G


(
a
)



)




:


a




i
N


}

.







(
3.10
)








Consequently, the derived hard estimation of {circumflex over (x)} is given by {circumflex over (x)}h=G(a*)+v0. Interestingly, the price in performance due to lattice relaxation is negligible.


Remark. Note that the standard QAM constellation sets can be viewed as a truncation of translated Gaussian lattices.


Boosting CLP via lattice reduction. The main advantage in considering the lattice relaxation of the CCP problem is that lattices in contrast to constellation sets admit various bases and realizations which can be used to reduce the complexity of the CLP minimization problem. In particular, let (custom characterN, U, R0) be an LLL reduced upper triangular realization of (V, G, R). Recall that

U=A∘G∘T,

where:


(1) U is upper triangular.


(2) T∈SLN(custom characteri).


(3) A: Vcustom characterN is an isomorphism satisfying A*(R0)=R.


(4) λi=U(ei), i=1, . . . , N is an LLL reduced basis of the lattice Λ=U(custom characteriN).


Note, that once T is known (for example after applying the invariant LLL reduction algorithm) the matrix U can be obtained via the Cholesky decomposition:

(G∘T)*(R)=UHU.

Let {circumflex over (z)}=A({circumflex over (x)}t). The CLP problem in the reduced realization is defined by:







a
*

=

arg



min
a




{







z
^

-

U


(
a
)





2



:


a




i
N


}

.








The hard decision {circumflex over (x)}h is derived from the “reduced” minimum a* by the rule {circumflex over (x)}h=G∘T(a*)+v0. We refer to the CLP problem in the reduced basis as LR CLP.


Lattice detection problems. Herein, CLP relaxations of various detection problems originating from communication theory are described.


Lattice detection problem for a single tap channel. First consider the simpler case of a single tap channel model:

y=h(x)+w,  (3.11)

where:


(1) h: V→custom characterM is the channel transformation.


(2) x∈Ω is the transmit vector assumed to belong to the constellation set.


(3) y∈custom characterM is the received vector.


(4) w∈custom characterM is the noise term assumed to be a Gaussian random vector w∈custom character(0, Rww) mean zero and covariance matrix Rww.


In order to define the CLP problem we assume a Gaussian prior x∈custom character(0, Rxx). Typically, Rxx=P·Id for some positive power P. Under these assumptions, the conditional probability of x given y takes the form:











(

x
|
y

)




e

-

R


(



x
^

-
x

,


x
^

-
x


)





,





where R=Ree−1=(h*Rww−1h+Rxx−1) and {circumflex over (x)}=Cy=Reeh*Rww−1y. In words, {circumflex over (x)} is the MMSE estimator of x in terms of y and Ree is the covariance matrix of the residual error e=x−{circumflex over (x)}. The detection problem is defined by:











x
^

h

=

arg



max
x



{






(

x
|
y

)




:


x


Ω

}









=

arg



min
x




{



R


(


x
^

-
x

)




:


x


Ω

}

.











Consequently, the CLP relaxation is defined by:








a
*

=

arg



min
a



{



R


(



x
^

t

-

G


(
a
)



)




:


a




i
N


}




,





where {circumflex over (x)}t={circumflex over (x)}−v0.


Lattice detection problem for a multi-tap channel. Now consider the dispersive channel model:

y=h(x)+w,  (3.12)

where:


(1) h is the sequence of channel taps, h[k]∈Hom(V, custom characterM), k∈custom character.


(2) x is the transmit sequence, x[n]∈Ω, n∈custom character.


(3) y is the received sequence, y[n]∈custom characterN, n∈custom character.


(4) w is the noise sequence assumed to be uncorrelated in time with w[n]∈custom character(0, Rww).


We further assume that the channel is causal, that is, h[k]=0 for every k<0 and finite, that is h[k]=0 for every k>v.


The term h(x) in (3.12) stands for the convolution: h(x)=Σk=0vh[k](x[n−k]).


In order to define the CLP problem we assume an uncorrelated Gaussian prior on x where x[n]∈custom character(0, Rxx). Under these assumptions, we define {circumflex over (x)} to be the decision feedback Wiener estimate of x, given by:










x
^

=


f


(
y
)


+


b


(
x
)


.






(


3
.
1


3

)








Herein,


(1) f=f[−μ], . . . , f[0]∈Hom(custom characterM, V), μ∈custom character≤1 is the Wiener forward filter.


(2) b=b[1], . . . , b[v]∈Hom(V, V) is the strict Wiener feedback filter.


For example, (3.13) is the sum of two convolution terms:








x
^



[
n
]


=





k
=

-
μ


0








f


[
k
]




(

y


[

n
-
k

]


)



+




k
=
1

v








b


[
k
]





(

x


[

n
-
k

]


)

.









It can be shown that the error sequence e[n]=x[n]−{circumflex over (x)}[n] is uncorrelated in time with e[n]∈custom character(0, Ree). Taking the Hermitian form R=Ree−1, the detection problem at time n is defined by:









x
^

h



[
n
]


=

arg







min
x




{



R


(



x
^



[
n
]


-

x


[
n
]



)




:






x


Ω

}

.








Consequently, the CLP relaxation at time n is defined by:









a
*



[
n
]


=

arg







min
a







{



R


(




x
^

t



[
n
]


-

G


(
a
)



)




:


a




i
N


}




,





where {circumflex over (x)}t[n]={circumflex over (x)}[n]−v0.


Computation of DF Weiner filters and the residual covariance matrix. The first step is to translate the channel model in (3.12) into a matrix form. To this end, define the column vectors:







Y
=



[



y


[
0
]


T

,





,


y


[
μ
]


T


]

T



Mat






(



n
y


M

,
1

)




,





X
=



[



x


[

-
v

]


T

,





,


x


[
μ
]


T


]

T



Mat






(



n
x


M

,
1

)




,





W
=



[



w


[
0
]


T

,





,


w


[
μ
]


T


]

T



Mat







(



n
y


M

,
1

)

.









where ny=μ+1, nx=μ+v+1. We define the matrix:






H
=


[




h


[
v
]




.


.



h


[
0
]




0


.


0




0


.


.


.


.


.


.




.


.


.


.


.


.


0




0


.


0



h


[
v
]




.


.



h


[
0
]





]



Mat







(



n
y


M

,


n
x


N


)

.







Under these conventions, the channel model translates to the matrix equation:

Y=HX+W.  (3.14)


Furthermore, define the Weiner inverse channel by:

X=CY+E,  (3.15)

where C∈Mat(nxN, nyM) is the Wiener estimator of X from Y and E is the residual error which, by definition, is uncorrelated with Y. We have the following formulas:








R

E

E


=


(



H
H



R
ww

-
1



H

+

R




XX


-
1



)


-
1



,





C
=


R

E

E




H
H




R
WW

-
1


.








Consider REE as an nx×nx block matrix. Let REE=LDU be the block LDU decomposition where U is block upper triangular with IM on every block of the diagonal, D is block diagonal and L=UH.


Apply L−1 to both sides of the inverse channel equation (3.15) to get:

L−1X=L−1CY+L−1E,  (3.16)


The equation (3.16) exhibits the property that the new noise term L−1E is uncorrelated in time with R{tilde over (E)}{tilde over (E)}=D. Write L−1=I−B. Note that B is strictly block lower triangular. Substituting in (3.16), we get:

X=L−1CY+BX+L−1E.  (3.17)


Taking the 0th block coordinate of both sides of Equation (3.17), we get:







x


[
0
]


=



e
0
T



L

-
1



C

Y

+


e
0
T


B

X

+


e
0
T



L

-
1




E
.








We have:


(1) f[k]=e0TL−1C[−k], for k=−μ, . . . , 0.


(2) b[k]=e0TB[−k], for k=1, . . . , v.


(3) Ree=D0, 0.


Lattice detection problem for a multi-tap 2D channel. Let Nfcustom character≥1. Let custom character/Nf denote the ring of integers modulo Nf. An element l∈custom character/Nf is called a frequency slot. We consider the dispersive 2D channel model:

y=h(x)+w,  (3.18)

where:


(1) h[k, l]∈Hom(V, custom characterM), k∈custom character, l∈custom character/Nf, called the 2D channel.


(2) x[n, l]∈Ω, n∈custom character, l∈custom character/Nf, called the transmit sequence.


(3) y[n, l]∈custom characterN, n∈custom character, l∈custom character/Nf, called the receive sequence.


(4) w[n, l]∈custom characterN, n∈custom character, l∈custom character/Nf, called the noise sequence.


The noise sequence is assumed to be uncorrelated in time and in frequency with w[n, l]∈custom character(0, Rww). We further assume that the channel is causal and finite in time, that is, h[k, l]=0 for every k<0 and k>v.


The term h(x) in (3.18) stands for 2D convolution:









h


(
x
)




[

n
,
l

]


=




k
=
0

v












l
1

+

l
2


=
l









h


[

k
,

l
1


]




(

x


[


n
-
k

,

l
2


]


)





,





where the equation l1+l2=l under the second sum is taken modulo Nf. Hence, the first convolution is linear and the second convolution is cyclic. We assume tin uncorrelated Gaussian prior on x where x[n, l]∈custom character(0, Rxx). Under these assumptions, we define x to be the 2D decision feedback Wiener estimate of x, given by:











x
^

=


f


(
y
)


+

b


(
x
)




,




(
3.19
)








where:


(1) f=f[−λ, l], . . . , f[0, l]∈Hom(custom characterM, V), μ∈custom character≥1 is the 2D Wiener forward filter.


(2) b=b[1, l], . . . , b[v, l]∈Hom(V, V) is the strict 2D Wiener feedback filter.


More explicitly, (3.19) is the sum of two convolution terms:








x
^



[

n
,
l

]


=






k
=

-
μ







0












l
1

+

l
2


=
l





f


[

k
,

l
1


]




(

y


[


n
-
k

,

l
2


]


)




+




k
=
1

v












l
1

+

l
2


=
l









b


[

k
,

l
1


]





(

x


[


n
-
k

,

l
2


]


)

.










It can be shown that the error sequence e[n, l]=x[n, l]−{circumflex over (x)}[n, l] is uncorrelated in time and Toeplitz in frequency with e[n, −]∈custom character(0, Ree),







R
ee

=


[




r
11




r
12



.


.



r

1


N
f








r
12
H




r
11




r
12



.


.




.


.


.


.


.




.


.


.


.



r
12






r

1


N
f


H



.


.



r
12
H




r
11




]

.






In the definition of the CCP problem we ignore the correlations between different frequencies, by taking R=r11−1. The detection problem at time n and frequency l is defined by:









x
^

h



[

n
,
l

]


=

arg







min
x




{



R


(



x
^



[

n
,
l

]


-

x


[

n
,
l

]



)




:


x


Ω

}

.








Consequently, the CLP relaxation at time n and frequency l is defined by:









a
*



[

n
,
l

]


=

arg







min
a







{



R


(




x
^

t



[

n
,
l

]


-

G


(
a
)



)




:


a




i
N


}




,





where {circumflex over (x)}t[n, l]={circumflex over (x)}[n, l]−v0.


Remark. Ignoring the Cross correlations between different frequency slots in the definition of the CCP problem Leads to a sub-optimal relaxation of the joint detection problem of x[n−]∈ΩNf. When these cross terms are small compared to the diagonal term r11 we expect the loss in performance to be small.


Computation of 2D Wiener filters via Fourier domain representation. Herein, reducing the computation of 2D Wiener filters f[k, l] and b[k, l] and the residual covariance matrix to a 1D computation is described. To this end, the (normalized) DFT along the frequency dimension is applied to the 2D channel model in (3.18). This yields a channel model of the form:

Y=H(X)+W,  (3.20)

where:


(1) H[k, l]∈DFTl(h[n, l]), k∈custom character, l∈custom character/Nf.


(2) X[n, l]=DFTl(x[n, l]), n∈custom character, l∈custom character/Nf.


(3) Y[n, l]=DFTl(y[n, l]), n∈custom character, l∈custom character/Nf.


(4) W[n, l]=DFTl(w[n, l]), n∈custom character, l∈custom character/Nf.


We refer to (3.20) as the Fourier domain representation of the 2D channel model (3.18).


Since the DFT is a Unitary transformation, the Fourier noise term remains uncorrelated in time and frequency with W[n, l]∈custom character(0, Rww). Most importantly, the DFT converts cyclic convolution to multiplication, hence, the Fourier 2D channel model is composed of Nf non-interacting 1D channels, namely:









H


(
X
)




[

n
,
l

]


=




k
=
0

v








H


(

k
,
l

)




(

X


[


n
-
k

,
l

]


)




,





for every l=0, . . . , Nf−1. Let {circumflex over (X)}=F(Y)+B(X) denote the DF Wiener estimate of X in terms of Y where F[k, l]∈Hom(custom characterM, V) and B[k, l]∈Hom(V, V) are the forward and backward Wiener filters respectively. One can show that the residual error E=X−{circumflex over (X)} is uncorrelated in time and frequency with E[n, l]∈custom character(0, REE(l)), l=0, . . . , Nf−1. We have:








f


[

k
,
l

]


=


IDFT
l



(

F


[

k
,
l

]


)



,






b


[

k
,
l

]


=


IDFT
l



(

B


[

k
,
l

]


)



,






r
11

=


1

N
f







l
=
0



N
f

-
1










R
EE



(
l
)


.








3.3 Examples of CLP Detection Algorithms

In this section, we describe various algorithms for finding the CLP. The algorithms fall into two classes: exact algorithm which find the true minimum and heuristic algorithm which find an approximation of the minimum. The trade-off is complexity. All algorithms incorporate a fundamental weighted tree structure representation of the lattice where leaves of the tree are in 1-1 correspondence with vectors in the lattice. This enables to localize the search problem enabling a branch and bound searching strategies. The different between the various algorithms is the strategy applied to search through the tree.


Set-up. We assume the following set-up:


(1) Let (V, G, R) be a based Hermitian lattice.


(2) Let Λ=G(custom characteriN) be the associated lattice with basis λi=G(ei), i=1, . . . , N.


(3) Let {circumflex over (x)}∈V be the soft estimation.


The CLP problem is defined by:







a
*

=

arg







min
a




{



R


(


x
^

-

G


(
a
)



)




:






a




i
N


}

.








In words: find the point in the lattice Λ that is the closest to {circumflex over (x)} with respect to the Euclidean metric R.


The lattice tree. There exists a canonical weighted tree structure custom character associated with (V, G, R) and {circumflex over (x)}, called the lattice tree. Formally, the lattice tree is a triple custom character=(V, ε, ω) where:


(1) V is the set of vertices.


(2) ε is the set of edges.


(3) ω: ε=custom character≥0 is a weight function on the edges.


Topology of the lattice tree. The topology of the lattice tree is defined in terms of the standard lattice custom characteriN. The set of vertices is a disjoint union of N+1 layers:







V
=




N


k
=
0




V
k



,





where Vk={a∈custom characteriN: a[k]=0, . . . , k=1, . . . , N−K} is the set of vertices at layer k. Consequently, the set of edges is a disjoint union N lavers:







ɛ
=





N
-
1



k
=
0




ɛ
k



,





where εk⊂Vk×Vk+1 is the set of edges connecting layer k with layer k+1. An edge in εk is an ordered pairs (a, b) such that b[l]=a[l] for every l≥N−K+1. Note that custom character is a uniform infinite tree of depth N. The root of custom character is the zero vector 0∈custom characteriN. The zero layer V0={0}. All the branches are of length N and are in one to one correspondence with vectors in custom characteriN. Under this correspondence a vector a∈custom characteriN is associated with the branch:








a
0





e
0





a
1





e
1




,





,




e

N
-
1





a
N


,





where ak∈Vk and ek=(ak, ak+1)∈εk. The vertex ak is defined by:








a
k



[
l
]


=

{





a


[
l
]





l


N
-
K
+
1






0


otherwise



,







Finally, we introduce the following notation. Given a vertex a∈Vk, we denote by out (a)⊂εk the edges emanating from a and if k≥1, we denote by in (a)∈εk− the unique edge that points to a.


The weight structure on the lattice tree. The weight function ω is defined in terms of the based Hermitian lattice (V, G, R) and the soft estimation {circumflex over (x)}. Our approach is to first describe a vertex weight function μ:V→custom character≥0 and than derive ω as a localized version of μ. The precise relation between ω and μ is:








μ


(

a
k

)


=




l
=
0


k
-
1




ω


(

e
l

)




,





for every ak∈Vk where:







0
=


a
0





e
0





a
1





e
1





,





,




e

k
-
1





a
k


,





is the unique branch connecting the root with ak. Let us fix a vertex ak∈Vk.


Definition. The weight μ(ak) is defined by:










μ


(

a
k

)


=



[
R
]


N
-
k





(


x
^

-

G


(

a
k

)



)

.






(
3.21
)








In words, μ(ak) is the square distance between the vector {circumflex over (x)} and the vector G(ak) measured mod λ1, . . . , λN−k. In order to define ω we introduce the notation:

{circumflex over (x)}k=PVN−k({circumflex over (x)}−G(ak)).  (3.22)

Let ek=(ak, ak+1)∈εk.


Definition. The weight ω(ek) is defined by:










ω


(

e
k

)


=



[
R
]


N
-
k
-
1





(



x
^

k

-



a

k
+
1




[

N
-
k

]




λ

N
-
k




)

.






(
3.23
)







The relation between the vertex and edge weights is formalized in the following proposition.


Proposition. We have:

μ(ak+1)=μ(ak)°ω(ek).


Explicit formulas for the weight function. In order to write the weight values in explicit form we assume that (V, G, R) is an upper triangular realization, that is:


(1) V=custom characterN.


(2) G=U is upper triangular matrix.


(3) R=custom character−, −custom character is the standard Hermitian product on custom characterN.


In this realization:








V
k

=

{




(


x
1

,





,

x
N


)



:







x
i


=
0

,

i


k
+
1



}


,






V
k


=

{




(


x
1

,





,

x
N


)



:







x
i


=
0

,

i

k


}


,





for every k=0, . . . , N. The orthogonal projections PVk and PVkare given by xk=PVk(x) and xk=PVk(x) where:








x
k



[
n
]


=

{





x


[
n
]





n

k





0


otherwise



,







x
k




[
n
]


=

{





x


[
n
]





n


k
+
1






0


otherwise



.









Given a vertex ak∈Vk, the weight μ(ak) is given by:













μ


(

a
k

)


=


R

V

N
-
k






(


x
~

-

U


(

a
k

)



)








=





P

V

N
-
k






(


x
^

-

U


(

a
k

)



)




2








=




l
=

N
-
k
+
1


N










d


(
l
)




2



,







(
3.24
)







where d={circumflex over (x)}−U(ak). Given an edge ek=(ak, ak+1)∈εk, the weight ω(ek) is given by:













w


(

e
k

)


=



[
R
]


N
-
k
-
1




(



x
^

k

-



a

k
+
1




[

N
-
k

]




λ

N
-
k




)








=





P

V

N
-

(

k
+
1

)







(



x
^

k

-



a

k
+
1




[

N
-
k

]




λ

N
-
k




)




2








=







x
^

k



{

N
-
k

]


-



a

k
+
1




[

N
-
k

]




U


N
-
k

,

N
-
k







2


,







(
3.25
)








where {circumflex over (x)}k=PVN−k({circumflex over (x)}−G(ak)).


Remark. In some embodiments, working in an upper triangular realization is beneficial for calculation reasons as the weight formulas can be explicitly expressed in terms of the coefficient of the generator U by a simple recursive formula.


Babai detector. The Babai detector is the simplest heuristic detector. The output of the Babai detector is the branch a∈custom characteriN,








a

*
0






e

*
0






a

*
1






e

*
1





,





,




e


*
N

-
1





a

*
N



,





defined recursively as:








e

*
k


=

arg







min
e







{



w


(
e
)




:


e



out


(

a

*
k


)



}




,





for every k=0, . . . , N−1. In words, the Babai detector is a greedy algorithm that picks the branch that at every layer extends to the next layer via the edge of minimal weight.


Remark. In some embodiments, the Babai lattice detector is equivalent to decision feedback MMSE. However, the performance of the Babai detector after applying LLL basis reduction is significantly superior to the standard DF MMSE.


Sphere detector. The sphere detector is an exact detector. The sphere detector travel through the lattice tree according to a depth first search strategy where the edges in out (ak) are chosen in ascending order according to their weight. The algorithm incorporates a threshold parameter T, initialized in the beginning to T=≈. The algorithm follow the following two rules:


(1) When reaching a leaf aN∈VN update T←μ(aN).


(2) Branch from ak∈Vk to ak+1∈Vk+1 only if μ(ak+1)<T.



FIG. 9 is a flowchart of a method 900 for wireless data reception. The method 900 includes, at 910, receiving a signal comprising information bits modulated using orthogonal time frequency space (OTFS) modulation scheme, wherein each delay-Doppler bin in the signal is modulated using a quadrature amplitude modulation (QAM) mapping. The method 900 may lead to successful decoding and extraction of the information bits from the signal, using techniques described in the present document.


The method 900 includes, at 920, estimating the information bits by inverting and pre-processing a single error covariance matrix representative of estimation error for all delay-Doppler bins. In other words, estimating the information bits is based on an inverse of a single error covariance matrix of the signal.


As described in the present document, in some implementations, the method 900 may further include computing a unimodular matrix U, and improving numerical conditioning (or equivalently, decreasing the condition number) of the single error covariance matrix by multiplying with U. While the matrix U could be calculated using several methods, e.g., a brute force method, in some embodiments a lattice reduction algorithm (including the exemplary implementations described in Sections 2 and 3) may be used to reduce numerical complexity. In some embodiments, the lattice reduction algorithm may include a size reduction transformation followed by a flipping transformation. In an example, the size reduction transformation may be based on a first unimodular matrix and the flipping transformation may be based on a second (different) unimodular matrix.


The method 900 may also include lattice detection. Further, this may include conversion of the above detected lattice to standard lattice (QAM lattice) and estimating information bits by performing symbol to bit de-mapping. In some embodiments, the method 900 includes, for each delay-Doppler bin, performing a Babai detection (lattice detection) on the output of the lattice reduction algorithm. In some embodiments, the method 900 includes, for each delay-Doppler bin, performing a sphere detection (lattice detection) on the output of the lattice reduction algorithm. In some embodiments, and more generally, the method 900 includes, for each delay-Doppler bin, performing a closest lattice point (CLP) detection on the output of the lattice reduction algorithm. In some embodiments, the lattice reduction algorithm may be implemented using the LLL algorithm, a Block Korkine Zolotarev (BKZ) algorithm, a random sampling reduction (RSR) algorithm or a primal dual reduction (PDR) algorithm.


The method 900 may also include first determining that the inverse of the single error covariance matrix is numerically well-conditioned (or equivalently, having a condition number close to unity), and then performing a slicing operation on the QAM symbols in each of the delay-Doppler bins.



FIG. 10 is a block diagram of an example of a wireless communication apparatus 1000. The apparatus 1000 may include a processor 1002, a memory 1004 and transceiver circuitry 1006. The processor may implement various operations described in the present document that include, but are not limited to, the MIMO turbo equalizer described in Section 2 and the exemplary lattice reduction algorithm implementations described in Section 3. The memory may be used to store code and data that is used by the processor when implementing the operations. The transceiver circuit may receiver OTFS and other types of signals.


It will be appreciated that the present document discloses, among other features, techniques that allow for embodiments that provide near-maximum likelihood performance in OTFS systems. Ideally, maximum likelihood algorithm may produce theoretically best results. However, a Babai detector or a sphere decoder may be used by practical systems to achieve performance nearly as good as ML receivers. As discussed herein, lattice reduction may be used as a pre-processing step for the implementation of a Babai detector or a sphere decoder. In particular, for OTFS modulated signals, implementation of lattice reduction can be made computationally bearable (compared to OFDM signals) by reducing the complexity of implementation by having to invert a single Ree matrix. Furthermore, conditioning of the matrix also becomes a numerically easier task because only one matrix needs to be processed, rather than multiple matrices in case of OFDM systems.


The disclosed and other embodiments, modules and the functional operations described in this document can be implemented in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this document and their structural equivalents, or in combinations of one or more of them. The disclosed and other embodiments can be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer readable medium for execution by, or to control the operation of, data processing apparatus. The computer readable medium can be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter effecting a machine-readable propagated signal, or a combination of one or more them. The term “data processing apparatus” encompasses all apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers. The apparatus can include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them. A propagated signal is an artificially generated signal, e.g., a machine-generated electrical, optical, or electromagnetic signal, that is generated to encode information for transmission to suitable receiver apparatus.


A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a standalone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.


The processes and logic flows described in this document can be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).


Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read only memory or a random access memory or both. The essential elements of a computer are a processor for performing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto optical disks, or optical disks. However, a computer need not have such devices. Computer readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto optical disks; and CD ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.


While this patent document contains many specifics, these should not be construed as limitations on the scope of an invention that is claimed or of what may be claimed, but rather as descriptions of features specific to particular embodiments. Certain features that are described in this document in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or a variation of a sub-combination. Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results.


Only a few examples and implementations are disclosed. Variations, modifications, and enhancements to the described examples and implementations and other implementations can be made based on what is disclosed.

Claims
  • 1. A wireless communication method, implementable by a wireless communication receiver apparatus, comprising: receiving a signal comprising information bits modulated using an orthogonal frequency division multiplexing (OFDM) modulation scheme, wherein each sub-carrier in the signal is modulated using a quadrature amplitude modulation (QAM) mapping;generating a single error covariance matrix that is an average of error covariance matrixes for the sub-carriers that are grouped according to estimated channel characteristics for the sub-carriers; andestimating the information bits based on an inverse of the single error covariance matrix of the signal, wherein the single error covariance matrix is representative of an estimation error for all sub-carriers in the signal.
  • 2. The method of claim 1, further including: computing a unimodular matrix comprising integer entries and having a unity determinant; anddecreasing a condition number of the inverse of the single covariance matrix based on multiplication with the unimodular matrix.
  • 3. The method of claim 1, further including: performing, upon determining that the inverse of the single error covariance matrix is numerically well-conditioned, a slicing operation on QAM symbols in all the signal.
  • 4. The method of claim 2, wherein the computing the unimodular matrix includes applying a lattice reduction algorithm to obtain the unimodular matrix.
  • 5. The method of claim 4, wherein the applying the lattice reduction algorithm includes: applying a Lenstra Lenstra Lovasz (LLL) lattice reduction algorithm.
  • 6. The method of claim 4, further including, for each sub-carrier, performing Babai detection on an output of the lattice reduction algorithm.
  • 7. The method of claim 4, further including, for each sub-carrier, performing sphere detection on an output of the lattice reduction algorithm.
  • 8. The method of claim 4, further including, for each sub-carrier, performing a closest lattice point (CLP) detection on an output of the lattice reduction algorithm.
  • 9. The method of claim 4, wherein the lattice reduction algorithm includes a size reduction transformation followed by a flipping transformation.
  • 10. The method of claim 9, wherein the size reduction transformation is based on the unimodular matrix, and wherein the flipping transformation is based on another unimodular matrix different from the unimodular matrix.
  • 11. The method of claim 4, wherein the lattice reduction algorithm comprises a Lenstra Lenstra Lovasz (LLL) algorithm, a Block Korkine Zolotarev (BKZ) algorithm, a random sampling reduction (RSR) algorithm or a primal dual reduction (PDR) algorithm.
  • 12. The method of claim 1, further including, for each sub-carrier, converting an output of detected symbols to a standard lattice.
  • 13. The method of claim 1, wherein the estimating the information bits includes performing a symbol to bits de-mapping of the QAM symbols.
  • 14. A wireless communication device comprising a processor and transceiver circuitry wherein the transceiver circuitry is configured for receiving a signal comprising information bits modulated using an orthogonal frequency division multiplexing (OFDM) modulation scheme, wherein each sub-carrier is modulated using a quadrature amplitude modulation (QAM) mapping; and wherein the processor is configured to:generating a single error covariance matrix that is an average of error covariance matrixes for the sub-carriers that are grouped according to estimated channel characteristics for the sub-carriers; andestimate the information bits based on an inverse of the single error covariance matrix of the signal, wherein the single error covariance matrix is representative of an estimation error for all sub-carriers in the signal.
  • 15. The wireless communication device of claim 14, wherein the processor is further configured to: compute a unimodular matrix comprising integer entries and having a unity determinant; anddecrease a condition number of the inverse of the single covariance matrix based on multiplication with the unimodular matrix.
  • 16. The wireless communication device of claim 14, wherein the processor is further configured for: performing, upon determining that the inverse of the single error covariance matrix is numerically well-conditioned, a slicing operation on QAM symbols in all the signal.
  • 17. The wireless communication device of claim 15, wherein the computing the unimodular matrix includes applying a lattice reduction algorithm to obtain the unimodular matrix.
  • 18. The wireless communication device of claim 17, wherein the applying the lattice reduction algorithm includes: applying a Lenstra Lenstra Lovasz (LLL) lattice reduction algorithm.
  • 19. The wireless communication device of claim 17, wherein the processor is further configured to, for each sub-carrier, perform Babai detection on an output of the lattice reduction algorithm, or sphere detection on an output of the lattice reduction algorithm, or a closest lattice point (CLP) detection on an output of the lattice reduction algorithm.
  • 20. The wireless communication device of claim 17, wherein the lattice reduction algorithm includes a size reduction transformation followed by a flipping transformation and comprises a Lenstra Lenstra Lovasz (LLL) algorithm, a Block Korkine Zolotarev (BKZ) algorithm, a random sampling reduction (RSR) algorithm or a primal dual reduction (PDR) algorithm.
CROSS-REFERENCE TO RELATED APPLICATIONS

This patent document is a continuation of U.S. patent application Ser. No. 16/643,731, filed Mar. 2, 2020, which is a 371 National Phase Application of PCT Application No. PCT/US2018/049759 entitled “LATTICE REDUCTION IN ORTHOGONAL TIME FREQUENCY SPACE MODULATION” filed on Sep. 6, 2018 which claims priority to and benefits of U.S. Provisional Patent Application No. 62/545,398, entitled “LATTICE REDUCTION IN ORTHOGONAL TIME FREQUENCY SPACE MODULATION” and filed Sep. 6, 2017. The entire content of the before-mentioned patent application is incorporated by reference as part of the disclosure of this patent document.

US Referenced Citations (249)
Number Name Date Kind
4754493 Coates Jun 1988 A
5083135 Nagy et al. Jan 1992 A
5182642 Gersdorff et al. Jan 1993 A
5623511 Bar-David et al. Apr 1997 A
5831977 Dent Nov 1998 A
5872542 Simons et al. Feb 1999 A
5956624 Hunsinger et al. Sep 1999 A
6212246 Hendrickson Apr 2001 B1
6289063 Duxbury Sep 2001 B1
6356555 Rakib et al. Mar 2002 B1
6388621 Lynch May 2002 B1
6426983 Rakib et al. Jul 2002 B1
6608864 Strait Aug 2003 B1
6631168 Izumi Oct 2003 B2
6704366 Combes et al. Mar 2004 B1
6956814 Campanella Oct 2005 B1
7327812 Auer Feb 2008 B2
7392018 Ebert et al. Jun 2008 B1
7773685 Tirkkonen et al. Aug 2010 B2
7864877 Hottinen Jan 2011 B2
8229017 Lee et al. Jul 2012 B1
8259845 Dent Sep 2012 B2
8401131 Fety et al. Mar 2013 B2
8547988 Hadani et al. Oct 2013 B2
8619892 Vetter et al. Dec 2013 B2
8879378 Rakib et al. Nov 2014 B2
8892048 Turner Nov 2014 B1
8976851 Hadani et al. Mar 2015 B2
9031141 Hadani et al. May 2015 B2
9071285 Hadani et al. Jun 2015 B2
9071286 Hadani et al. Jun 2015 B2
9083483 Rakib et al. Jul 2015 B1
9083595 Rakib et al. Jul 2015 B2
9130638 Hadani et al. Sep 2015 B2
9282528 Hashimoto Mar 2016 B2
9294315 Hadani et al. Mar 2016 B2
9444514 Hadani et al. Sep 2016 B2
9548840 Hadani et al. Jan 2017 B2
9553984 Krause et al. Jan 2017 B2
9590779 Hadani et al. Mar 2017 B2
9634719 Rakib et al. Apr 2017 B2
9660851 Hadani et al. May 2017 B2
9667307 Hadani et al. May 2017 B1
9668148 Hadani et al. May 2017 B2
9712354 Hadani et al. Jul 2017 B2
9722741 Rakib et al. Aug 2017 B1
9729281 Hadani et al. Aug 2017 B2
10148470 Derras Dec 2018 B1
10651912 Wang et al. May 2020 B2
10667148 Hadani et al. May 2020 B1
10681568 Hadani et al. Jun 2020 B1
10693581 Rakib et al. Jun 2020 B2
10693692 Hadani et al. Jun 2020 B2
10716095 Rakib et al. Jul 2020 B2
10749651 Hebron et al. Aug 2020 B2
10826728 Tsatsanis et al. Nov 2020 B2
10855425 Kons et al. Dec 2020 B2
10873418 Kons et al. Dec 2020 B2
10886991 Akoum et al. Jan 2021 B2
11050530 Wang et al. Jun 2021 B2
20010031022 Petrus et al. Oct 2001 A1
20010033614 Hudson Oct 2001 A1
20010046205 Easton et al. Nov 2001 A1
20020001308 Heuer Jan 2002 A1
20020034191 Shattil Mar 2002 A1
20020181388 Jain et al. Dec 2002 A1
20020181390 Mody et al. Dec 2002 A1
20020181607 Izumi Dec 2002 A1
20030073464 Giannakis et al. Apr 2003 A1
20030185295 Yousef Oct 2003 A1
20030235147 Walton et al. Dec 2003 A1
20040044715 Aldroubi et al. Mar 2004 A1
20040174812 Murakami et al. Sep 2004 A1
20040189581 Sako et al. Sep 2004 A1
20040218523 Varshney et al. Nov 2004 A1
20050157778 Trachewsky et al. Jul 2005 A1
20050157820 Wongwirawat et al. Jul 2005 A1
20050180517 Abe Aug 2005 A1
20050207334 Hadad Sep 2005 A1
20050251844 Martone et al. Nov 2005 A1
20060008021 Bonnet Jan 2006 A1
20060039270 Strohmer et al. Feb 2006 A1
20070014272 Palanki et al. Jan 2007 A1
20070038691 Candes et al. Feb 2007 A1
20070058757 Kusume Mar 2007 A1
20070078661 Sriram et al. Apr 2007 A1
20070104283 Han et al. May 2007 A1
20070110131 Guess et al. May 2007 A1
20070211952 Faber et al. Sep 2007 A1
20070237181 Cho et al. Oct 2007 A1
20070253465 Muharemovic et al. Nov 2007 A1
20070253504 Hasegawa Nov 2007 A1
20070263752 Guey et al. Nov 2007 A1
20080043857 Dias et al. Feb 2008 A1
20080117999 Kadous et al. May 2008 A1
20080186843 Ma et al. Aug 2008 A1
20080187062 Pan et al. Aug 2008 A1
20080232504 Ma et al. Sep 2008 A1
20080310383 Kowalski Dec 2008 A1
20090080403 Hamdi Mar 2009 A1
20090092259 Jot et al. Apr 2009 A1
20090103593 Bergamo Apr 2009 A1
20090122854 Zhu et al. May 2009 A1
20090161804 Chrabieh et al. Jun 2009 A1
20090196360 Gan Aug 2009 A1
20090204627 Hadani Aug 2009 A1
20090222226 Baraniuk et al. Sep 2009 A1
20090303961 Popovic et al. Dec 2009 A1
20100001901 Baraniuk et al. Jan 2010 A1
20100008432 Kim et al. Jan 2010 A1
20100027608 Priotti Feb 2010 A1
20100111138 Hosur et al. May 2010 A1
20100142476 Jiang et al. Jun 2010 A1
20100187914 Rada et al. Jul 2010 A1
20100238787 Guey Sep 2010 A1
20100277308 Potkonjak Nov 2010 A1
20100303136 Ashikhmin et al. Dec 2010 A1
20100322349 Lee et al. Dec 2010 A1
20110007789 Garmany Jan 2011 A1
20110110532 Svendsen May 2011 A1
20110116489 Grandhi May 2011 A1
20110116516 Hwang et al. May 2011 A1
20110126071 Han et al. May 2011 A1
20110131463 Gunnam Jun 2011 A1
20110216808 Tong et al. Sep 2011 A1
20110286502 Adachi et al. Nov 2011 A1
20110287778 Levin et al. Nov 2011 A1
20110292971 Hadani et al. Dec 2011 A1
20110293030 Rakib et al. Dec 2011 A1
20110299379 Sesia et al. Dec 2011 A1
20110305267 Riu et al. Dec 2011 A1
20120021769 Lindoff et al. Jan 2012 A1
20120051457 Ma et al. Mar 2012 A1
20120140716 Baldemair et al. Jun 2012 A1
20120170684 Yim et al. Jul 2012 A1
20120201322 Rakib et al. Aug 2012 A1
20120213098 Sun Aug 2012 A1
20120235795 Liao et al. Sep 2012 A1
20120269201 Atungsiri et al. Oct 2012 A1
20120272117 Stadelmeier et al. Oct 2012 A1
20120320994 Loghin et al. Dec 2012 A1
20130021977 Yang et al. Jan 2013 A1
20130058390 Haas et al. Mar 2013 A1
20130077579 Cho et al. Mar 2013 A1
20130083661 Gupta et al. Apr 2013 A1
20130121497 Smaragdis et al. May 2013 A1
20130230010 Kim et al. Sep 2013 A1
20130260787 Hashimoto Oct 2013 A1
20130279627 Wu et al. Oct 2013 A1
20130287078 Buchacher Oct 2013 A1
20130315133 Wang et al. Nov 2013 A1
20140143639 Loghin et al. May 2014 A1
20140161154 Hadani et al. Jun 2014 A1
20140169385 Hadani et al. Jun 2014 A1
20140169406 Hadani et al. Jun 2014 A1
20140169433 Hadani et al. Jun 2014 A1
20140169436 Hadani et al. Jun 2014 A1
20140169437 Hadani et al. Jun 2014 A1
20140169441 Hadani et al. Jun 2014 A1
20140247803 Arambepola et al. Sep 2014 A1
20140348252 Siohan et al. Nov 2014 A1
20140364128 Lee et al. Dec 2014 A1
20150117395 Hadani et al. Apr 2015 A1
20150326273 Rakib et al. Nov 2015 A1
20150327085 Hadani et al. Nov 2015 A1
20150382231 Jabbar et al. Dec 2015 A1
20160043835 Hadani et al. Feb 2016 A1
20160135132 Donepudi et al. May 2016 A1
20160182269 Hadani et al. Jun 2016 A1
20160191217 Hadani et al. Jun 2016 A1
20160191280 Hadani et al. Jun 2016 A1
20160254889 Shattil Sep 2016 A1
20160277225 Frenne et al. Sep 2016 A1
20160309345 Tehrani et al. Oct 2016 A1
20160380743 Rakib Dec 2016 A1
20160381576 Hadani et al. Dec 2016 A1
20170012749 Rakib et al. Jan 2017 A1
20170012810 Rakib et al. Jan 2017 A1
20170019297 Rakib Jan 2017 A1
20170033899 Rakib et al. Feb 2017 A1
20170040711 Rakib et al. Feb 2017 A1
20170078054 Hadani et al. Mar 2017 A1
20170099122 Hadani et al. Apr 2017 A1
20170099607 Hadani et al. Apr 2017 A1
20170149594 Rakib et al. May 2017 A1
20170149595 Rakib et al. May 2017 A1
20170201354 Hadani et al. Jul 2017 A1
20170207817 Hadani et al. Jul 2017 A1
20170222700 Hadani et al. Aug 2017 A1
20170230215 Rakib et al. Aug 2017 A1
20170244524 Hadani et al. Aug 2017 A1
20170288913 Rakib et al. Oct 2017 A1
20170289961 Rakib et al. Oct 2017 A1
20180032802 Lee Feb 2018 A1
20180109284 Hadani et al. Apr 2018 A1
20180167165 Kons et al. Jun 2018 A1
20180205481 Rakib et al. Jul 2018 A1
20180227159 Rakib et al. Aug 2018 A1
20180242170 Hadani et al. Aug 2018 A1
20180262306 Hadani et al. Sep 2018 A1
20180287675 Sheikh Oct 2018 A1
20180288809 Delfeld et al. Oct 2018 A1
20180302802 Fanfelle Oct 2018 A1
20190036577 Delfeld et al. Jan 2019 A1
20190036741 Hadani et al. Jan 2019 A1
20190044682 Hebron et al. Feb 2019 A1
20190075551 Hadani et al. Mar 2019 A1
20190081836 Hadani et al. Mar 2019 A1
20190159177 Rakib et al. May 2019 A1
20190173617 Kons et al. Jun 2019 A1
20190173630 Kons et al. Jun 2019 A1
20190215109 Hadani et al. Jul 2019 A1
20190238189 Delfeld et al. Aug 2019 A1
20190327054 Kons et al. Oct 2019 A1
20190342126 Hadani et al. Nov 2019 A1
20190342136 Hadani et al. Nov 2019 A1
20190379422 Hadani et al. Dec 2019 A1
20200045562 Hadani et al. Feb 2020 A1
20200119868 Rakib et al. Apr 2020 A1
20200137774 Molisch et al. Apr 2020 A1
20200145273 Rakib et al. May 2020 A1
20200153107 Rakib May 2020 A1
20200186397 Tsatsanis et al. Jun 2020 A1
20200204309 Namboodiri Jun 2020 A1
20200204410 Hadani Jun 2020 A1
20200228170 Delfeld et al. Jul 2020 A1
20200259604 Hadani et al. Aug 2020 A1
20200259692 Hadani et al. Aug 2020 A1
20200259697 Delfeld Aug 2020 A1
20200280138 Fanfelle et al. Sep 2020 A1
20200287672 Namboodiri et al. Sep 2020 A1
20200288333 Rakib et al. Sep 2020 A1
20200305010 Hadani et al. Sep 2020 A1
20200313695 Namboodiri et al. Oct 2020 A1
20200313949 Hadani Oct 2020 A1
20200322185 Kons et al. Oct 2020 A1
20200322202 Hadani et al. Oct 2020 A1
20200351836 Rakib et al. Nov 2020 A1
20200367252 Hebron et al. Nov 2020 A1
20200389268 Sathyanarayan et al. Dec 2020 A1
20200403829 Namboodiri et al. Dec 2020 A1
20210028877 Rakib et al. Jan 2021 A1
20210036823 Hebron et al. Feb 2021 A1
20210058114 Molisch et al. Feb 2021 A1
20210077625 Kons et al. Mar 2021 A1
20210105155 Kons et al. Apr 2021 A1
20210126750 Kons et al. Apr 2021 A1
20210135905 Kons et al. May 2021 A1
20210194732 Kons et al. Jun 2021 A1
Foreign Referenced Citations (53)
Number Date Country
2011150315 Dec 2011 WO
2013148546 Oct 2013 WO
2014004585 Jan 2014 WO
2016014596 Jan 2016 WO
2016014598 Jan 2016 WO
2016176642 Nov 2016 WO
2016183230 Nov 2016 WO
2016183240 Nov 2016 WO
2016209848 Dec 2016 WO
2017003952 Jan 2017 WO
2017011455 Jan 2017 WO
2017011478 Jan 2017 WO
2017044501 Mar 2017 WO
2017087706 May 2017 WO
2017100666 Jun 2017 WO
2017147439 Aug 2017 WO
2017165697 Sep 2017 WO
2017173160 Oct 2017 WO
2017173389 Oct 2017 WO
2017201467 Nov 2017 WO
2018031938 Feb 2018 WO
2018031952 Feb 2018 WO
2018032016 Feb 2018 WO
2018064587 Apr 2018 WO
2018064605 Apr 2018 WO
2018106731 Jun 2018 WO
2018129554 Jul 2018 WO
2018140837 Aug 2018 WO
2018191309 Oct 2018 WO
2018195548 Oct 2018 WO
2018200567 Nov 2018 WO
2018200577 Nov 2018 WO
2019014332 Jan 2019 WO
2019032142 Feb 2019 WO
2019032605 Feb 2019 WO
2019036492 Feb 2019 WO
2019051093 Mar 2019 WO
2019051427 Mar 2019 WO
2019055861 Mar 2019 WO
2019068053 Apr 2019 WO
2019060596 May 2019 WO
2019089986 May 2019 WO
2019113046 Jun 2019 WO
2019157230 Aug 2019 WO
2019173775 Sep 2019 WO
2019241436 Dec 2019 WO
2019241589 Dec 2019 WO
2020142520 Jul 2020 WO
2020206304 Oct 2020 WO
2020227619 Nov 2020 WO
2020247768 Dec 2020 WO
2021026212 Feb 2021 WO
2021062354 Apr 2021 WO
Non-Patent Literature Citations (10)
Entry
Banelli, P. et al., “Modulation Formats and Waveforms for 5G Networks: Who Will Be the Heir of OFDM?,” IEEE Signal Processing Magazine, vol. 81, pp. 80-93, Nov. 2014.
El Hattachi, R. et al., “NGMN 5G Initiative White Paper,” NGMN Alliance, Feb. 17, 2015. [Online]. Available: https://www.ngmn.org/uploads/media/NGMN_5G_White_Paper_V1_0.pdf, 125 pages.
Rusek, F. et al., “Scaling Up MIMO, Opportunities and Challenges with Very Large Arrays,” IEEE Signal Processing Magazine, pp. 40-60 (2013).
Vodafone, “Cellular Internet of Things: Architectural Aspects,” RP-150869, 3GPP RAN#68, Malmo, Sweden (Jun. 9, 2015), 19 pages.
Gurevich, S. et al. “Group Representation Design of Digital Signals and Sequences,” S.W. Golomb et al. (eds.), SETA 2008, LNCS 5203, pp. 153-166, Springer-Verlag Berlin Heidelberg (2008).
“AT&T Annual Report 2014,” Opening Our Network [Online]. Retrieved from the Internet: Sep. 22, 2016. <URL: http://www.att.com/Investor/ATT_Annual/2014/att_introduces_new_concepts_for_telecom_network.html>, 5 pages.
Catt, “UL ACK/NACK transmission methods for LTE-A,” 3GPP TSG RAN WG1 Meeting #60bis, R1-102453, Beijing, China, Apr. 12-16, 2010, 8 pages.
Toskala, A. et al., “Physical Layer,” Chapter 5 In: “LTE for UMTS: OFDMA and SC-FDMA Based Radio Access,” Holma, H. et al. (eds.), John Wiley & Sons, Ltd., United Kingdom, 2009, pp. 83-135.
Mecklenbrauker, W., “A Tutorial on Non-Parametric Bilinear Time-Frequency Signal Representations,” In: Time and Frequency Representation of Signals and Systems, Longo, G. et al. (eds.), Springer-Verlag Wien, vol. 309, pp. 11-68 (1989).
Nehorai, A. et al., “MURI: Adaptive waveform design for full spectral dominance (2005-2010),” AFOSR FA9550-05-1-0443, Final Report, [online], Mar. 11, 2011 Retrieved on May 11, 2013, Retrieved from the Internet <URL: http://oai.dtic.mil/oai/oai?verb=getRecord&metadataPrefix=html&identifier=ADA565420>, 103 pages.
Related Publications (1)
Number Date Country
20210399926 A1 Dec 2021 US
Provisional Applications (1)
Number Date Country
62554982 Sep 2017 US
Continuations (1)
Number Date Country
Parent 16643731 US
Child 17445707 US