coding for the permutation channel - universiteit gent

98
Coding for the Permutation Channel Mladen Kovačevid (joint work with Dejan Vukobratovid) Department of Power, Electronics, and Communication Engineering, University of Novi Sad, Serbia

Upload: others

Post on 19-Mar-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Coding for the Permutation Channel

Mladen Kovačevid

(joint work with Dejan Vukobratovid)

Department of Power, Electronics, and Communication Engineering, University of Novi Sad, Serbia

Summary

β€’ Permutation channels

β€’ Error correction in permutation channels

– Multiset codes

– Perfect multiset codes

2

Permutation channel

3

Permutation channel

β€’ Channel alphabet: 𝑆, a finite set of symbols

3

Permutation channel

β€’ Channel alphabet: 𝑆, a finite set of symbols

β€’ Channel input: Sequence of symbols 𝒄 = 𝑐1, 𝑐2, … , 𝑐𝑛 , 𝑐𝑖 ∈ 𝑆

3

Permutation channel

β€’ Channel alphabet: 𝑆, a finite set of symbols

β€’ Channel input: Sequence of symbols 𝒄 = 𝑐1, 𝑐2, … , 𝑐𝑛 , 𝑐𝑖 ∈ 𝑆

β€’ Channel output: Random permutation of 𝒄, namely

𝒄 = π‘πœ‹ 1 , π‘πœ‹ 2 , … , π‘πœ‹ 𝑛

3

Permutation channel

β€’ Channel alphabet: 𝑆, a finite set of symbols

β€’ Channel input: Sequence of symbols 𝒄 = 𝑐1, 𝑐2, … , 𝑐𝑛 , 𝑐𝑖 ∈ 𝑆

β€’ Channel output: Random permutation of 𝒄, namely

𝒄 = π‘πœ‹ 1 , π‘πœ‹ 2 , … , π‘πœ‹ 𝑛

β€’ Equivalently: 𝒄 = 𝒄 β‹… Ξ 

β€’ where Ξ  is a random 𝑛 Γ— 𝑛 permutation matrix

3

Permutation channel

β€’ Channel alphabet: 𝑆, a finite set of symbols

β€’ Channel input: Sequence of symbols 𝒄 = 𝑐1, 𝑐2, … , 𝑐𝑛 , 𝑐𝑖 ∈ 𝑆

β€’ Channel output: Random permutation of 𝒄, namely

𝒄 = π‘πœ‹ 1 , π‘πœ‹ 2 , … , π‘πœ‹ 𝑛

β€’ Equivalently: 𝒄 = 𝒄 β‹… Ξ 

β€’ where Ξ  is a random 𝑛 Γ— 𝑛 permutation matrix

3

– This is a special case of the β€œrandom matrix” channel arising in random linear network coding

Permutation channel

β€’ Example: End-to-end transmission in some types of packet networks

4

Permutation channel

β€’ Example: End-to-end transmission in some types of packet networks

– Multipath routing β‡’ reordering of packets

4

Permutation channel

β€’ Example: End-to-end transmission in some types of packet networks

– Multipath routing β‡’ reordering of packets

– Symbols = packets

4

Permutation channel

β€’ Example: End-to-end transmission in some types of packet networks

– Multipath routing β‡’ reordering of packets

– Symbols = packets

β€’ Apart from being permuted, some packets can be lost, some can be received erroneously, etc.

4

Permutation channel

β€’ Example: End-to-end transmission in some types of packet networks

– Multipath routing β‡’ reordering of packets

– Symbols = packets

β€’ Apart from being permuted, some packets can be lost, some can be received erroneously, etc.

β€’ To account for these impairments, we model the channel as a permutation channel with errors, deletions, and insertions.

4

Coding for the permutation channel

5

Coding for the permutation channel

β€’ In the permutation channel, any information that is contained in the order of symbols will be lost

5

Coding for the permutation channel

β€’ In the permutation channel, any information that is contained in the order of symbols will be lost

– Example: Given the received sequence, say (𝑐, π‘Ž, 𝑏), any of the following sequences is equally likely to have been sent: π‘Ž, 𝑏, 𝑐 , π‘Ž, 𝑐, 𝑏 , 𝑏, π‘Ž, 𝑐 , 𝑏, 𝑐, π‘Ž , 𝑐, π‘Ž, 𝑏 , (𝑐, 𝑏, π‘Ž)

5

Coding for the permutation channel

β€’ In the permutation channel, any information that is contained in the order of symbols will be lost

