old and new connections between matroids and codes: a ...€¦ · old and new connections between...

59
Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George Washington University These slides are available at blogs.gwu.edu/jbonin

Upload: others

Post on 05-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Old And New ConnectionsBetween Matroids And Codes:

A Short Introduction To Two Fields

Joseph E. Bonin

The George Washington University

These slides are available at

blogs.gwu.edu/jbonin

Page 2: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Goal

Goal: to help you see that,like vector spaces, groups, fields, graphs, metric spaces,manifolds, topological spaces, Hilbert spaces, . . .,

matroids are fundamental mathematical structures that have a richand fascinating theory, and arise in many areas.

Matroids arise naturally in:

I coding theory,

I optimization (greedy algorithm, integer programming, . . .),

I graph theory (graph coloring, flows, . . .),

I arrangements of hyperplanes (number of regions, . . .),

I electrical networks,

I . . .

We will focus on connections with coding theory.

Page 3: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

The Problem That Coding Theory Addresses

Error-detecting and correcting codes are widely used:

I ISBN codes, bar codes, and QR codes,

I computer and cloud storage,

I compact discs and DVDs,

I transmission of data to and from space probes,

I . . .

senderstorage

recipientreadertransmit message

retrieve data

.

Codes add redundancy so that errors can be detected, and ideallyalso corrected.

Page 4: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

The Problem That Coding Theory Addresses

Error-detecting and correcting codes are widely used:

I ISBN codes, bar codes, and QR codes,

I computer and cloud storage,

I compact discs and DVDs,

I transmission of data to and from space probes,

I . . .

senderstorage

recipientreadertransmit message

retrieve data

NOISE

.

Codes add redundancy so that errors can be detected, and ideallyalso corrected.

Page 5: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A First Example: ISBN Codes

ISBN-10 (the older ISBN code) assigns a ten-digit number,x1x2 . . . x10, to each book.

The first nine digits identify the publisher and book;x10 is the unique solution, in the field Z11, of the equation

10∑i=1

xi · i ≡ 0 (mod 11).

If x10 is 10, it is written as X.

Page 6: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A First Example: ISBN Codes

10∑i=1

xi · i ≡ 0 (mod 11)

For instance, the ISBN of James Oxley’s Matroid Theory(first edition) is 0-19-853563-5, and

0 · 1 + 1 · 2 + 9 · 3 + 8 · 4 + 5 · 5 + 3 · 6 + 5 · 7 + 6 · 8 + 3 · 9 + 5 · 10

is 264, which is 11 · 24.

ISBN-10 detects any (i) single-digit error or (ii) transposition.

Page 7: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A First Example: ISBN Codes

10∑i=1

xi · i ≡ 0 (mod 11)

For instance, the ISBN of James Oxley’s Matroid Theory(first edition) is 0-19-853563-5, and

0 · 1 + 1 · 2 + 9 · 3 + 8 · 4 + 5 · 5 + 3 · 6 + 5 · 7 + 6 · 8 + 3 · 9 + 5 · 10

is 264, which is 11 · 24.

ISBN-10 detects any (i) single-digit error or (ii) transposition.

Page 8: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A First Example: ISBN Codes

Why this code detects transpositions:

Say in x1x2 . . . x10 we transpose xj and xk , giving a1a2 . . . a10. Then

10∑i=1

xi · i −10∑i=1

ai · i = xj(j − k) + xk(k − j)

= (xj − xk)(j − k),

which is not divisible by 11, so the second sum isn’t divisible by 11.

The newer, longer ISBN-13 works modulo 10, and misses some transpositions.

Page 9: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

What Linear Codes Are

Most “classical” codes are subspaces of finite vector spaces.

The reason: linear algebra simplifies encoding, decoding, andanalyzing codes.

A q-linear code of length n is a subspace C of the vector space Fnq

of n-tuples over the q-element field Fq.

Many commonly-used codes are binary, that is, q = 2.

Page 10: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A Simple Error-Correcting Code: A Small Hamming Code

Consider the matrix H whose columns are all nonzero vectors in F32.

H =

1 0 0 1 1 0 10 1 0 1 0 1 10 0 1 0 1 1 1

100 110 010

101

001

111011

The subspace of F72 that is orthogonal to the row space of H is the

Hamming code Ham(3, 2). It is the row space of the matrix G .

