group testing and coding theory atri rudra university at buffalo, suny or, a theoretical computer...

63
Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testin

Upload: owen-converse

Post on 15-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Group Testing and Coding Theory

Atri Rudra University at Buffalo, SUNY

Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Page 2: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Group testing overview

Test soldier for a disease

WWII example: syphillis

2

Page 3: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Group testing overview

Test an army for a disease

WWII example: syphillis

What if only one soldier has the

disease?

What if only one soldier has the

disease?

3

Can we do

better?

Can we do

better?

Page 4: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

4

Communicating with my 2 year oldC(x)

x

y = C(x)+error

x Give up

“Code” C“Akash English”

C(x) is a “codeword”

Page 5: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

5

The setupC(x)

x

y = C(x)+error

x Give up

Mapping CError-correcting code or just code

Encoding: x C(x)

Decoding: y x

C(x) is a codeword

Page 6: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

The fundamental tradeoff

Correct as many errors as possible with as little redundancy as possible

6

Can one achieve the “optimal” tradeoff with efficient encoding and decoding ?

Page 7: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

The main message

7

Coding Theory

Group Testing

Page 8: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Asymptotic view

n!

10n2

n2

Page 9: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

O() notation

≤ is O with glasses

poly(n) is O(nc) for some fixed c

Page 10: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Group testing overview

Test an army for a disease

WWII example: syphillis

What if only one soldier has the

disease?

What if only one soldier has the

disease?

Can pool blood samples and

check if at least one soldier has

the disease

Can pool blood samples and

check if at least one soldier has

the disease

10

Page 11: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Group testing

Set of items: (Unknown) vector x in {0,1}n

At most d positives: |x| ≤ d

Tests: a subset S of {1,..,n}

Result of a test: OR of xi’s such that i in S

Goal 1: Figure out x

Goal 2: Minimize the number of tests t

Non-adaptive tests: all tests are fixed a priori

1 2 3 n…………

1

2

3

t

.

.

.

1 0 0 1………….

0 0 1 0………….

0 0 0 1………….

1 1 1 0………….

.

.

.

t = O(d2log n) is possiblet = O(d2log n) is possible

Tons of applications

Tons of applications

Output + itemsOutput + items

11

Page 12: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

The decoding step

1 2 3 n…………

1

2

3

t

.

.

.

1 0 0 1………….

0 0 1 0………….

0 0 0 1………….

1 1 1 0………….

.

.

.

x1

x2

x3

xn

.

.

.

.

.

.

r1

r2

r3

rt

.

.

.

unknownunknown

To be designedTo be designed

ObservedObserved

How fast can this step be done?

How fast can this step be done?

12

Page 13: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

An application: heavy hitters

Stream items are numbers in the range {1,…,n}

Output all items that occur at least 1/d fraction of the times

One pass,poly log space,

poly log update,poly log report

time

One pass,poly log space,

poly log update,poly log report

time

13

Page 14: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Cormode-Muthukrishnan idea

Use group testing: maintain counters for each test

Heavy tail property: Total frequency of non-heavy items < 1/d

1 2 3 n…………

c1

c2

c3

ct

.

.

.

1 0 0 1………….

0 0 1 0………….

0 0 0 1………….

1 1 1 0………….

.

.

.

Maintain count of items in tests

Maintain total count m

ri = 1 iff ci ≥ m/d

xj = 1 iff j is a heavy item (|x| ≤ d)

r = M × x Reporting the heavy items is just decoding!

Reporting the heavy items is just decoding!

14

Page 15: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Requirements from group testing

1 2 3 n…………

c1

c2

c3

ct

.

.

.

1 0 0 1………….

0 0 1 0………….

0 0 0 1………….

1 1 1 0………….

.

.

.

Non-adaptiveness is crucial

Minimize t (space)

Strongly explicit matrix

Minimize decoding time (report time)

15

Page 16: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

An overview of results

# tests (t) Decoding time

d is O(log n)d is O(log n)

O(d2 log n) poly(t) [INR10, NPR11]

O(d2 log n) O(nt) [DR82], [PR08]

O(d4 log n) O(t) [GI04]

O(d2 log2 n) poly(t) [GI04, implicit]

Big savings

Big savings

16

Page 17: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Tackling the first row

# tests (t) Decoding time

O(d2 log n) poly(t) [INR10, NPR11]

O(d2 log n) O(nt) [DR82], [PR08]

O(d4 log n) O(t) [GI04]

O(d2 log2 n) poly(t) [GI04, implicit]

17

Page 18: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

d-disjunct matricesSufficient condition for group testing

d columns

1 0 0 0 …………….. 0Exists

True for every d subset of columns and a disjoint column

Set of positives

Test result=0