– Example: Given the received sequence, say (𝑐, π‘Ž, 𝑏), any of the following sequences is equally likely to have been sent: π‘Ž, 𝑏, 𝑐 , π‘Ž, 𝑐, 𝑏 , 𝑏, π‘Ž, 𝑐 , 𝑏, 𝑐, π‘Ž , 𝑐, π‘Ž, 𝑏 , (𝑐, 𝑏, π‘Ž)

β€’ The only carrier of information should be the (multi)set of symbols selected at the source

5

Coding for the permutation channel

β€’ In the permutation channel, any information that is contained in the order of symbols will be lost

– Example: Given the received sequence, say (𝑐, π‘Ž, 𝑏), any of the following sequences is equally likely to have been sent: π‘Ž, 𝑏, 𝑐 , π‘Ž, 𝑐, 𝑏 , 𝑏, π‘Ž, 𝑐 , 𝑏, 𝑐, π‘Ž , 𝑐, π‘Ž, 𝑏 , (𝑐, 𝑏, π‘Ž)

β€’ The only carrier of information should be the (multi)set of symbols selected at the source

– Error-correcting codes for this channel should be defined in the space of all multisets over the channel alphabet 𝑆

5

Multiset codes

6

Multiset codes

β€’ Recall: A multiset is a set with repetitions of elements allowed

6

Multiset codes

β€’ Recall: A multiset is a set with repetitions of elements allowed

– Operations on multisets:

β€’ *π‘Ž, 𝑏, 𝑏+ = 3

β€’ *π‘Ž, 𝑏, 𝑏+ βˆͺ *π‘Ž, π‘Ž, 𝑏, 𝑐+ = *π‘Ž, π‘Ž, 𝑏, 𝑏, 𝑐+

β€’ *π‘Ž, 𝑏, 𝑏+ ∩ *π‘Ž, π‘Ž, 𝑏, 𝑐+ = *π‘Ž, 𝑏+

6

Multiset codes

β€’ Recall: A multiset is a set with repetitions of elements allowed

– Operations on multisets:

β€’ *π‘Ž, 𝑏, 𝑏+ = 3

β€’ *π‘Ž, 𝑏, 𝑏+ βˆͺ *π‘Ž, π‘Ž, 𝑏, 𝑐+ = *π‘Ž, π‘Ž, 𝑏, 𝑏, 𝑐+

β€’ *π‘Ž, 𝑏, 𝑏+ ∩ *π‘Ž, π‘Ž, 𝑏, 𝑐+ = *π‘Ž, 𝑏+

β€’ Notation:

– 𝑀 𝑆 = the set of all multisets over 𝑆

– 𝑀 𝑆, 𝑛 = the set of all multisets over 𝑆 of cardinality 𝑛

6

Multiset codes

β€’ Definition: A multiset code 𝐢 is a non-empty subset of 𝑀(𝑆). We say that it is a constant-cardinality code if 𝐢 βŠ† 𝑀(𝑆, 𝑛).

7

Multiset codes

β€’ Definition: A multiset code 𝐢 is a non-empty subset of 𝑀(𝑆). We say that it is a constant-cardinality code if 𝐢 βŠ† 𝑀(𝑆, 𝑛).

β€’ Natural metrics in 𝑀(𝑆) are:

𝐷 𝑋, π‘Œ = 𝑋 βˆͺ π‘Œ βˆ’ 𝑋 ∩ π‘Œ = 𝑋 βˆ– π‘Œ + π‘Œ βˆ– 𝑋

7

Multiset codes

β€’ Definition: A multiset code 𝐢 is a non-empty subset of 𝑀(𝑆). We say that it is a constant-cardinality code if 𝐢 βŠ† 𝑀(𝑆, 𝑛).

β€’ Natural metrics in 𝑀(𝑆) are:

𝐷 𝑋, π‘Œ = 𝑋 βˆͺ π‘Œ βˆ’ 𝑋 ∩ π‘Œ = 𝑋 βˆ– π‘Œ + π‘Œ βˆ– 𝑋

𝐷′ 𝑋, π‘Œ = max 𝑋 βˆ– π‘Œ , π‘Œ βˆ– 𝑋

7

Multiset codes

β€’ Definition: A multiset code 𝐢 is a non-empty subset of 𝑀(𝑆). We say that it is a constant-cardinality code if 𝐢 βŠ† 𝑀(𝑆, 𝑛).

β€’ Natural metrics in 𝑀(𝑆) are:

𝐷 𝑋, π‘Œ = 𝑋 βˆͺ π‘Œ βˆ’ 𝑋 ∩ π‘Œ = 𝑋 βˆ– π‘Œ + π‘Œ βˆ– 𝑋

