SLIDE 1
Classification of self-orthogonal F q + u F q -codes Classification - - PowerPoint PPT Presentation
Classification of self-orthogonal F q + u F q -codes Classification - - PowerPoint PPT Presentation
Self-orthogonal Codes over F q + u F q Rowena Alma Betty, Fidel Nemenzo and Lucky Erap Galvez University of the Philippines-Diliman LAWCI 2018 Classification of self-orthogonal F q + u F q -codes Classification of self-orthogonal F q + u F q
SLIDE 2
SLIDE 3
Classification of self-orthogonal Fq + uFq-codes
Classification of codes means finding complete set of representatives of equivalence classes.
SLIDE 4
Classification of self-orthogonal Fq + uFq-codes
Classification of codes means finding complete set of representatives of equivalence classes. For self-orthogonal codes, establishing the mass formula means finding a formula for
- [C]
|En| | Aut(C)| =
- C
1.
C: runs through self-orthogonal codes of length n over Fq + uFq [C]: runs through the equivalence classes of self-orthogonal codes of length n over Fq + uFq En is the full group of transformations allowed in defining the equivalence Aut(C): automorphism group of C
SLIDE 5
Survey: Mass formulas for Codes over Some Rings
SLIDE 6
Survey: Mass formulas for Codes over Some Rings
Number of self-dual codes over Z4 and self-dual codes over Fq + uFq, u2 = 0 (Gaborit)
SLIDE 7
Survey: Mass formulas for Codes over Some Rings
Number of self-dual codes over Z4 and self-dual codes over Fq + uFq, u2 = 0 (Gaborit)
p odd Zp2 s.d. BBN s.o. BM Z4 Fq + uFq s.d. G G s.o. BM ?
G Gaborit BBN Balmaceda-Betty-Nemenzo BM Betty-Munemasa
SLIDE 8
The ring Fq + uFq
Let R be the ring R = Fq[u]/(u2) = Fq + uFq where u commutes with the elements of Fq.
SLIDE 9
The ring Fq + uFq
Let R be the ring R = Fq[u]/(u2) = Fq + uFq where u commutes with the elements of Fq. The element u is a nilpotent element with nilpotency index 2. This finite chain ring is a local ring with unique maximal ideal (u) and Fq + uFq/(u) = Fq is the residue field.
SLIDE 10
The ring Fq + uFq
Let x = (x1, x2, . . . , xn), y = (y1, y2, . . . , yn) ∈ Rn. The Euclidean inner product x · y on Rn is defined as x · y =
n
- i=1
xiyi. Let x = a + ub ∈ R and define x = a − ub. The Hermitian inner product x · y on Rn is defined as x · y =
n
- i=1
xiyi.
SLIDE 11
Codes over R
Definition A linear code C of length n over R is an R-submodule of the Rn module.
SLIDE 12
Codes over R
Definition A linear code C of length n over R is an R-submodule of the Rn module. Definition Two codes C and C′ over R are said to be equivalent if there exists a monomial matrix P such that C′ = CP = {c · P|c ∈ C}
SLIDE 13
Codes over R
Every code C of length n over R is permutation equivalent to a code with generator matrix Ik0 A + uB uD
- where A, B ∈ Mk0×(n−k0)(Fq) and D ∈ Mk1×(n−k0)(Fq). Such
code is said to be of type {k0, k1}.
SLIDE 14
Codes over R
Every code C of length n over R is permutation equivalent to a code with generator matrix Ik0 A + uB uD
- where A, B ∈ Mk0×(n−k0)(Fq) and D ∈ Mk1×(n−k0)(Fq). Such
code is said to be of type {k0, k1}. Definition Let x = (x1, x2, .., xn) ∈ Rn. If C is a code over R, the dual of C, denoted C⊥ is the set C⊥ = {x ∈ Rn|x · c = 0 ∀c ∈ C} .
SLIDE 15
Codes over R
Every code C of length n over R is permutation equivalent to a code with generator matrix Ik0 A + uB uD
- where A, B ∈ Mk0×(n−k0)(Fq) and D ∈ Mk1×(n−k0)(Fq). Such
code is said to be of type {k0, k1}. Definition Let x = (x1, x2, .., xn) ∈ Rn. If C is a code over R, the dual of C, denoted C⊥ is the set C⊥ = {x ∈ Rn|x · c = 0 ∀c ∈ C} . If C ⊆ C⊥, C is said to be (Euclidean/Hermitian) self-orthogonal.
SLIDE 16
Codes over R
Every code C of length n over R is permutation equivalent to a code with generator matrix Ik0 A + uB uD
- where A, B ∈ Mk0×(n−k0)(Fq) and D ∈ Mk1×(n−k0)(Fq). Such
code is said to be of type {k0, k1}. Definition Let x = (x1, x2, .., xn) ∈ Rn. If C is a code over R, the dual of C, denoted C⊥ is the set C⊥ = {x ∈ Rn|x · c = 0 ∀c ∈ C} . If C ⊆ C⊥, C is said to be (Euclidean/Hermitian) self-orthogonal. If C = C⊥, C is said to be (Euclidean/Hermitian) self-dual.
SLIDE 17
Codes over R
Definition For every code C over R, we associate the codes residue code of C: res(C) =
- v ∈ Fn
q |v ∈ C
- torsion code of C: tor(C) =
- v ∈ Fn
q |uv ∈ C
SLIDE 18
Codes over R
Definition For every code C over R, we associate the codes residue code of C: res(C) =
- v ∈ Fn
q |v ∈ C
- torsion code of C: tor(C) =
- v ∈ Fn
q |uv ∈ C
- If C has generator matrix
Ik0 A + uB uD
- , then
1 res(C) has generator matrix
- Ik0
A
- ;
SLIDE 19
Codes over R
Definition For every code C over R, we associate the codes residue code of C: res(C) =
- v ∈ Fn
q |v ∈ C
- torsion code of C: tor(C) =
- v ∈ Fn
q |uv ∈ C
- If C has generator matrix
Ik0 A + uB uD
- , then
1 res(C) has generator matrix
- Ik0
A
- ;
2 tor(C) has generator matrix
Ik0 A D
- where D is of full
row rank k1.
SLIDE 20
Self-orthogonal Codes over Fq + uFq
If the code C is self orthogonal over R, then
SLIDE 21
Self-orthogonal Codes over Fq + uFq
If the code C is self orthogonal over R, then res(C) ⊆ tor(C) ⊆ res(C)⊥.
SLIDE 22
Self-orthogonal Codes over Fq + uFq
If the code C is self orthogonal over R, then res(C) ⊆ tor(C) ⊆ res(C)⊥. In particular, if C is self-dual, then tor(C) = res(C)⊥.
SLIDE 23
Codes over R with prescribed residue and torsion
From now on, we assume the following:
1 C1 is a code of length n over Fq with dimension k0 and
generator matrix G1 =
- Ik0 A
- 2 C2 is a code of length n over Fq of dimension k0 + k1 and
generator matrix G2 = Ik0 A D
- where A, B ∈ Mk0×(n−k0)(Fq) and D ∈ Mk1×(n−k0)(Fq), of
full row rank.
SLIDE 24
Codes over R with prescribed residue and torsion
Lemma If C is a code of length n over R with residue code C1 and torsion code C2, then there exists a matrix N ∈ Mk0×(n−k0)(Fq) such that the matrix Ik0 A + uN uD
- is a generator matrix for C. Such matrix N is unique if C is a
free code, i.e. k1 = 0 and C1 = C2.
SLIDE 25
Codes over R with prescribed residue and torsion
Lemma If C is a code of length n over R with residue code C1 and torsion code C2, then there exists a matrix N ∈ Mk0×(n−k0)(Fq) such that the matrix Ik0 A + uN uD
- is a generator matrix for C. Such matrix N is unique if C is a
free code, i.e. k1 = 0 and C1 = C2. Now, we assume that C1 is self-orthogonal and C1 ⊆ C2 ⊆ C⊥
1 .
Then Ik0 + AAT ≡ (u) (1) DAT ≡ (u) (2)
SLIDE 26
Codes over R with prescribed residue and torsion
Lemma The number of free Euclidean self-orthogonal codes C over R with given residue (and torsion) code C1 is qk0(2n−3k0+ǫ)/2 where ǫ = −1 if char Fq = 2 and ǫ = 1 if char Fq = 2.
SLIDE 27
Codes over R with prescribed residue and torsion
Lemma The number of free Euclidean self-orthogonal codes C over R with given residue (and torsion) code C1 is qk0(2n−3k0+ǫ)/2 where ǫ = −1 if char Fq = 2 and ǫ = 1 if char Fq = 2.
- Proof. C has generator matrix [Ik0 A + uN] and since C is
self-orthogonal, Ik0 + AAT + u(ANT + NAT ) ≡ 0 (u2) ⇒ ANT + NAT ≡ 0 (u) by (1)
SLIDE 28
Codes over R with prescribed residue and torsion
Lemma The number of free Euclidean self-orthogonal codes C over R with given residue (and torsion) code C1 is qk0(2n−3k0+ǫ)/2 where ǫ = −1 if char Fq = 2 and ǫ = 1 if char Fq = 2.
- Proof. C has generator matrix [Ik0 A + uN] and since C is
self-orthogonal, Ik0 + AAT + u(ANT + NAT ) ≡ 0 (u2) ⇒ ANT + NAT ≡ 0 (u) by (1) Define the map ΨA : Mk0×(n−k0)(Fq) → Mk0(Fq) by ΨA(N) = ANT + NAT .
SLIDE 29
Codes over R with prescribed residue and torsion
Lemma The number of free Euclidean self-orthogonal codes C over R with given residue (and torsion) code C1 is qk0(2n−3k0+ǫ)/2 where ǫ = −1 if char Fq = 2 and ǫ = 1 if char Fq = 2.
- Proof. C has generator matrix [Ik0 A + uN] and since C is
self-orthogonal, Ik0 + AAT + u(ANT + NAT ) ≡ 0 (u2) ⇒ ANT + NAT ≡ 0 (u) by (1) Define the map ΨA : Mk0×(n−k0)(Fq) → Mk0(Fq) by ΨA(N) = ANT + NAT . So,
- N|ANT + NAT ≡ 0 (u)
- = |ker ΨA|
SLIDE 30
ΨA : Mk0×(n−k0)(Fq) → Mk0(Fq), ΨA(N) = AN T + NAT
Moreover, Im(ΨA) = Symk0(Fq), char Fq = 2 Altk0(Fq), char Fq = 2 . Since
- Symk0(Fq)
- = q
k0(k0+1) 2
and |Altk0(Fq)| = q
k0(k0−1) 2
, |ker ΨA| =
- qk0(n−k0)− k0(k0+1)
2
= q
k0(2n−3k0−1) 2
, char Fq = 2 qk0(n−k0)− k0(k0−1)
2
= q
k0(2n−3k0+1) 2
, char Fq = 2
SLIDE 31
Codes over R with prescribed residue and torsion
Lemma The number of free Hermitian self-orthogonal codes over Fq + uFq with given residue (and torsion) code C1 is qk0(2n−3k0+1)/2
SLIDE 32
Codes over R with prescribed residue and torsion
Lemma The number of free Hermitian self-orthogonal codes over Fq + uFq with given residue (and torsion) code C1 is qk0(2n−3k0+1)/2
- Proof. As in the proof of the previous lemma, C has generator
matrix [Ik0 A + uN] for some unique N ∈ Mk0×(n−k0)(Fq) and C is Hermitian self-orthogonal if and only if Ik0 + AAT + u(ANT − NAT ) ≡ 0 (u2).
SLIDE 33
Codes over R with prescribed residue and torsion
Lemma The number of free Hermitian self-orthogonal codes over Fq + uFq with given residue (and torsion) code C1 is qk0(2n−3k0+1)/2
- Proof. As in the proof of the previous lemma, C has generator
matrix [Ik0 A + uN] for some unique N ∈ Mk0×(n−k0)(Fq) and C is Hermitian self-orthogonal if and only if Ik0 + AAT + u(ANT − NAT ) ≡ 0 (u2). Since A is of full-row rank,
- AMT : M ∈ Mk0×(n−k0)(Fq)
- = Mk0(Fq).
SLIDE 34
Codes over R with prescribed residue and torsion
Define the map ΦA : Mk0×(n−k0)(Fq) − → Mk0(Fq) N − → ANT − NAT
SLIDE 35
Codes over R with prescribed residue and torsion
Define the map ΦA : Mk0×(n−k0)(Fq) − → Mk0(Fq) N − → ANT − NAT ΦA(Mk0×(n−k0)(Fq)) =
- ANT − NAT : N ∈ Mk0×(n−k0)(Fq)
- =
- S − ST : S ∈ Mk0(Fq)
- =
Skewk0(Fq)
SLIDE 36
Codes over R with prescribed residue and torsion
Define the map ΦA : Mk0×(n−k0)(Fq) − → Mk0(Fq) N − → ANT − NAT ΦA(Mk0×(n−k0)(Fq)) =
- ANT − NAT : N ∈ Mk0×(n−k0)(Fq)
- =
- S − ST : S ∈ Mk0(Fq)
- =
Skewk0(Fq) Hence, the number of free Hermitian self-orthogonal codes C with residue code C1 is
- N ∈ Mk0×(n−k0)(Fq)|ANT − NAT ≡ 0 (u)
- =
|ker ΦA| = q
k0(2n−3k0+1) 2
.
SLIDE 37
Codes over R with prescribed residue and torsion
Define the sets X =
- C | C of type {k0, 0}, C ⊆ C⊥, res(C) = C1
- ,
X′ =
- C′ | C′ of type {k0, k1}, C′ ⊆ C′⊥, res(C′) = C1, tor(C′) = C2
- ,
where self-orthogonality is either in the Euclidean or Hermitian sense.
SLIDE 38
Codes over R with prescribed residue and torsion
Define the sets X =
- C | C of type {k0, 0}, C ⊆ C⊥, res(C) = C1
- ,
X′ =
- C′ | C′ of type {k0, k1}, C′ ⊆ C′⊥, res(C′) = C1, tor(C′) = C2
- ,
where self-orthogonality is either in the Euclidean or Hermitian sense. Lemma If C ∈ X, there exist a unique code C′ ∈ X′ such that C ⊆ C′.
SLIDE 39
Codes over R with prescribed residue and torsion
Define the sets X =
- C | C of type {k0, 0}, C ⊆ C⊥, res(C) = C1
- ,
X′ =
- C′ | C′ of type {k0, k1}, C′ ⊆ C′⊥, res(C′) = C1, tor(C′) = C2
- ,
where self-orthogonality is either in the Euclidean or Hermitian sense. Lemma If C ∈ X, there exist a unique code C′ ∈ X′ such that C ⊆ C′. Lemma Let C′ ∈ X′. Then |{C ∈ X|C ⊆ C′}| = qk0k1.
SLIDE 40
Codes over R with prescribed residue and torsion
Theorem Let C1 and C2 be codes of length n over Fq where C1 ⊆ C2 ⊆ C⊥
1 . If dim C1 = k0 and dim C2 = k0 + k1, then
- i. the number of Euclidean self-orthogonal codes C of length n
- ver Fq + uFq with res(C) = C1 and tor(C) = C2 is
qk0(2n−3k0−2k1+ǫ)/2 where ǫ = −1 if char Fq = 2 and ǫ = 1 if char Fq = 2.
- ii. the number of Hermitian self-orthogonal codes C of length
n over Fq + uFq with res(C) = C1 and tor(C) = C2 is qk0(2n−3k0−2k1+1)/2
SLIDE 41
C1 ⊆ C2 ⊆ C⊥
1 , dim C1 = k0, dim C2 = k0 + k1
- Proof. WLOG, we may assume that C1 and C2 are codes with
generator matrices G1 =
- Ik0 A
- and G2 =
Ik0 A D
- ,
respectively.
SLIDE 42
C1 ⊆ C2 ⊆ C⊥
1 , dim C1 = k0, dim C2 = k0 + k1
- Proof. WLOG, we may assume that C1 and C2 are codes with
generator matrices G1 =
- Ik0 A
- and G2 =
Ik0 A D
- ,
respectively. qk0k1 X′
- =
- C′∈X′
- C ∈ X|C ⊆ C′
SLIDE 43
C1 ⊆ C2 ⊆ C⊥
1 , dim C1 = k0, dim C2 = k0 + k1
- Proof. WLOG, we may assume that C1 and C2 are codes with
generator matrices G1 =
- Ik0 A
- and G2 =
Ik0 A D
- ,
respectively. qk0k1 X′
- =
- C′∈X′
- C ∈ X|C ⊆ C′
- =
- C∈X
- C′ ∈ X′|C ⊆ C′
SLIDE 44
C1 ⊆ C2 ⊆ C⊥
1 , dim C1 = k0, dim C2 = k0 + k1
- Proof. WLOG, we may assume that C1 and C2 are codes with
generator matrices G1 =
- Ik0 A
- and G2 =
Ik0 A D
- ,
respectively. qk0k1 X′
- =
- C′∈X′
- C ∈ X|C ⊆ C′
- =
- C∈X
- C′ ∈ X′|C ⊆ C′
- =
- C∈X
1
SLIDE 45
C1 ⊆ C2 ⊆ C⊥
1 , dim C1 = k0, dim C2 = k0 + k1
- Proof. WLOG, we may assume that C1 and C2 are codes with
generator matrices G1 =
- Ik0 A
- and G2 =
Ik0 A D
- ,
respectively. qk0k1 X′
- =
- C′∈X′
- C ∈ X|C ⊆ C′
- =
- C∈X
- C′ ∈ X′|C ⊆ C′
- =
- C∈X
1 = |X| .
SLIDE 46
Main Result
Remarks.
1 Let σq(n, k) denote the number of distinct self-orthogonal
codes over Fq of length n and dimension k.
SLIDE 47
Main Result
Remarks.
1 Let σq(n, k) denote the number of distinct self-orthogonal
codes over Fq of length n and dimension k.
2 For k ≤ n, the Gaussian coefficient
n k
- q
is defined as n k
- q
= (qn − 1)(qn − q) · · · (qn − qk−1) (qk − 1)(qk − q) · · · (qk − qk−1) .
SLIDE 48
Main Result
Theorem The number of distinct Euclidean self-orthogonal codes over Fq + uFq of length n and type {k0, k1} is Mq(n, k0, k1)E = σq(n, k0) n − 2k0 k1
- q
qk0(2n−3k0−2k1+ǫ)/2 where ǫ = −1 if char Fq = 2 and ǫ = 1 if char Fq = 2 and the number of distinct Hermitian self-orthogonal codes over Fq + uFq of length n and type {k0, k1} is Mq(n, k0, k1)H = σq(n, k0) n − 2k0 k1
- q
qk0(2n−3k0−2k1+1)/2.
SLIDE 49
C ⊆ C⊥ ⇒ res(C) ⊆ tor(C) ⊆ res(C)⊥
- Proof. If C is a self-orthogonal code of length n over Fq + uFq of
type {k0, k1}, then we set C1 = res(C) and C2 = tor(C).
SLIDE 50
C ⊆ C⊥ ⇒ res(C) ⊆ tor(C) ⊆ res(C)⊥
- Proof. If C is a self-orthogonal code of length n over Fq + uFq of
type {k0, k1}, then we set C1 = res(C) and C2 = tor(C). There are σq(n, k0) self-orthogonal codes C1 of length n over Fq.
SLIDE 51
C ⊆ C⊥ ⇒ res(C) ⊆ tor(C) ⊆ res(C)⊥
- Proof. If C is a self-orthogonal code of length n over Fq + uFq of
type {k0, k1}, then we set C1 = res(C) and C2 = tor(C). There are σq(n, k0) self-orthogonal codes C1 of length n over Fq. Given C1, there are n − 2k0 k1
- q
codes C2 such that C1 ⊆ C2 ⊆ C⊥
1 .
Then the result follows from the previous theorem.
SLIDE 52
Main Results
Corollary The number of distinct Euclidean self-dual codes of length n
- ver Fq + uFq is given by
- 0≤k0≤⌊ n
2 ⌋
Mq(n, k0, n − 2k0)E (3) and the number of distinct Hermitian self-dual codes of length n
- ver Fq + uFq is given by
- 0≤k0≤⌊ n
2 ⌋
Mq(n, k0, n − 2k0)H. (4)
SLIDE 53
Main Results
Corollary The number of distinct Euclidean self-dual codes of length n
- ver Fq + uFq is given by
- 0≤k0≤⌊ n
2 ⌋
Mq(n, k0, n − 2k0)E (3) and the number of distinct Hermitian self-dual codes of length n
- ver Fq + uFq is given by
- 0≤k0≤⌊ n
2 ⌋
Mq(n, k0, n − 2k0)H. (4)
- Proof. Let C be a code over R of type {k0, k1}.
C is self-dual ⇒ C2 = C⊥
1 . Hence, k1 = n − 2k0.
SLIDE 54
Example
Consider self-orthogonal codes over F2 + uF2, n = 4, k0 = 1, k1 = 2.
SLIDE 55
Example
Consider self-orthogonal codes over F2 + uF2, n = 4, k0 = 1, k1 = 2. M2(4, 1, 2) = σ2(4, 1) 4 − 2 2
- 2
2(8−3−4+1)/2 = 7(1)(2) = 14.
SLIDE 56
Example
Consider self-orthogonal codes over F2 + uF2, n = 4, k0 = 1, k1 = 2. M2(4, 1, 2) = σ2(4, 1) 4 − 2 2
- 2
2(8−3−4+1)/2 = 7(1)(2) = 14. Let C1 and C2 be codes over F2 + uF2 with generator matrices 1 1 u u , 1 1 1 1 u u u u , and |Aut(C1)| = 32, |Aut(C2)| = 192.
SLIDE 57
Example
Consider self-orthogonal codes over F2 + uF2, n = 4, k0 = 1, k1 = 2. M2(4, 1, 2) = σ2(4, 1) 4 − 2 2
- 2
2(8−3−4+1)/2 = 7(1)(2) = 14. Let C1 and C2 be codes over F2 + uF2 with generator matrices 1 1 u u , 1 1 1 1 u u u u , and |Aut(C1)| = 32, |Aut(C2)| = 192. Hence,
2
- j=1
|En| |Aut(Cj)| = 244! 32 + 244! 192 = 12 + 2 = 14 ∴ there are 2 self-orthogonal codes over F2 + uF2 of length 4, type {1, 2}, up to equivalence.
SLIDE 58
Classification Results for Codes over Fq + uFq
The number of inequivalent Euclidean and Hermitian self-orthogonal codes of lengths 2 ≤ n ≤ 6 over F2 + uF2 and F3 + uF3
SLIDE 59