Cyclic algebras: a tool for Space-Time Coding CMI seminar, Caltech January 20th, 2005 Fr´ ed´ erique Oggier joint work with Jean-Claude Belfiore and Ghaya Rekaya, ENST, Paris, France Emanuele Viterbo, Politecnico di Torino, Torino, Italy 1 Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
30
Embed
Cyclic algebras: a tool for Space-Time Codingusers.cms.caltech.edu/~schulman/Courses/0506cs286/F.Oggier.CMI.1.… · Cyclic algebras: a tool for Space-Time Coding CMI seminar, ...
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Cyclic algebras:a tool for Space-Time Coding
CMI seminar, Caltech
January 20th, 2005
Frederique Oggier
joint work withJean-Claude Belfiore and Ghaya Rekaya, ENST, Paris, France
Emanuele Viterbo, Politecnico di Torino, Torino, Italy
1
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
The problem we are interested in
x x3 4
x1
x2
22h
12h
21h
11h
X H Y=HX+Z
y1
y2
y y3 4
I Codes for multiple antennas, with M transmit and M receive antennas.
I Also called Space-Time Codes.
2
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
The 2 × 2 MIMO channel
x x3 4
x1
x2
22h
12h
21h
11h
X H Y=HX+Z
y1
y2
y y3 4
I X : 2 × 2 matrix codeword from a space-time code
C =
{
X =
(
x1 x2
x3 x4
)
|x1, x2, x3, x4 ∈ C
}
the xi are functions of the information symbols taken from a constellation S (e.g. PSK,QAM).
I H : 2 × 2 channel matrix is a complex Gaussian matrix with independent, zero mean, entries.
I Z: 2 × 2 complex Gaussian noise matrix.3
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
The code design
The goal is the design of the codebook C:
C =
{
X =
(
x1 x2
x3 x4
)
|x1, x2, x3, x4 ∈ C
}
the xi are functions of the information symbols taken from a constellation S (e.g. PSK, QAM).
I The pairwise probability of error of sending X and decoding X 6= X is upper bounded by
P (X → X) ≤ const
| det(X − X)|2M.
I We assume the receiver knows the channel (this is called the coherent case).
4
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
A simplified problem
Find a family C of M × M matrices such that
det(Xi − Xj) 6= 0, Xi 6= Xj ∈ C.
5
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
A simplified problem
I Find a family C of M × M matrices such that
det(Xi − Xj) 6= 0, Xi 6= Xj ∈ C.
Such a family C is said fully-diverse.
I Furthermore| det(Xi − Xj)|2 ≥ const, Xi 6= Xj ∈ C.
6
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
The idea behind division algebras
I The difficulty in building C such that
det(Xi − Xj) 6= 0, Xi 6= Xj ∈ C,
comes from the non-linearity of the determinant.
I An algebra of matrices is linear, so that
det(Xi − Xj) = det(Xk),
Xk a matrix in the algebra.
7
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
The idea behind division algebras
I The problem is now to build a family C of matrices such that
det(X) 6= 0, 0 6= X ∈ C.
or equivalently, such that each 0 6= X ∈ C is invertible.
I By definition, a field is a set such that every (nonzero) element in it is invertible.
I Take C inside an algebra of matrices which is also a field.
I A division algebra is a non-commutative field.
8
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
The leitmotiv
Let C be a subset of an algebra of matrices which is a division algebra, then
det(Xi − Xj) 6= 0, Xi 6= Xj ∈ C.
9
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Outline
I Division algebras do exist: the Hamiltonian Quaternions
I Introducing number fields
I Introducing cyclic algebras
I Encoding and Rate
I Full diversity
10
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
The Hamiltonian Quaternions: definition
I Let {1, i, j, k} be a basis for a vector space of dimension 4 over R.
I We have the rule that i2 = −1, j2 = −1, and ij = −ji.
I The Hamiltonian Quaternions is the set H defined by
H = {x + yi + zj + wk | a, b, c, d ∈ R}.
11
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Hamiltonian Quaternions are a division algebra
I Define the conjugate of a quaternion q = x + yi + wk:
q = x − yi − zj − wk.
I Compute thatqq = x2 + y2 + z2 + w2, x, y, z, w ∈ R.
I The inverse of the quaternion q is given by
q−1 =q
qq.
12
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Hamiltonian Quaternions: a matrix formulation
I Any quaternion q = x + yi + zj + wk can be written as
(x + yi) + j(z − wi) = α + jβ, α, β ∈ C.
I Now compute the multiplication by q:
(α + jβ)(γ + jδ) = αγ + jαδ + jβγ + j2βδ
= (αγ − βδ) + j(αδ + βγ)
I Write this equality in the basis {1, j}:(
α −β
β α
)(
γ
δ
)
=
(
αγ − βδ
αδ + βγ
)
13
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Hamiltonian Quaternions and Cyclic Algebras
A handwaving parallel:(
α −β
β α
)
↔(
x0 γσ(x1)
x1 σ(x0)
)
C ↔ a number fieldx ↔ σ(x)
−1 ↔ γ
14
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Number fields: the idea
I The set Q is easily checked to be a field.
I Take i, such that i2 = −1. One can build a new field “adding” i to Q, the same way i is addedto R to create C.
I To get a field, we add all the multiples and powers of i. We obtain Q(i).
I Note we can start with the field Q(i) and add√
5, we get a new field, denoted by Q(i,√
5).
I We say that Q(i,√
5) is an extension of Q(i), which is itself an extension of Q.
15
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Number field: the definition
I If L/K is a field extension, then L has a natural structure as a vector space over K
I An element x ∈ Q(i,√
5) can be written as w = x+y√
5 , where {1,√
5} are the basis “vectors”and x, y ∈ Q(i) are the scalars.
I Also w = (a + ib) +√
5(c + id), a, b, c, d ∈ Q. Thus Q(i,√
5) is a vector space of dimension 2over Q(i), or of dimension 4 over Q
I A finite field extension of Q is called a number field.
16
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Hamiltonian Quaternions and Cyclic Algebras
A handwaving parallel:(
α −β
β α
)
↔(
a0 +√
5b0 γσ(a1 +√
5b1)
a1 +√
5b1 σ(a0 +√
5b0)
)
, a0, a1, b0, b1 ∈ Q(i)
C ↔ Q(i,√
5)
x ↔ σ(x)
−1 ↔ γ
17
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Number field and polynomial
I A way to describe i is to say it is the solution of the equation X 2 + 1 = 0. Building Q(i), wethus add to Q the solution of a polynomial equation.
I Such a polynomial is called the minimal polynomial
I The polynomial X2+1 is the minimal polynomial of i over Q. Similarly, X 2−5 is the minimalpolynomial of
√5 over Q(i).
18
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Defining automorphisms
I We define automorphisms of a number field L using the roots of the minimal polynomial.
I For Q(√
5), X2 − 5 = (X +√
5)(X −√
5), there are thus two automorphisms
σ1 : Q(√
5) → Q(√
5)
a + b√
5 7→ a + b√
5
σ2 : Q(√
5) → Q(√
5)
a + b√
5 7→ a − b√
5
I True for a, b ∈ Q(i) or Q.
I Note that σ2(σ2(a + b√
5)) = a + b√
5.
19
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Hamiltonian Quaternions and Cyclic Algebras
A handwaving parallel:(
α −β
β α
)
↔(
a0 +√
5b0 γσ(a1 +√
5b1)
a1 +√
5b1 σ(a0 +√
5b0)
)
, a0, a1, b0, b1 ∈ Q(i)
C ↔ Q(i,√
5)
x ↔ σ(a0 +√
5b0) = a0 −√
5b0
−1 ↔ γ
20
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Cyclic algebras
I Let L/K be a Galois extension of degree n such that its Galois group G = Gal(L/K) is cyclic,with generator σ. Denote by K∗ (resp. L∗) the non-zero elements of K (resp. L), and choosean element γ ∈ K∗. We construct a non-commutative algebra, denoted A = (L/K, σ, γ), asfollows:
A = L ⊕ eL ⊕ . . . ⊕ en−1L
such that e satisfiesen = γ and λe = eσ(λ) for λ ∈ L.
Such an algebra is called a cyclic algebra.
I The algebra A is defined as a direct sum of copies of L, thus an element x in the algebra iswritten
x = x0 + ex1 + . . . + en−1xn−1,
with xi ∈ L.
I Since the algebra is noncommutative, the rule λe = eσ(λ) explains how to do the computa-tion if the element e is multiplied by the left.
21
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Cyclic algebras: matrix formulation
We illustrate the computation on an example. For n = 2, we have
xy = (x0 + ex1)(y0 + ey1)
= x0y0 + x0ey1 + ex1y0 + ex1ey1
= x0y0 + eσ(x0)y1 + ex1y0 + γσ(x1)y1,
since e2 = γ. In matrix form, this yields
xy =
(
x0 γσ(x1)
x1 σ(x0)
)(
y0
y1
)
.
22
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Cyclic algebras: matrix formulation
I
A = L ⊕ eL
such that e satisfiese2 = γ and λe = eσ(λ) for λ ∈ L.
I
x = x0 + ex1 ∈ A ↔(
x0 γσ(x1)
x1 σ(x0)
)
I
e ∈ A ↔(
0 γ
1 0
)
23
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Cyclic Algebras: encoding and rate
I Information symbols are from QAM constellations, or HEX constellations.
I Since QAM symbols are in Z[i] ⊆ Q(i).
I Consider our example, where L = Q(i,√
5). Then
C =
{
(
a0 +√
5b0 γ(a1 −√
5b1)
a1 +√
5b1 a0 −√
5b0
)T
| a0, a1, b0, b1 ∈ QQAM
}
.
I Codes made from cyclic algebras are said full rate: n2 information symbols encoded for n2
symbols transmitted.
24
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Introducing the notion of norm
I We have defined automorphisms of a number field L using the roots of the minimal polyno-mial.
I For Q(√
5), X2 − 5 = (X +√
5)(X −√
5), there are thus two automorphisms
σ1 : Q(√
5) → Q(√
5)
a + b√
5 7→ a + b√
5
σ2 : Q(√
5) → Q(√
5)
a + b√
5 7→ a − b√
5
I True for a, b ∈ Q(i) or Q.
I The norm of x is defined by
NL/K(x) =
n∏
i=1
σi(x)
25
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Full diversity
I Remember that codes coming from cyclic algebras satisfy
det(Xi − Xj) = det(X), Xi 6= Xj, X ∈ C.
I We want det(X) 6= 0 for all X 6= 0.
I If n = 2, we have
det
(
x0 γσ(x1)
x1 σ(x0)
)
= x0σ(x0) − γx1σ(x1) = NL/K(x0) − γNL/K(x1).
Thusdet(X) = 0 ⇐⇒ γ = NL/K
(
x0
x1
)
,
26
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Full diversity
Theorem. Let L/K be a cyclic extension of degree n with Galois group Gal(L/K) =< σ >.If γ, γ2, . . . , γn−1 ∈ K∗ are not a norm, then the cyclic algebra A = (L/K, σ, γ) is a divisionalgebra.
27
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Summary of the construction
Suppose you want a code for M antennas.
I Take a number field of degree M , say Q(i,√
5) for M = 2. (with cyclic Galois group).
I Build the code
C =
{
(
a0 +√
5b0 γ(a1 −√
5b1)
a1 +√
5b1 a0 −√
5b0
)T
| a0, a1, b0, b1 ∈ QQAM
}
.
I Choose γ which is not a norm, to get a division algebra.
28
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
And next?
I In this talk, I explained how to build a cyclic division algebra.
I There are more properties one can get for these codes.
1. a lower bound on the diversity2. the same average transmit enery per antenna3. shaping gain
29
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005
Cyclic algebras: a tool for Space-Time Coding • January 20th, 2005