𝐷′ 𝑋, π‘Œ = max 𝑋 βˆ– π‘Œ , π‘Œ βˆ– 𝑋

β€’ Claim: A multiset code 𝐢 with minimum distance 𝐷min is capable of correcting any pattern of 𝑠 insertions, 𝜌 deletions, and 𝑑 substitutions (errors), as long as 2 𝑠 + 𝜌 + 2𝑑 < 𝐷min.

7

Multiset codes as integer codes

9

Multiset codes as integer codes

β€’ Claim: Multiset codes are equivalent to integer codes under β„“1 distance

9

Multiset codes as integer codes

β€’ Claim: Multiset codes are equivalent to integer codes under β„“1 distance

β€’ Every multiset over 𝑆 can be described by its multiplicity function

9

Multiset codes as integer codes

β€’ Claim: Multiset codes are equivalent to integer codes under β„“1 distance

β€’ Every multiset over 𝑆 can be described by its multiplicity function

– Example: Let 𝑆 = *π‘Ž, 𝑏+, and observe the multiset 𝑋 = *π‘Ž, π‘Ž, π‘Ž, 𝑏, 𝑏+. We can simply describe it as (3, 2), i.e., 3 π‘Žβ€™s and 2 𝑏’s.

9

Multiset codes as integer codes

β€’ Claim: Multiset codes are equivalent to integer codes under β„“1 distance

β€’ Every multiset over 𝑆 can be described by its multiplicity function

– Example: Let 𝑆 = *π‘Ž, 𝑏+, and observe the multiset 𝑋 = *π‘Ž, π‘Ž, π‘Ž, 𝑏, 𝑏+. We can simply describe it as (3, 2), i.e., 3 π‘Žβ€™s and 2 𝑏’s.

– Example: Let 𝑆 = *π‘Ž, 𝑏, 𝑐+, and observe the multiset 𝑋 = *𝑏, 𝑏, 𝑐, 𝑐+. We can simply describe it as (0, 2, 2), i.e., 0 π‘Žβ€™s, 2 𝑏’s, and 2 𝑐’s.

9

Multiset codes as integer codes

β€’ If 𝑆 = *0, 1,… , π‘ž βˆ’ 1+, then every multiset 𝑋 over 𝑆 can be

described as a π‘ž-tuple 𝒙 = π‘₯0, … , π‘₯π‘žβˆ’1 , π‘₯i ∈ β„•

10

Multiset codes as integer codes

β€’ If 𝑆 = *0, 1,… , π‘ž βˆ’ 1+, then every multiset 𝑋 over 𝑆 can be

described as a π‘ž-tuple 𝒙 = π‘₯0, … , π‘₯π‘žβˆ’1 , π‘₯i ∈ β„•

– π‘₯𝑖’s are non-negative integers representing numbers of occurrences of the symbols from 𝑆 in 𝑋

10

Multiset codes as integer codes

β€’ If 𝑆 = *0, 1,… , π‘ž βˆ’ 1+, then every multiset 𝑋 over 𝑆 can be

described as a π‘ž-tuple 𝒙 = π‘₯0, … , π‘₯π‘žβˆ’1 , π‘₯i ∈ β„•

– π‘₯𝑖’s are non-negative integers representing numbers of occurrences of the symbols from 𝑆 in 𝑋

– The set of all multisets over 𝑆 is equivalent to β„•π‘ž

10

Multiset codes as integer codes

β€’ If 𝑆 = *0, 1,… , π‘ž βˆ’ 1+, then every multiset 𝑋 over 𝑆 can be

described as a π‘ž-tuple 𝒙 = π‘₯0, … , π‘₯π‘žβˆ’1 , π‘₯i ∈ β„•

– π‘₯𝑖’s are non-negative integers representing numbers of occurrences of the symbols from 𝑆 in 𝑋

– The set of all multisets over 𝑆 is equivalent to β„•π‘ž

β€’ We have:

– 𝑋 βˆͺ π‘Œ ↔ max 𝒙, π’š (componentwise)

– 𝑋 ∩ π‘Œ ↔ min 𝒙, π’š (componentwise)

– 𝑋 ↔ π‘₯𝑖𝑖

10

Multiset codes as integer codes

β€’ Also, the distance between multisets 𝑋 and π‘Œ reduces to the β„“1 (Manhattan) distance between their multiplicity functions 𝒙, π’š ∈ β„•π‘ž

11

Multiset codes as integer codes