1 1 0 1 0 0 0 0 0 1 0 1 1 11 0 1 0 1 0 0 0 1 0 1 0 1 10 1 1 0 0 1 0 1 0 0 1 1 0 10 0 0 1 1 1 0 1 1 1 0 0 0 11 0 0 0 0 1 1 0 1 1 1 1 0 00 1 0 0 1 0 1 1 0 1 1 0 1 00 0 1 1 0 0 1 1 1 0 0 1 1 00 0 0 0 0 0 0 1 1 1 1 1 1 1

G =

1 1 0 1 0 0 01 0 1 0 1 0 00 1 1 0 0 1 01 1 1 0 0 0 1

Page 11: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Hamming Distance And The Weight Of A Codeword

Claim: any two vectors in Ham(3, 2) differ in at least three places.Thus, if just one error occurs, the received word is “closer” to thesent word than to any other codeword.

Having Ham(3, 2) be a subspace simplifies checking the claim:just check how many nonzero entries each nonzero codeword has.

For vectors u and v in Fnq, their Hamming distance, d(u, v), is the

number of entries in which u and v differ.

The distance, d(C ), of a code C is

d(C ) = min{d(u, v) : u, v ∈ C , u 6= v}.

The weight wt(u) of a vector u is its number of nonzero entries.

Thus, d(u, v) = wt(u − v), so d(C ) = min{wt(u) : u ∈ C − {0}}.

Page 12: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Hamming Distance And The Weight Of A Codeword

Claim: any two vectors in Ham(3, 2) differ in at least three places.Thus, if just one error occurs, the received word is “closer” to thesent word than to any other codeword.

Having Ham(3, 2) be a subspace simplifies checking the claim:just check how many nonzero entries each nonzero codeword has.

For vectors u and v in Fnq, their Hamming distance, d(u, v), is the

number of entries in which u and v differ.

The distance, d(C ), of a code C is

d(C ) = min{d(u, v) : u, v ∈ C , u 6= v}.

The weight wt(u) of a vector u is its number of nonzero entries.

Thus, d(u, v) = wt(u − v), so d(C ) = min{wt(u) : u ∈ C − {0}}.

Page 13: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Hamming Distance And The Weight Of A Codeword

Claim: any two vectors in Ham(3, 2) differ in at least three places.Thus, if just one error occurs, the received word is “closer” to thesent word than to any other codeword.

Having Ham(3, 2) be a subspace simplifies checking the claim:just check how many nonzero entries each nonzero codeword has.

For vectors u and v in Fnq, their Hamming distance, d(u, v), is the

number of entries in which u and v differ.

The distance, d(C ), of a code C is

d(C ) = min{d(u, v) : u, v ∈ C , u 6= v}.

The weight wt(u) of a vector u is its number of nonzero entries.

Thus, d(u, v) = wt(u − v), so d(C ) = min{wt(u) : u ∈ C − {0}}.

Page 14: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Minimum Distance Decoding

In minimum distance decoding or maximum likelihood decoding, ifwe receive v , we assume that the codeword sent is one, u, forwhich d(u, v) is minimum.

With a code C ,• we can detect errors if at most d(C )− 1 occur, and• we can correct errors if at most (d(C )− 1)/2 occur.

Thus, Ham(3, 2) can detect up to two errors and correct one error.

Hamming bound, or sphere-packing bound

For a code C in Fnq of distance d ,

|C | ·b(d−1)/2c∑

i=0

(n

i

)(q − 1)i ≤ qn.

Page 15: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Minimum Distance Decoding

In minimum distance decoding or maximum likelihood decoding, ifwe receive v , we assume that the codeword sent is one, u, forwhich d(u, v) is minimum.

With a code C ,• we can detect errors if at most d(C )− 1 occur, and• we can correct errors if at most (d(C )− 1)/2 occur.

Thus, Ham(3, 2) can detect up to two errors and correct one error.

Hamming bound, or sphere-packing bound

For a code C in Fnq of distance d ,

|C | ·b(d−1)/2c∑

i=0

(n

i

)(q − 1)i ≤ qn.

Page 16: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A Glimpse Of Stronger Codes

A Reed-Muller code was used on Mariner 9 (1971-1972) totransmit pictures of Mars.

Each of its 64 codewords uses 32 bits to send six bits of data.

Any two codewords differ in at least 16 entries, so errors can becorrected if no more than seven occur.