Every non-positive column has one 0 test

result

Every non-positive column has one 0 test

result

18

Page 19: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

L columns

Naïve decoder for d-disjunct matrices

d columns

1 0 0 0 …………….. 0

Set of positives

If rj = 0 then for every column i that is in test j, set xi = 0

If xi=1 then all tests column i participates in will have a 1

If xi=1 then all tests column i participates in will have a 1

O(nt) timeO(Lt) time

19

Page 20: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

What is known

d columns

1 0 0 0 …………….. 0

Set of positives O(nt) time

r1

r2

r3

rt

.

.

.

d-disjunct matrix

Strongly explicit d-disjunct matrix with t = O(d2 log2n) [Kautz-Singleton 1964]

Deterministic d-disjunct matrix with t = O(d2 log n) [Porat-Rothschild 2008]

Lower bound of Ω(d2 log n/log d) [Dyachkov-Rykov 1982]

20

Randomized d-disjunct matrix with t = O(d2 log n) [Dyachkov-Rykov 1982]

Page 21: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Up next

# tests (t) Decoding time

O(d2 log n) poly(t) [INR10, NPR11]

O(d2 log n) O(nt) [DR82], [PR08]

O(d4 log n) O(t) [GI04]

O(d2 log2 n) poly(t) [GI04, implicit]

21

Page 22: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Error-correcting codes

22

C(x)x

y

x Give up

Mapping C : km

Dimension k, block length m m≥ k

Rate R = k/m 1

Efficient means polynomial in mDecoding time complexity

Page 23: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Noise model

Errors are worst case (Hamming)error locationsarbitrary symbol changes

Limit on total number of errors

23

Page 24: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Hamming’s 60 yr old observation

24

≥ D

D/2

Large “distance” is good

Large “distance” is good

Page 25: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

All you need to remember about Reed-Solomon codes– Part I

q is a prime power

qq/(d+1) vectors from [q]q where every two agree in < q/(d+1) positions

25

Page 26: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

How do we get binary codes ?

26

Concatenation of codes [Forney 66]

C1: ({0,1}k)K ({0,1}k)M (Outer code)

C2: {0,1}k {0,1}m (Inner code)

C1° C2: {0,1}kK {0,1}mM

Typically k=O(log M)

x1 x2

wMw1 w2

xKx

C1(x)

C2(w1) C2(w2)C2(wM) C1° C2(x)

Page 27: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Disjunct matrices from RS codesn = qq/(d+1)

Column i gets ith codeword

Column i gets ith codeword

x 0 0 1…. …. 0x

x. q rows

t = q2 = O(d2 log2n)

d-disjunct matrix [Kautz,Singleton]

d-disjunct matrix [Kautz,Singleton]

Code Concatenation

Code Concatenation

q

27

Page 28: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

A q=3 example

0

0

0

1

1

1

2

2

2

0

1

2

1

2

0

2

0

1

1

0

0

0

0

1

0

1

0

0

1

2

100

100

100

010

010

010

001

001

001

100

010

001

010

001

100

001

100

010

28

Page 29: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

1-Agreement between two columns

0

0

0

1

1

1

2

2

2

0

1

2

1

2

0

2

0

1

1

0

0

0

0

1

0

1

0

0

1

2

100

100

100

010

010

010

001

001

001

100

010

001

010

001

100

001

100

010

≤ 1 agr

Agreement in binary = Agreement among RS codewords

< q/(d+1)

Agreement in binary = Agreement among RS codewords

< q/(d+1)29

Page 30: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

d-disjunct matricesSufficient condition for group testing

d columns

1 0 0 0 …………….. 0Exists

True for every d subset of columns and a disjoint column

Set of positives

30

Page 31: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

d-disjunctness of Kautz-Singleton

d columns

< q/(d+1) agr 11 11

< q/(d+1) agr 11 11

< q/(d+1) agr 11 11

1 >q- q*d/(d+1)>0 rows

0 0 0

31

Page 32: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Up next

# tests (t) Decoding time

O(d2 log n) poly(t) [INR10, NPR11]

O(d2 log n) O(nt) [DR82], [PR08]

O(d4 log n) O(t) [GI04]

O(d2 log2 n) poly(t) [GI04, implicit]

32

Page 33: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

The basic idea

1 2 3 n…………

1

2

3

t

.

.

.

1 0 0 1………….

0 0 1 0………….

0 0 0 1………….

1 1 1 0………….

.

.

.

x1

x2

x3

xn

.

.

.

.

.

.

r1

r2

r3

rt

.

.

.

unknownunknown

Every column is a codeword

Every column is a codeword

ObservedObserved

Show is same as

`decoding’ the code

Show is same as

`decoding’ the code

33

n= # codewords = exp(m)