β€’ Also, the distance between multisets 𝑋 and π‘Œ reduces to the β„“1 (Manhattan) distance between their multiplicity functions 𝒙, π’š ∈ β„•π‘ž

𝐷 𝑋, π‘Œ = 𝒙 βˆ’ π’š 1 = π‘₯𝑖 βˆ’ 𝑦𝑖

π‘žβˆ’1

𝑖=0

11

Multiset codes as integer codes

β€’ Also, the distance between multisets 𝑋 and π‘Œ reduces to the β„“1 (Manhattan) distance between their multiplicity functions 𝒙, π’š ∈ β„•π‘ž

𝐷 𝑋, π‘Œ = 𝒙 βˆ’ π’š 1 = π‘₯𝑖 βˆ’ 𝑦𝑖

π‘žβˆ’1

𝑖=0

β€’ Therefore, multiset codes are equivalent to codes in β„•π‘ž under the β„“1 metric

11

Multiset codes as integer codes

β€’ Also, the distance between multisets 𝑋 and π‘Œ reduces to the β„“1 (Manhattan) distance between their multiplicity functions 𝒙, π’š ∈ β„•π‘ž

𝐷 𝑋, π‘Œ = 𝒙 βˆ’ π’š 1 = π‘₯𝑖 βˆ’ 𝑦𝑖

π‘žβˆ’1

𝑖=0

β€’ Therefore, multiset codes are equivalent to codes in β„•π‘ž under the β„“1 metric

11

β€’ Constant-cardinality codes are equivalent to codes in the β€œdiscrete simplex”

Ξ”π‘›π‘žβˆ’1= π‘₯0, … , π‘₯π‘žβˆ’1 ∢ π‘₯𝑖 ∈ β„•, π‘₯𝑖

𝑖= 𝑛

Special case – Subset codes

12

Special case – Subset codes

β€’ If we restrict to sets, we get subset codes, i.e., codes in the power set of 𝑆

𝑃 𝑆 = 𝑋 ∢ 𝑋 βŠ† 𝑆

12

Special case – Subset codes

β€’ If we restrict to sets, we get subset codes, i.e., codes in the power set of 𝑆

𝑃 𝑆 = 𝑋 ∢ 𝑋 βŠ† 𝑆

β€’ These codes are equivalent to binary codes in the Hamming space, whereas constant-cardinality codes are equivalent to constant-weight binary codes (codes in the Johnson space)

12

Special case – Subset codes

β€’ If we restrict to sets, we get subset codes, i.e., codes in the power set of 𝑆

𝑃 𝑆 = 𝑋 ∢ 𝑋 βŠ† 𝑆

β€’ These codes are equivalent to binary codes in the Hamming space, whereas constant-cardinality codes are equivalent to constant-weight binary codes (codes in the Johnson space)

β€’ Remark: The length and minimum distance of subset codes are bounded by 𝑆

12

Special case – Subset codes

β€’ If we restrict to sets, we get subset codes, i.e., codes in the power set of 𝑆

𝑃 𝑆 = 𝑋 ∢ 𝑋 βŠ† 𝑆

β€’ These codes are equivalent to binary codes in the Hamming space, whereas constant-cardinality codes are equivalent to constant-weight binary codes (codes in the Johnson space)

β€’ Remark: The length and minimum distance of subset codes are bounded by 𝑆

– the same β€œproblem” appears with subspace codes

12

Special case – Subset codes

β€’ If we restrict to sets, we get subset codes, i.e., codes in the power set of 𝑆

𝑃 𝑆 = 𝑋 ∢ 𝑋 βŠ† 𝑆

β€’ These codes are equivalent to binary codes in the Hamming space, whereas constant-cardinality codes are equivalent to constant-weight binary codes (codes in the Johnson space)

β€’ Remark: The length and minimum distance of subset codes are bounded by 𝑆

– the same β€œproblem” appears with subspace codes

– Multiset codes do not have this restriction; 𝑀(𝑆) is infinite

12

Perfect multiset codes

13

Perfect multiset codes

β€’ Let π‘ˆ, 𝑑 be a metric space with an integer-valued metric 𝑑. A code 𝐢 βŠ† π‘ˆ is said to be 𝑒-perfect, 𝑒 ∈ β„•, if

13

Perfect multiset codes

β€’ Let π‘ˆ, 𝑑 be a metric space with an integer-valued metric 𝑑. A code 𝐢 βŠ† π‘ˆ is said to be 𝑒-perfect, 𝑒 ∈ β„•, if