Reed-Solomon codes, which can handle burst errors (long runs oferrors in consecutive bits), are used in many applications, such asCDs, QR codes, and the Voyager missions.

Page 17: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

How Good Can Codes Get?

The Fundamental Problem of Linear Coding Theory.

For a prime power q and positive integers n and d , what is thelargest dimension among codes C in Fn

q with d(C ) ≥ d?

Let Ed−1 be the set of vectors in Fnq that such codes must avoid:

Ed−1 = {v ∈ Fnq : 1 ≤ wt(v) ≤ d − 1}.

We want the largest dimension of a subspace C with C ∩Ed−1 = ∅.

Page 18: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

How Good Can Codes Get?

The Fundamental Problem of Linear Coding Theory.

For a prime power q and positive integers n and d , what is thelargest dimension among codes C in Fn

q with d(C ) ≥ d?

Let Ed−1 be the set of vectors in Fnq that such codes must avoid:

Ed−1 = {v ∈ Fnq : 1 ≤ wt(v) ≤ d − 1}.

We want the largest dimension of a subspace C with C ∩Ed−1 = ∅.

Page 19: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Generalize The Problem And Recast It Using Linear Functionals

The Critical Problem

Given a set E of nonzero vectors in Fnq, what is the largest

dimension of a subspace C of Fnq with C ∩ E = ∅?

A linear functional on a vector space V over a field F is a lineartransformation λ : V → F.A hyperplane in an n-dimensional vector space is a subspace ofdimension n − 1.

The hyperplanes of afinite-dimensional vector spaceare exactly the kernels of itsnonzero linear functionals.

x1 = 0

x1 + x3 = 0

x1 + x2 + x3 = 0

100 110 010

101

001

111011

Page 20: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Generalize The Problem And Recast It Using Linear Functionals

The Critical Problem

Given a set E of nonzero vectors in Fnq, what is the largest

dimension of a subspace C of Fnq with C ∩ E = ∅?

A linear functional on a vector space V over a field F is a lineartransformation λ : V → F.A hyperplane in an n-dimensional vector space is a subspace ofdimension n − 1.

The hyperplanes of afinite-dimensional vector spaceare exactly the kernels of itsnonzero linear functionals.

x1 = 0

x1 + x3 = 0

x1 + x2 + x3 = 0

100 110 010

101

001

111011

Page 21: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Generalize The Problem And Recast It Using Linear Functionals

The Critical Problem

Given a set E of nonzero vectors in Fnq, what is the largest

dimension of a subspace C of Fnq with C ∩ E = ∅?

A linear functional on a vector space V over a field F is a lineartransformation λ : V → F.A hyperplane in an n-dimensional vector space is a subspace ofdimension n − 1.

The hyperplanes of afinite-dimensional vector spaceare exactly the kernels of itsnonzero linear functionals.

x1 = 0

x1 + x3 = 0

x1 + x2 + x3 = 0

100 110 010

101

001

111011

Page 22: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Recast The Problem Using Linear Functionals

Let V be an n-dimensional vector space.Each subspace of dimension n − k is anintersection of k hyperplanes of V .No fewer hyperplanes will do.

100 110 010

101

001

111011

For E ⊆ Fn − {0}, the greatest dimension of a subspace C of Fn

with C ∩ E = ∅ is n − k where k is the least integer for whichsome k-tuple (λ1, λ2, . . . , λk) of linear functionals on Fn satisfies

( k⋂i=1

ker(λi ))∩ E = ∅.

Such k-tuples (λ1, λ2, . . . , λk) avoid E .

Refine the problem: How many k-tuples avoid E?

Page 23: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Recast The Problem Using Linear Functionals

Let V be an n-dimensional vector space.Each subspace of dimension n − k is anintersection of k hyperplanes of V .No fewer hyperplanes will do.

100 110 010

101

001

111011

For E ⊆ Fn − {0}, the greatest dimension of a subspace C of Fn

with C ∩ E = ∅ is n − k where k is the least integer for whichsome k-tuple (λ1, λ2, . . . , λk) of linear functionals on Fn satisfies

( k⋂i=1

ker(λi ))∩ E = ∅.

Such k-tuples (λ1, λ2, . . . , λk) avoid E .

Refine the problem: How many k-tuples avoid E?

Page 24: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Examples Of Counting k-tuples Of Linear Functionals That Avoid E