t = poly(m)

Page 34: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

DecodingC(x) sent, y received

x k, y m

How much of y must be correct to recover x ?At least k symbols must be correctAt most (m-k)/m = 1-R fraction of errors1-R is the information-theoretic limit

: the fraction of errors decoder can handleInformation theoretic limit implies 1-R

34

x C(x)

yR = k/m

Page 35: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Can we get to the limit or 1-R ?

35

Not if we always want to uniquely recover the original message

Limit for unique decoding, (1-R)/2

(1-R)/2 (1-R)/2

1-R

c1

c2

r

R 1-R

(1-R)/2

Page 36: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

36

List decoding [Elias57, Wozencraft58]

Always insisting on unique codeword is restrictiveThe “pathological” cases are rare

“Typical” received word can be decoded beyond (1-R)/2

Better Error-Recovery ModelOutput a list of answersList Decoding Example: Spell Checker

(1-R)/2

Almost all the space in higher dimension.

All but an exponential (in m) fraction

Page 37: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Information theoretic limit

• < 1 - R– Information-

theoretic limit

• Can handle twice as many errors

37Rate (R)

Unique decoding

Inf. theoretic limit

Fra

c. o

f Err

ors

()

Achievable by random codes.

NOT ALGORITHMIC!

Achievable by random codes.

NOT ALGORITHMIC!

Page 38: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

38

Other applications of list decoding

CryptographyCryptanalysis of certain block-ciphers [Jakobsen98]Efficient traitor tracing scheme [Silverberg, Staddon, Walker 03]

Complexity TheoryHardcore predicates from one way functions [Goldreich,Levin 89; Impagliazzo

97; Ta-Shama, Zuckerman 01]Worst-case vs. average-case hardness [Cai, Pavan, Sivakumar 99; Goldreich, Ron,

Sudan 99; Sudan, Trevisan, Vadhan 99; Impagliazzo, Jaiswal, Kabanets 06]

Other algorithmic applicationsIP Traceback [Dean,Franklin,Stubblefield 01; Savage, Wetherall, Karlin, Anderson 00] Guessing Secrets [Alon,Guruswami,Kaufman,Sudan 02; Chung, Graham, Leighton 01]

Page 39: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Algorithmic list decoding results

1- R - > 0 Folded RS codes[Guruswami, R. 06]

39

Unique decoding

Inf. theoretic limit

Guruswami-Sudan 98

Parvaresh-Vardy 05

Fra

c. o

f Err

ors

()

Rate (R)

Folded RS

Page 40: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Concatenated codes

40

Concatenation of codes [Forney 66]

C1: ({0,1}k)K ({0,1}k)M (Outer code)

C2: {0,1}k {0,1}m (Inner code)

C1° C2: {0,1}kK {0,1}mM

Typically k=O(log M)

x1 x2

wMw1 w2

xKx

C1(x)

C2(w1) C2(w2)C2(wM) C1° C2(x)

Brute force decoding for inner code

Page 41: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

41

List decoding C1° C2

y1 y2 yM

How do we “list decode” from lists ?

in {0,1}m

S1 S2 SM

in {0,1}k

Page 42: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

List recovery

.

.

.

..

.

.

S1 S2 S3 SM

………………………Si subset of [q]

………………………c1 c2 c3 cM

|Si| ≤ d

42

Page 43: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

All you need to remember about (Reed-Solomon) codes-- Part II

q is a prime power

qq/(d+1) vectors from [q]q where every two agree in < q/(d+1) positions

poly(q) time algorithm for list recovery

.

.

.

..

.

.

S1 S2 S3 Sq

………………………Si subset of [q]

………………………c1 c2 c3 cq

|Si| ≤ d

43

Page 44: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Back to the example

0

0

0

1

1

1

2

2

2

0

1

2

1

2

0

2

0

1

1

0

0

0

0

1

0

1

0

0

1

2

100

100

100

010

010

010

001

001

001

100

010

001

010

001

100

001

100

010

101

001

011

+ items+ items ResultvectorResultvector

{1,2}

{2}

{0,2}

44

Page 45: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

All you ever needed to know about (Reed-Solomon) codes…at least for this talk

q is a prime power

qq/(d+1) vectors from [q]q where every two agree in < q/(d+1) positions

poly(q) time algorithm for list recovery

.

.

.

..

.

.

S1 S2 S3 Sq

………………………

Si subset of [q]

………………………c1 c2 c3 cq

|Si| ≤ d

45

Page 46: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

d2 columns

What does this imply?

d columns

1 0 0 0 …………….. 0

Set of positives

r1

r2

r3

rt

.

.

.

KS matrixpoly(t) time

O(d2t) time

t = O(d2 log2 n) Implicit in [Guruswami-

Indyk 04]