𝐡 𝒙, 𝑒 ∩ 𝐡 π’š, 𝑒 = βˆ…, 𝒙, π’š ∈ 𝐢, 𝒙 β‰  π’š

β€’ and

13

Perfect multiset codes

β€’ Let π‘ˆ, 𝑑 be a metric space with an integer-valued metric 𝑑. A code 𝐢 βŠ† π‘ˆ is said to be 𝑒-perfect, 𝑒 ∈ β„•, if

𝐡 𝒙, 𝑒 ∩ 𝐡 π’š, 𝑒 = βˆ…, 𝒙, π’š ∈ 𝐢, 𝒙 β‰  π’š

β€’ and

𝐡 𝒙, 𝑒

π’™βˆˆπΆ

= π‘ˆ

13

Perfect multiset codes

β€’ Let π‘ˆ, 𝑑 be a metric space with an integer-valued metric 𝑑. A code 𝐢 βŠ† π‘ˆ is said to be 𝑒-perfect, 𝑒 ∈ β„•, if

𝐡 𝒙, 𝑒 ∩ 𝐡 π’š, 𝑒 = βˆ…, 𝒙, π’š ∈ 𝐢, 𝒙 β‰  π’š

β€’ and

𝐡 𝒙, 𝑒

π’™βˆˆπΆ

= π‘ˆ

β€’ where 𝐡 𝒙, 𝑒 = π’˜ ∢ 𝑑 𝒙,π’˜ ≀ 𝑒 .

13

Perfect multiset codes

β€’ Let π‘ˆ, 𝑑 be a metric space with an integer-valued metric 𝑑. A code 𝐢 βŠ† π‘ˆ is said to be 𝑒-perfect, 𝑒 ∈ β„•, if

𝐡 𝒙, 𝑒 ∩ 𝐡 π’š, 𝑒 = βˆ…, 𝒙, π’š ∈ 𝐢, 𝒙 β‰  π’š

β€’ and

𝐡 𝒙, 𝑒

π’™βˆˆπΆ

= π‘ˆ

β€’ where 𝐡 𝒙, 𝑒 = π’˜ ∢ 𝑑 𝒙,π’˜ ≀ 𝑒 .

β€’ Perfect code is nontrivial if 𝐢 β‰₯ 2 and 𝑒 β‰₯ 1.

13

Perfect multiset codes

β€’ In the following, we observe codes in Ξ”π‘›π‘žβˆ’1

under the metric

𝑑′ 𝒙, π’š =1

2 π‘₯𝑖 βˆ’ 𝑦𝑖

π‘žβˆ’1

𝑖=0

– 𝒙 βˆ’ π’š 1 is even for 𝒙, π’š ∈ Ξ”π‘›π‘žβˆ’1

– This is equivalent to taking the β€œinjection” distance 𝐷′

14

Perfect multiset codes

β€’ Theorem:

15

Perfect multiset codes

β€’ Theorem:

– Nontrivial 𝑒-perfect multiset code of length 𝑛 over a binary

alphabet exists for any 𝑛 β‰₯ 2𝑒 + 1. Such a code has 𝑛+1

2𝑒+1

codewords.

15

Perfect multiset codes

β€’ Theorem:

– Nontrivial 𝑒-perfect multiset code of length 𝑛 over a binary

alphabet exists for any 𝑛 β‰₯ 2𝑒 + 1. Such a code has 𝑛+1

2𝑒+1

codewords.

– Nontrivial 𝑒-perfect multiset code of length 𝑛 over a ternary alphabet exists if and only if 𝑛 = 3𝑒 + 1. Furthermore, there are exactly two 𝑒-perfect multiset codes of length 3𝑒 + 1, each having three codewords.

15

Perfect multiset codes

β€’ Theorem:

– Nontrivial 𝑒-perfect multiset code of length 𝑛 over a binary

alphabet exists for any 𝑛 β‰₯ 2𝑒 + 1. Such a code has 𝑛+1

2𝑒+1

codewords.

– Nontrivial 𝑒-perfect multiset code of length 𝑛 over a ternary alphabet exists if and only if 𝑛 = 3𝑒 + 1. Furthermore, there are exactly two 𝑒-perfect multiset codes of length 3𝑒 + 1, each having three codewords.

– Nontrivial 𝑒-perfect multiset codes over larger alphabets do not exist, for any 𝑒 and 𝑛.

15

Perfect multiset codes – Binary alphabet

16

Perfect multiset codes – Binary alphabet

β€’ The space

Δ𝑛1 = 𝑛 βˆ’ 𝑑, 𝑑 ∢ 𝑑 = 0,… , 𝑛