ker(λ)

100 110 010

101

001

111011

Let λ(x1, x2, x3) = x1.

Let E consist of the points not in ker(λ).

The only 1-tuple avoiding E is (λ).

The 1 + 2 · 7 + 3 · 2 = 21 pairs that avoid E :

(i) (λ, λ) or (λ, λ1) or (λ1, λ) for any λ1 6= λ (including zero), or

(ii) (λ1, λ2) with λ 6∈ {λ1, λ2} and ker(λ1) ∩ ker(λ2) is one of{001}, {011}, or {010}.

For p(x) = x3 − 4x2 + 6x − 3, we have p(21) = 1 and p(22) = 21.The number of k-tuples avoiding E is p(2k).

Page 25: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Examples Of Counting k-tuples Of Linear Functionals That Avoid E

ker(λ)

100 110 010

101

001

111011

Let λ(x1, x2, x3) = x1.

Let E consist of the points not in ker(λ).

The only 1-tuple avoiding E is (λ).

The 1 + 2 · 7 + 3 · 2 = 21 pairs that avoid E :

(i) (λ, λ) or (λ, λ1) or (λ1, λ) for any λ1 6= λ (including zero), or

(ii) (λ1, λ2) with λ 6∈ {λ1, λ2} and ker(λ1) ∩ ker(λ2) is one of{001}, {011}, or {010}.

For p(x) = x3 − 4x2 + 6x − 3, we have p(21) = 1 and p(22) = 21.The number of k-tuples avoiding E is p(2k).

Page 26: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Examples Of Counting k-tuples Of Linear Functionals That Avoid E

ker(λ)

100 110 010

101

001

111011

Let λ(x1, x2, x3) = x1.

Let E consist of the points not in ker(λ).

The only 1-tuple avoiding E is (λ).

The 1 + 2 · 7 + 3 · 2 = 21 pairs that avoid E :

(i) (λ, λ) or (λ, λ1) or (λ1, λ) for any λ1 6= λ (including zero), or

(ii) (λ1, λ2) with λ 6∈ {λ1, λ2} and ker(λ1) ∩ ker(λ2) is one of{001}, {011}, or {010}.

For p(x) = x3 − 4x2 + 6x − 3, we have p(21) = 1 and p(22) = 21.The number of k-tuples avoiding E is p(2k).

Page 27: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Examples Of Counting k-tuples Of Linear Functionals That Avoid E

100 110 010

101

001

111011

Let E consist of all nonzero points except111 and 011.

No 1-tuple avoids E .

The 2 · 3 · 2 = 12 pairs that avoid E consist of two different linearfunctionals whose kernels intersect in either 111 or 011.

For p(x) = x3 − 5x2 + 8x − 4, we have p(21) = 0 and p(22) = 12.The number of k-tuples avoiding E is p(2k).

Page 28: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

The Critical Theorem

The Critical Theorem Crapo and Rota, 1970

Fix E ⊆ Fnq − {0}. The number Nk of k-tuples of linear functionals

on Fnq that avoid E is

(qk)n−dim(E) · χ(E ; qk)

where χ(E ; x) is the polynomial

χ(E ; x) =∑Y⊆E

(−1)|Y |xdim(E)−dim(Y ).

Here, dim(X ) is dim(span(X )).

A key point: χ(E ; x), and so the solution to the critical problem,depends only on the (generalized) dimension function, not on, forinstance, the coordinates of the elements in E

Page 29: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

The Critical Theorem

The Critical Theorem Crapo and Rota, 1970

Fix E ⊆ Fnq − {0}. The number Nk of k-tuples of linear functionals

on Fnq that avoid E is

(qk)n−dim(E) · χ(E ; qk)

where χ(E ; x) is the polynomial

χ(E ; x) =∑Y⊆E

(−1)|Y |xdim(E)−dim(Y ).

Here, dim(X ) is dim(span(X )).

A key point: χ(E ; x), and so the solution to the critical problem,depends only on the (generalized) dimension function, not on, forinstance, the coordinates of the elements in E

Page 30: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

The Critical Theorem

The Critical Theorem Crapo and Rota, 1970

Fix E ⊆ Fnq − {0}. The number Nk of k-tuples of linear functionals

on Fnq that avoid E is

(qk)n−dim(E) · χ(E ; qk)

where χ(E ; x) =∑Y⊆E