Implicit in [Guruswami-

Indyk 04]

46

Page 47: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Up next

# tests (t) Decoding time

O(d2 log n) poly(t) [INR10, NPR11]

O(d2 log n) O(nt) [DR82], [PR08]

O(d4 log n) O(t) [GI04]

O(d2 log2 n) poly(t) [GI04, implicit]

47

Page 48: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

L columns

Filter-evaluate decoding paradigm

d columns

1 0 0 0 …………….. 0

Set of positives

r1

r2

r3

rt

.

.

.

d-disjunct matrix

“Filtering” matrix

y1

y2

y3

yt’

.

.

.poly(t’)time

O(Lt) time 48

Page 49: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

So all we need to do

o(d2 log n/log d) tests

49

[Indyk, Ngo, R. 10]

[Ngo, Porat, R. 11]

Page 50: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Overview of the results

# tests (t) Decoding time

O(d2 log n) poly(t) [INR10, NPR11]

O(d2 log n) O(nt) [DR82], [PR08]

O(d4 log n) O(t) [GI04]

O(d2 log2 n) poly(t) [GI04, implicit]

50

Page 51: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

The main message

51

Coding Theory

Group Testing

Page 52: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Open Questions

Close the gap between upper and lower bounds

Other applications of group testing? Complexity Theory?

Strongly explicit construction of optimal disjunct matrices ?

52

Page 53: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

More on Coding Theory

53

http://www.cse.buffalo.edu/~atri/courses/coding-theory/book/index.html

Page 54: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Questions?

54

Page 55: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

d+L columns

The filtering matrix

New* object: (d,L)-list disjunct matrix

d columns

Set of positives

Running naïve decoderreturns ≤ L bogus columns

Independently considered by

[Cheraghchi 09]

Independently considered by

[Cheraghchi 09]

(d,d)-list disjunct matricesexists with O(d log n) tests

55

Page 56: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Reed-Solomon codes

56

Message: (x0,x1,…,xk-1) Fk

View as poly. f(Y) = x0+x1Y+…+xk-1Yk-1

Encoding, RS(f) = ( f(1),f(2),…,f(m) ) F ={ 1,2,…,m}

f(1) f(2) f(3) f(4) f(m)

Alphabet size is at least m

Alphabet size is at least m

Page 57: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

r

Revisiting the decoding algorithm

.

.

.

.

1

2

j

q

.

.

.

.

.

.

...

.

.

.

.

.

.

1x x ………… Sj

.

.

|Sj|≤ d

1 3 q21

11

……….……….……….

.

.

.

2

1

1

3

q

d-disjunct matrix

Naïve decoderNaïve decoder

Works but hits

a d3 barrier

Works but hits

a d3 barrier

57

Page 58: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

r

Connection to List Recovery

x 0 0 1…. …. 0x

.

.

.

.

1

2

j

q

.

.

.

.

.

.

...

.

.

.

.

.

.

Decoding: Output all codewords that match the test results

1x x ………… Sj

.

.

.

………… S1

………… S2

………… Sq

List recover from S1,…,St to get the positive

codewords

List recover from S1,…,St to get the positive

codewords

|Sj|≤ d

58

Page 59: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

r

Revisiting the decoding algorithm-II

.

.

.

.

1

2

j

q

.

.

.

.

.

.

...

.

.

.

.

.

.

1x x ………… Sj

.

.

|Sj|≤ 2d

1 3 q2

(d,d)-list disjunct

Naïve decoderNaïve decoder

Need to change the parameters

of the Reed-

Solomon codes a bit.

Need to change the parameters

of the Reed-

Solomon codes a bit.

59

Page 60: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

http://www.impawards.com/2007/are_we_done_yet.html60

Page 61: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

How we get our hands on…

.

.

.

.

1

2

j

q

.

.

.

.

.

.

...

.

.

.

.

.

.

1 3 q2

(d,d)-list disjunct

n ~ qq/d

RS codeword

d log qrows

t = q X (d log q)

~ (d X log n/ log q) X (d log q)

= d2 log n 61

Page 62: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Solution 1 [Indyk, Ngo, R. 10]

1 3 q2

(d,d)-list disjunctd log qrows

Pick “inner” codes at random

62

Page 63: Group Testing and Coding Theory Atri Rudra University at Buffalo, SUNY Or, A Theoretical Computer Scientist’s (Biased) View of Group Testing

Solution 2 [Ngo, Porat, R. 10]

1 3 q2

(d,d)-list disjunctd log qrows

Use explicit expanders!

Some comments:

Left degree of the expander not important

d1+o(1) log q rows possible [GUV 07, Cheraghchi 09]

Use PV codes instead of RS codes63