β€’ can be represented as a graph with Δ𝑛1 = 𝑛 + 1 vertices, the β€œleftmost” vertex being (𝑛, 0), and the β€œrightmost” (0, 𝑛).

16

Perfect multiset codes – Binary alphabet

β€’ The space

Δ𝑛1 = 𝑛 βˆ’ 𝑑, 𝑑 ∢ 𝑑 = 0,… , 𝑛

β€’ can be represented as a graph with Δ𝑛1 = 𝑛 + 1 vertices, the β€œleftmost” vertex being (𝑛, 0), and the β€œrightmost” (0, 𝑛).

β€’ Figure: 1-perfect code in Ξ”81 (𝑒 = 1, 𝑛 = 8)

16

Perfect multiset codes – Binary alphabet

β€’ Given any 𝑛 = π‘˜ 2𝑒 + 1 + π‘Ÿ , with π‘˜ β‰₯ 1, 0 ≀ π‘Ÿ < 2𝑒 + 1, 𝑒-perfect code can be constructed as follows

𝐢 = 𝑛 βˆ’π‘Ÿ

2βˆ’ 2𝑒 + 1 𝑖 ,

π‘Ÿ

2+ 2𝑒 + 1 𝑖 ∢ 𝑖 = 0,… , π‘˜

β€’ This code has π‘˜ + 1 =𝑛+1

2𝑒+1 codewords.

17

Perfect multiset codes – Binary alphabet

β€’ Given any 𝑛 = π‘˜ 2𝑒 + 1 + π‘Ÿ , with π‘˜ β‰₯ 1, 0 ≀ π‘Ÿ < 2𝑒 + 1, 𝑒-perfect code can be constructed as follows

𝐢 = 𝑛 βˆ’π‘Ÿ

2βˆ’ 2𝑒 + 1 𝑖 ,

π‘Ÿ

2+ 2𝑒 + 1 𝑖 ∢ 𝑖 = 0,… , π‘˜

β€’ This code has π‘˜ + 1 =𝑛+1

2𝑒+1 codewords.

β€’ Stronger statement: There are 𝑀 = min π‘Ÿ + 1 , 2𝑒 + 1 βˆ’ π‘Ÿ

perfect codes in Δ𝑛1 , and they can be enumerated.

17

Perfect multiset codes – Ternary alphabet

19

Perfect multiset codes – Ternary alphabet

β€’ The space

Δ𝑛2 = 𝑛 βˆ’ 𝑑1 βˆ’ 𝑑2, 𝑑1, 𝑑2 ∢ 𝑑1, 𝑑2 β‰₯ 0, 𝑑1 + 𝑑2 ≀ 𝑛

β€’ can be represented as a triangular grid graph

19

Perfect multiset codes – Ternary alphabet

β€’ The space

Δ𝑛2 = 𝑛 βˆ’ 𝑑1 βˆ’ 𝑑2, 𝑑1, 𝑑2 ∢ 𝑑1, 𝑑2 β‰₯ 0, 𝑑1 + 𝑑2 ≀ 𝑛

β€’ can be represented as a triangular grid graph

19

Perfect multiset codes – Ternary alphabet

β€’ There are exactly two e-perfect codes in Ξ”3𝑒+12 :

𝐢1 = 2𝑒 + 1, 𝑒, 0 , 0, 2𝑒 + 1, 𝑒 , 𝑒, 0, 2𝑒 + 1

𝐢2 = 2𝑒 + 1, 0, 𝑒 , 𝑒, 2𝑒 + 1, 0 , 0, 𝑒, 2𝑒 + 1

20

Perfect multiset codes – Ternary alphabet

β€’ There are exactly two e-perfect codes in Ξ”3𝑒+12 :

𝐢1 = 2𝑒 + 1, 𝑒, 0 , 0, 2𝑒 + 1, 𝑒 , 𝑒, 0, 2𝑒 + 1

𝐢2 = 2𝑒 + 1, 0, 𝑒 , 𝑒, 2𝑒 + 1, 0 , 0, 𝑒, 2𝑒 + 1

20

Perfect multiset codes – Ternary alphabet

β€’ There are exactly two e-perfect codes in Ξ”3𝑒+12 :

𝐢1 = 2𝑒 + 1, 𝑒, 0 , 0, 2𝑒 + 1, 𝑒 , 𝑒, 0, 2𝑒 + 1

𝐢2 = 2𝑒 + 1, 0, 𝑒 , 𝑒, 2𝑒 + 1, 0 , 0, 𝑒, 2𝑒 + 1