(−1)|Y |xdim(E)−dim(Y ).

|Y | 0 1 2 3 4 5

dim(Y ) = 0 11 52 10 23 8 5 1

Thus, p(x) = x3 − 5x2 + 8x − 4.

Page 31: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Matroids And Characteristic Polynomials

A matroid M is a pair (E , r) where E is a finite set andr : 2E → Z, the rank function of M, satisfies

I cardinality bound: 0 ≤ r(A) ≤ |A| for all A ⊆ E ,

I non-decreasing: r(A) ≤ r(B) for all A ⊆ B ⊆ E , and

I submodular: r(A ∪ B) + r(A ∩ B) ≤ r(A) + r(B) for allA,B ⊆ E .

Any set E of vectors in a vector space V gives a matroid withr(X ) = dim(span(X )) for X ⊆ E .

The characteristic polynomial of a matroid M on E is

χ(M; x) =∑Y⊆E

(−1)|Y |x r(E)−r(Y ).

Page 32: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Matroids And Characteristic Polynomials

A matroid M is a pair (E , r) where E is a finite set andr : 2E → Z, the rank function of M, satisfies

I cardinality bound: 0 ≤ r(A) ≤ |A| for all A ⊆ E ,

I non-decreasing: r(A) ≤ r(B) for all A ⊆ B ⊆ E , and

I submodular: r(A ∪ B) + r(A ∩ B) ≤ r(A) + r(B) for allA,B ⊆ E .

Any set E of vectors in a vector space V gives a matroid withr(X ) = dim(span(X )) for X ⊆ E .

The characteristic polynomial of a matroid M on E is

χ(M; x) =∑Y⊆E

(−1)|Y |x r(E)−r(Y ).

Page 33: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A Combinatorial Tool For The Proof Of The Critical Theorem: Inclusion-Exclusion

For two finite sets A and B, |A ∪ B| = |A|+ |B| − |A ∩ B|.

For three finite sets,

|A∪B∪C | = |A|+|B|+|C |−|A∩B|−|A∩C |−|B∩C |+|A∩B∩C |.

For n finite sets,

|A1 ∪ A2 ∪ · · · ∪ An| =∑