β€’ There are no e-perfect codes in Δ𝑛2 for 𝑛 β‰  3𝑒 + 1.

20

Perfect multiset codes – Ternary alphabet

β€’ Proof: The proof consists of the following observations

21

Perfect multiset codes – Ternary alphabet

β€’ Proof: The proof consists of the following observations

– Vertex 𝑛, 0, 0 has to be covered by a ball around some codeword, and hence there must exist a codeword of the form 𝑛 βˆ’ 𝑑, 𝑑1, 𝑑2 , with 𝑑1 + 𝑑2 = 𝑑 ≀ 𝑒

69

Perfect multiset codes – Ternary alphabet

β€’ Proof: The proof consists of the following observations

– Points of this form with 0 ≀ 𝑑 < 𝑒 or 0 < 𝑑1, 𝑑2 < 𝑑 cannot be codewords of an 𝑒-perfect code in Δ𝑛

2

22

Perfect multiset codes – Ternary alphabet

β€’ Proof: The proof consists of the following observations.

– The only remaining possibilities are 𝑛 βˆ’ 𝑒, 𝑒, 0 and 𝑛 βˆ’ 𝑒, 0, 𝑒

23

Perfect multiset codes – Ternary alphabet

β€’ Proof: The proof consists of the following observations.

– The only remaining possibilities are 𝑛 βˆ’ 𝑒, 𝑒, 0 and 𝑛 βˆ’ 𝑒, 0, 𝑒

– When 𝑛 = 3𝑒 + 1 these two possibilities yield perfect codes 𝐢1 and 𝐢2

23

Perfect multiset codes – Ternary alphabet

β€’ Proof: The proof consists of the following observations.

– The only remaining possibilities are 𝑛 βˆ’ 𝑒, 𝑒, 0 and 𝑛 βˆ’ 𝑒, 0, 𝑒

– When 𝑛 = 3𝑒 + 1 these two possibilities yield perfect codes 𝐢1 and 𝐢2

– When 𝑛 < 3𝑒 + 1 it is impossible to cover all points, and hence to build a perfect code

23

Perfect multiset codes – Ternary alphabet

β€’ Proof: The proof consists of the following observations.

– There are no perfect codes for 𝑛 > 3𝑒 + 1

24

Perfect multiset codes – Larger alphabets

25

Perfect multiset codes – Larger alphabets

β€’ There are no nontrivial perfect codes in Ξ”π‘›π‘žβˆ’1

for π‘ž > 3.

25

Perfect multiset codes – Larger alphabets

β€’ There are no nontrivial perfect codes in Ξ”π‘›π‘žβˆ’1

for π‘ž > 3.

β€’ The proof idea is the same: We try to build the perfect code and see that we can’t

– There is always a point that cannot be covered

25

Perfect codes in the Johnson space

26

Perfect codes in the Johnson space

β€’ Johnson space 𝐽(π‘ž, 𝑛) is the space of all binary sequences of length π‘ž and Hamming weight 𝑛.

26

Perfect codes in the Johnson space

β€’ Johnson space 𝐽(π‘ž, 𝑛) is the space of all binary sequences of length π‘ž and Hamming weight 𝑛. Clearly

𝐽 π‘ž, 𝑛 βŠ† Ξ”π‘›π‘žβˆ’1

26

Perfect codes in the Johnson space

β€’ Johnson space 𝐽(π‘ž, 𝑛) is the space of all binary sequences of length π‘ž and Hamming weight 𝑛. Clearly

𝐽 π‘ž, 𝑛 βŠ† Ξ”π‘›π‘žβˆ’1

β€’ Conjecture (Delsarte): There are no nontrivial perfect codes in 𝐽(π‘ž, 𝑛).

26

Perfect codes in the Johnson space

β€’ Johnson space 𝐽(π‘ž, 𝑛) is the space of all binary sequences of length π‘ž and Hamming weight 𝑛. Clearly

𝐽 π‘ž, 𝑛 βŠ† Ξ”π‘›π‘žβˆ’1

β€’ Conjecture (Delsarte): There are no nontrivial perfect codes in 𝐽(π‘ž, 𝑛).

β€’ In our terminology: There are no nontrivial subset codes.

26

Perfect codes in the Johnson space

β€’ Johnson space 𝐽(π‘ž, 𝑛) is the space of all binary sequences of length π‘ž and Hamming weight 𝑛. Clearly

𝐽 π‘ž, 𝑛 βŠ† Ξ”π‘›π‘žβˆ’1