∅(T⊆{1,2,...,n}

(−1)|T |+1

∣∣∣∣∣⋂i∈T

Ai

∣∣∣∣∣.

Page 34: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Proof Of The Critical Problem (1 of 2)

A linear functional on a vector space over Fq has q possible imagesfor each basis vector, so there are qn linear functionals on Fn

q.

Thus, the number of k-tuples of linear functionals is qnk .

For each v ∈ E , let Av be the set of k-tuples (λ1, λ2, . . . , λk) oflinear functionals on Fn

q for which v ∈ ker(λi ) for all i ∈ {1, . . . , k}.

Thus,

Nk = qnk −∣∣∣⋃v∈E

Av

∣∣∣.

Page 35: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Proof Of The Critical Problem (1 of 2)

A linear functional on a vector space over Fq has q possible imagesfor each basis vector, so there are qn linear functionals on Fn

q.

Thus, the number of k-tuples of linear functionals is qnk .

For each v ∈ E , let Av be the set of k-tuples (λ1, λ2, . . . , λk) oflinear functionals on Fn

q for which v ∈ ker(λi ) for all i ∈ {1, . . . , k}.

Thus,

Nk = qnk −∣∣∣⋃v∈E

Av

∣∣∣.

Page 36: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Proof Of The Critical Problem (1 of 2)

A linear functional on a vector space over Fq has q possible imagesfor each basis vector, so there are qn linear functionals on Fn

q.

Thus, the number of k-tuples of linear functionals is qnk .

For each v ∈ E , let Av be the set of k-tuples (λ1, λ2, . . . , λk) oflinear functionals on Fn

q for which v ∈ ker(λi ) for all i ∈ {1, . . . , k}.

Thus,

Nk = qnk −∣∣∣⋃v∈E

Av

∣∣∣.

Page 37: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Proof Of The Critical Problem (2 of 2)

By inclusion-exclusion, Nk = qnk +∑

Y⊆E :Y 6=∅

(−1)|Y |∣∣∣ ⋂v∈Y

Av

∣∣∣.

Now (λ1, λ2, . . . , λk) is in⋂

v∈Y Av iff each λi is zero on span(Y ).We can freely choose the images for n − r(Y ) basis vectors, so∣∣∣ ⋂

v∈YAv

∣∣∣ = q(n−r(Y ))k .

Thus, Nk = qnk +∑

Y⊆E :Y 6=∅

(−1)|Y |q(n−r(Y ))k

= (qk)n−r(E)∑Y⊆E

(−1)|Y |q(r(E)−r(Y ))k

= (qk)n−r(M) · χ(M; qk). �

Page 38: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Proof Of The Critical Problem (2 of 2)

By inclusion-exclusion, Nk = qnk +∑

Y⊆E :Y 6=∅

(−1)|Y |∣∣∣ ⋂v∈Y

Av

∣∣∣.Now (λ1, λ2, . . . , λk) is in

⋂v∈Y Av iff each λi is zero on span(Y ).

We can freely choose the images for n − r(Y ) basis vectors, so∣∣∣ ⋂v∈Y

Av

∣∣∣ = q(n−r(Y ))k .

Thus, Nk = qnk +∑

Y⊆E :Y 6=∅

(−1)|Y |q(n−r(Y ))k

= (qk)n−r(E)∑Y⊆E

(−1)|Y |q(r(E)−r(Y ))k

= (qk)n−r(M) · χ(M; qk). �

Page 39: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Proof Of The Critical Problem (2 of 2)

By inclusion-exclusion, Nk = qnk +∑

Y⊆E :Y 6=∅

(−1)|Y |∣∣∣ ⋂v∈Y

Av

∣∣∣.Now (λ1, λ2, . . . , λk) is in

⋂v∈Y Av iff each λi is zero on span(Y ).

We can freely choose the images for n − r(Y ) basis vectors, so∣∣∣ ⋂v∈Y

Av

∣∣∣ = q(n−r(Y ))k .

Thus, Nk = qnk +∑

Y⊆E :Y 6=∅

(−1)|Y |q(n−r(Y ))k

= (qk)n−r(E)∑Y⊆E

(−1)|Y |q(r(E)−r(Y ))k

= (qk)n−r(M) · χ(M; qk). �

Page 40: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Characteristic Polynomials Arise In Many Problems

The characteristic polynomial is hard to compute, so this does notreally solve the fundamental problem of linear coding theory.

Rather, it puts the problem in a large family of important problemsfor which much theory has been developed.

Another member of the family: graph coloring.

Given a graph G = (V ,E ), take E and r(A) = |V | − ω(A) whereω(A) is the number of components of the subgraph (V ,A).

This is a matroid, and xω(G)χ(M; x) is the chromatic polynomialof G .

Page 41: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Characteristic Polynomials Arise In Many Problems

The characteristic polynomial is hard to compute, so this does notreally solve the fundamental problem of linear coding theory.

Rather, it puts the problem in a large family of important problemsfor which much theory has been developed.

Another member of the family: graph coloring.

Given a graph G = (V ,E ), take E and r(A) = |V | − ω(A) whereω(A) is the number of components of the subgraph (V ,A).

This is a matroid, and xω(G)χ(M; x) is the chromatic polynomialof G .

Page 42: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Characteristic Polynomials And Arrangements of Hyperplanes

A finite set of lines in R2 divides the plane into regions. How manyregions are there? How many regions are bounded?

Ask the same questions in Rn using hyperplanes.

This is the beginning of the field of arrangements of hyperplanes.

The characteristic polynomial of a matroid counts the regions andthe bounded regions.

Page 43: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

The Matroid Of A Code

1 1 0 1 0 0 01 0 1 0 1 0 00 1 1 0 0 1 01 1 1 0 0 0 1

A linear code C can be givenby a generator matrix, a matrixwhose row space is the code.

The matroid on the set of columns of a generator matrix (usuallyshortened to the indexing set E = {1, 2, . . . , n}) is the matroidM(C ) of the code.

Page 44: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Restriction: Toward Determining Distance Without Coordinates

For a matroid M = (E , r) and set X ⊆ E , the deletion M\X orrestriction M|(E − X ) is the matroid (E − X , r ′) wherer ′(Y ) = r(Y ) for Y ⊆ E − X .

c d e

b

a

gf

c e

b

a

gf

For a length-n code C and set X ⊆ E = {1, 2, . . . , n}, we get thepunctured code C\X or projection CE−X of C into E − X bydeleting the entries indexed by X in each codeword in C .

Page 45: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Determining Distance Without Coordinates

Note that |C | > |C\X | iff C has distinct codewords that differ onlyin positions that X indexes.

Thus, d(C ) = min{|X | : |C\X | < |C |}, so M(C ) gives d(C ).

The Tutte polynomial of a matroid M on E is

T (M; x , y) =∑A⊆E

(x − 1)r(E)−r(A)(y − 1)|A|−r(A).

From T (M(C ); x , y), we get, for instance, the weight enumerator

WC (x , y) =∑v∈C

xn−wt(v)ywt(v).

Page 46: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Determining Distance Without Coordinates

Note that |C | > |C\X | iff C has distinct codewords that differ onlyin positions that X indexes.

Thus, d(C ) = min{|X | : |C\X | < |C |}, so M(C ) gives d(C ).

The Tutte polynomial of a matroid M on E is

T (M; x , y) =∑A⊆E

(x − 1)r(E)−r(A)(y − 1)|A|−r(A).

From T (M(C ); x , y), we get, for instance, the weight enumerator

WC (x , y) =∑v∈C

xn−wt(v)ywt(v).

Page 47: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Matroids Beyond Linear Codes

For a code C over Fq, we have |CX | = qr(X ), so r(X ) = logq |CX |.

Let A be a finite alphabet (i.e., set) with |A| = q.A subset C of An is an almost affine code if logq |CX | is an integerfor each X ⊆ E = {1, 2, . . . , n}.

Theorem Simonis and Ashikhmin, 1998

If C ⊆ An is an almost affine code, then M = (E , r), wherer(X ) = logq |CX |, is a matroid.

Page 48: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Matroids Beyond Linear Codes

For a code C over Fq, we have |CX | = qr(X ), so r(X ) = logq |CX |.

Let A be a finite alphabet (i.e., set) with |A| = q.A subset C of An is an almost affine code if logq |CX | is an integerfor each X ⊆ E = {1, 2, . . . , n}.

Theorem Simonis and Ashikhmin, 1998

If C ⊆ An is an almost affine code, then M = (E , r), wherer(X ) = logq |CX |, is a matroid.

Page 49: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Matroids Beyond Linear Codes

For a code C over Fq, we have |CX | = qr(X ), so r(X ) = logq |CX |.

Let A be a finite alphabet (i.e., set) with |A| = q.A subset C of An is an almost affine code if logq |CX | is an integerfor each X ⊆ E = {1, 2, . . . , n}.

Theorem Simonis and Ashikhmin, 1998

If C ⊆ An is an almost affine code, then M = (E , r), wherer(X ) = logq |CX |, is a matroid.

Page 50: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Almost Affine Codes Yield More Matroids Than Linear Codes

1

2

3

4

5

6

7 8 9

This matroid arises from an almost affinecode but not from any linear code.

It cannot be coordinatized over a fieldsince it violates a theorem of projectivegeometry.

Pappus’ Theorem 300’s

If the vertices of a hexagon liealternately on two coplanar lines, thenthe three points at which pairs ofopposite sides intersect are collinear.

1

2

3

4

5

6

Page 51: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Almost Affine Codes Yield More Matroids Than Linear Codes

1

2

3

4

5

6

7 8 9

This matroid arises from an almost affinecode but not from any linear code.

It cannot be coordinatized over a fieldsince it violates a theorem of projectivegeometry.

Pappus’ Theorem 300’s

If the vertices of a hexagon liealternately on two coplanar lines, thenthe three points at which pairs ofopposite sides intersect are collinear.

1

2

3

4

5

6

Page 52: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

How Many Values Of The Rank Function Are Required To Determine A Matroid?

1

2

3

4

5

6

7 8 9

We need only ten (not 29) values r(X )to determine this matroid:Key rank-0 sets: ∅.Key rank-2 sets: {1, 3, 5}, {2, 4, 6},{1, 2, 7}, {1, 6, 8}, {4, 5, 7}, {5, 6, 9},{3, 4, 8}, {2, 3, 9}.Key rank-3 sets: E .

A flat in a matroid M = (E , r) is a subset X of E for whichr(X ∪ {e}) > r(X ) for all e ∈ E − X .

A cyclic set in M is a subset X of E for which there is no e ∈ Xwith r(X − {e}) < r(X ).

Page 53: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

How Many Values Of The Rank Function Are Required To Determine A Matroid?

1

2

3

4

5

6

7 8 9

We need only ten (not 29) values r(X )to determine this matroid:Key rank-0 sets: ∅.Key rank-2 sets: {1, 3, 5}, {2, 4, 6},{1, 2, 7}, {1, 6, 8}, {4, 5, 7}, {5, 6, 9},{3, 4, 8}, {2, 3, 9}.Key rank-3 sets: E .

A flat in a matroid M = (E , r) is a subset X of E for whichr(X ∪ {e}) > r(X ) for all e ∈ E − X .

A cyclic set in M is a subset X of E for which there is no e ∈ Xwith r(X − {e}) < r(X ).

Page 54: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

An Example

Let Z(M) denote the collection of cyclic flats of a matroid M.

a

b

c

d

ef

g

h

.

{a, b, c} {c, d , e} {e, f , g} {g , h, a}

{a, b, c, d , e} {c, d , e, f , g} {e, f , g , h, a} {g , h, a, b, c}

E

rank 0

rank 2

rank 3

rank 4

Page 55: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Defining Matroids By Cyclic Flats

For any X ⊆ E , r(X ) = min{r(Z ) + |X − Z | : Z ∈ Z(M)}.

Theorem Sims, 1980; Bonin and de Mier, 2008

For Z ⊆ 2E and r : Z → Z, there is a matroid M on E withZ = Z(M) whose rank function extends r iff

I (Z,⊆) is a lattice,

I r(0Z) = 0, where 0Z is the least element of Z,

I 0 < r(Y )− r(X ) < |Y − X | for all X ,Y ∈ Z with X ( Y ,and

I r(X ) + r(Y ) ≥ r(X ∨ Y ) + r(X ∧ Y ) + |(X ∩ Y )− (X ∧ Y )|for all X ,Y ∈ Z.

Page 56: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Applications Of Cyclic Flats

The cyclic flats perspective on matroids has proven useful for

I matroid constructions (intertwines, free products, splices, . . .),

I constructing some excluded-minors for base-orderability,

I advancing the sticky matroid conjecture,

I reducing the information needed to compute the Tuttepolynomial, (Jens Eberhardt),

I . . .,

I and recently, constructing locally repairable codes.(Thomas Westerback, Ragnar Freij-Hollanti, Toni Ernvall, and

Camilla Hollanti)

Page 57: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A Sketch Of Locally Repairable Codes

In large-scale distributed storage systems (e.g., the cloud), devicesfail. Maintaining back-up copies of data is inefficient and costly.Given that device k will eventually fail, is it better to

• have device k contain all data in some files (users would beout of luck in a failure), or

• contain just one bit from each codeword for these files (so, ina failure, we can recover that bit from other devices)?

The different bits in each codeword are stored on different devices!

This introduces dramatically different design goals:

I “classical” codes: interpret the received codeword correctly asone entire unit,

I locally repairable codes: “cluster” the bits so that bad bitswithin a cluster can be fixed from the others; that is, enabledoing repairs locally, with as few other bits as possible.

The lattice of cyclic flats is proving to be useful for constructinglinear or almost affine locally repairable codes.

Page 58: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

A Sketch Of Locally Repairable Codes

In large-scale distributed storage systems (e.g., the cloud), devicesfail. Maintaining back-up copies of data is inefficient and costly.Given that device k will eventually fail, is it better to

• have device k contain all data in some files (users would beout of luck in a failure), or

• contain just one bit from each codeword for these files (so, ina failure, we can recover that bit from other devices)?

The different bits in each codeword are stored on different devices!

This introduces dramatically different design goals:

I “classical” codes: interpret the received codeword correctly asone entire unit,

I locally repairable codes: “cluster” the bits so that bad bitswithin a cluster can be fixed from the others; that is, enabledoing repairs locally, with as few other bits as possible.

The lattice of cyclic flats is proving to be useful for constructinglinear or almost affine locally repairable codes.

Page 59: Old And New Connections Between Matroids And Codes: A ...€¦ · Old And New Connections Between Matroids And Codes: A Short Introduction To Two Fields Joseph E. Bonin The George

Persuaded?

Hopefully you now agree that,like vector spaces, groups, fields, graphs, metric spaces,manifolds, topological spaces, Hilbert spaces, . . .,

matroids are fundamental mathematical structures that everyoneshould know more about.

Thank you for listening!