β€’ Conjecture (Delsarte): There are no nontrivial perfect codes in 𝐽(π‘ž, 𝑛).

β€’ In our terminology: There are no nontrivial subset codes.

β€’ Can we use the same method to attack this problem?

26

Perfect codes in the Johnson space

β€’ Observe 𝐽(9,5), and let 𝑒 = 1

27

Perfect codes in the Johnson space

β€’ Observe 𝐽(9,5), and let 𝑒 = 1

β€’ W.l.o.g. we can take the first codeword to be

𝒙 = 1 1 1 1 1 0 0 0 0

27

Perfect codes in the Johnson space

β€’ Observe 𝐽(9,5), and let 𝑒 = 1

β€’ W.l.o.g. we can take the first codeword to be

𝒙 = 1 1 1 1 1 0 0 0 0

β€’ Observe the sequence

𝒗 = 1 1 1 0 0 1 1 0 0

β€’ with 𝑑 𝒙, 𝒗 = 2.

27

Perfect codes in the Johnson space

β€’ Observe 𝐽(9,5), and let 𝑒 = 1

β€’ W.l.o.g. we can take the first codeword to be

𝒙 = 1 1 1 1 1 0 0 0 0

β€’ Observe the sequence

𝒗 = 1 1 1 0 0 1 1 0 0

β€’ with 𝑑 𝒙, 𝒗 = 2.

27

β€’ W.l.o.g. we can assume that the codeword π’š covering 𝒗 is

π’š = 1 1 0 0 0 1 1 1 0

Perfect codes in the Johnson space

β€’ Now observe

π’˜ = 1 1 1 0 0 0 0 1 1

28

Perfect codes in the Johnson space

β€’ Now observe

π’˜ = 1 1 1 0 0 0 0 1 1

β€’ We have 𝑑 𝒙,π’˜ = 𝑑 π’š,π’˜ = 2, so to cover π’˜ we need another codeword 𝒛.

28

Perfect codes in the Johnson space

β€’ Now observe

π’˜ = 1 1 1 0 0 0 0 1 1

β€’ We have 𝑑 𝒙,π’˜ = 𝑑 π’š,π’˜ = 2, so to cover π’˜ we need another codeword 𝒛. But such a codeword (with 𝑑 𝒛,π’˜ = 1, 𝑑 𝒙, 𝒛 = 𝑑 π’š, 𝒛 = 3) does not exist.

28

Perfect codes in the Johnson space

β€’ Now observe

π’˜ = 1 1 1 0 0 0 0 1 1

β€’ We have 𝑑 𝒙,π’˜ = 𝑑 π’š,π’˜ = 2, so to cover π’˜ we need another codeword 𝒛. But such a codeword (with 𝑑 𝒛,π’˜ = 1, 𝑑 𝒙, 𝒛 = 𝑑 π’š, 𝒛 = 3) does not exist.

β€’ Therefore, 1-perfect code in 𝐽(9,5) does not exist.

28

Perfect codes in the Johnson space

β€’ Now observe

π’˜ = 1 1 1 0 0 0 0 1 1

β€’ We have 𝑑 𝒙,π’˜ = 𝑑 π’š,π’˜ = 2, so to cover π’˜ we need another codeword 𝒛. But such a codeword (with 𝑑 𝒛,π’˜ = 1, 𝑑 𝒙, 𝒛 = 𝑑 π’š, 𝒛 = 3) does not exist.

β€’ Therefore, 1-perfect code in 𝐽(9,5) does not exist.

β€’ More generaly, 𝑒-perfect in 𝐽(π‘ž, 𝑛) cannot exist unless π‘ž βˆ’ 𝑛 ≑ 𝑛 ≑ 𝑒 (π‘šπ‘œπ‘‘ 𝑒 + 1) (Etzion)

28

Further…

29

Further…

β€’ Constructions and decoding algorithms

29

Further…

β€’ Constructions and decoding algorithms

β€’ Bounds on multiset codes

29

Further…

β€’ Constructions and decoding algorithms

β€’ Bounds on multiset codes

β€’ Multiset codes and multiset designs

29

Further…

β€’ Constructions and decoding algorithms

β€’ Bounds on multiset codes

β€’ Multiset codes and multiset designs

β€’ Do multiset codes have analogues in the vector space setting?

29

Further…

β€’ Constructions and decoding algorithms

β€’ Bounds on multiset codes

β€’ Multiset codes and multiset designs

β€’ Do multiset codes have analogues in the vector space setting?

– Can we define codes of arbitrary length and minimum distance for the operator channel?

29