Succinct Succinct representation of representation of
codes with codes with applications to applications to
testing testing
Elena GrigorescuElena GrigorescuTali KaufmanTali KaufmanMadhu SudanMadhu Sudan
OutlineOutline► Testing membership in error correcting codesTesting membership in error correcting codes► Sufficient conditions for testing algebraic Sufficient conditions for testing algebraic
codescodes► Possible promising perspective: rich Possible promising perspective: rich group of group of
symmetries of codesymmetries of code► Our result: Our result: affine/cyclicaffine/cyclic invariant, invariant, sparse sparse
codes can be described succinctly by a codes can be described succinctly by a single, single, short short codeword codeword
► Implies locally testability results Implies locally testability results ► Proof sketchProof sketch► ConclusionsConclusions
C
Locally testable codesLocally testable codes
C
C satisfies
Code:Linear:
Cgfgf ,),( 0
-Accept w.p 1 if -Reject w.p. ε if
( independent of n)
q queries
q
Cf
1),( Cf
00 11 11 …… 00
n2 2N ,: FFf N
Testing linear codes via dualityTesting linear codes via duality►
► [BHR] Test for linear properties are essentially [BHR] Test for linear properties are essentially of the form:of the form:
1.1. Given x, pickGiven x, pick2.2. Accept iffAccept iff
► Locality of test:Locality of test: ► Dual-distance:Dual-distance: smallest weight of a codeword in dual-Csmallest weight of a codeword in dual-C
} ,0, : } 1 ,0 { {Cdual Cxxyy N
0 xy,
|}0|{| )(weight iyiy
Sufficient conditions for testingSufficient conditions for testing Necessary condition for local testing (linear Necessary condition for local testing (linear
codes):codes): - small “dual distance”- small “dual distance” - not sufficient- not sufficient( [BHR] show random LDPC not ( [BHR] show random LDPC not
locally testable)locally testable) Sufficient conditionsSufficient conditions
- Possible approach: nice symmetries of code- Possible approach: nice symmetries of code
C is C is invariant invariant under permutation iffunder permutation iff
][][: NN CxxxxCxxxx NN ),...,,(),...,,( )()2()1(21
},:{)(Aut CxCxC
Symmetries and testingSymmetries and testingMany known testable codes have somewhat large symmetry Many known testable codes have somewhat large symmetry groups: groups:
Eg. Eg. Linearity:Linearity: invariance under general linear group invariance under general linear group Low degree, Reed-Muller, BCH:Low degree, Reed-Muller, BCH: invariance under affine group invariance under affine group
Specific sufficient condition: Specific sufficient condition: [KS] affine invariance + ‘local characterization’ imply testing [KS] affine invariance + ‘local characterization’ imply testing
AKKLR Conjecture: 2 transitivity + small dual distance AKKLR Conjecture: 2 transitivity + small dual distance Falsified in general [GKS]Falsified in general [GKS]
Modified AKKLR Question:Modified AKKLR Question: What if dual code is generated by What if dual code is generated by single low-weight codeword and its shifts under some group G single low-weight codeword and its shifts under some group G (“Single-Orbit Property under G”)(“Single-Orbit Property under G”)
Are these codes testable (for some group G? for all groups G?)Are these codes testable (for some group G? for all groups G?)
Single orbit property under affine Single orbit property under affine invariant/cyclic groupsinvariant/cyclic groups
► Affine group:Affine group:
► Cyclic group:Cyclic group:
► C has C has single orbit undersingle orbit under cyclic group: cyclic group: w=01001w=01001 then then B={01001, 10100, 01010, 00101, 10010}B={01001, 10100, 01010, 00101, 10010} is a is a
basis for Cbasis for C
► Formally, C has Formally, C has k-single orbit under Gk-single orbit under G ( included in Aut(C) ) if ( included in Aut(C) ) if
})( | :{22
baxxFF nn
})( | :{22
axxFF nn
G}) | ({Span s.t.k wt(c),
cC
Cc
Our workOur work► Study “Single-Orbit Property” of common codes.Study “Single-Orbit Property” of common codes.
► Def: C is Def: C is sparse sparse if it contains a poly number of codewordsif it contains a poly number of codewords
► Duals of binary Duals of binary sparse + affine invariantsparse + affine invariant codes have the codes have the single-orbit property under affine group single-orbit property under affine group
- under some block-length restriction: n prime- under some block-length restriction: n prime - [KS’08] Single-orbit codes under affine group are testable.- [KS’08] Single-orbit codes under affine group are testable.
► Duals of binary Duals of binary sparse + cyclic invariantsparse + cyclic invariant codes have the codes have the single-orbit property under cyclic group single-orbit property under cyclic group
- under more block-length restrictions: n, N-1 primes- under more block-length restrictions: n, N-1 primes - No testing implications- No testing implications
► Sparse, large distanceSparse, large distance codes are testable codes are testable [KL, KS] ( tests are coarse, unstructured)[KL, KS] ( tests are coarse, unstructured)► Affine/linear invariant + “characterization”Affine/linear invariant + “characterization” imply testing imply testing
► Here: Here: sparsesparse large distancelarge distance affine invarianceaffine invariance “characterization” (explicit “characterization” (explicit
tests)tests)
► [KL] dual-e-BCH codes are testable (unstructured tests)[KL] dual-e-BCH codes are testable (unstructured tests)► e-BCH are spanned by shortest codewordse-BCH are spanned by shortest codewords
► Here: dual-e-BCH are spanned by a Here: dual-e-BCH are spanned by a single, shortsingle, short codeword codeword (explicit basis / tests)(explicit basis / tests)
Related worksRelated works
Toward an explicit description of binary Toward an explicit description of binary affine invariant codesaffine invariant codes
► Affine invariance: Affine invariance:
► Any function is of the formAny function is of the form
► The The TraceTrace function: function:
)Trace()Trace()Trace( yxyx
))((Trace)( xpxf 22
: FFf n
22:Trace FF n
12 222)(Trace
n
xxxxx
nn FF22
: baxx )(
)Trace(x...)Trace(x)Trace(x1-n22ii i
► LetLet - What aff inv families does f belong to? - What aff inv families does f belong to? ► Consider the binary rep of degrees: 1, 111, 1100, Consider the binary rep of degrees: 1, 111, 1100,
1001110011 ThenThen
► In general: if degree In general: if degree dd occurs then its occurs then its shadowshadow occurs occurs ► SparsitySparsity translates into translates into few monomialsfew monomials► Affine/Cyclic codes are described by a small set of Affine/Cyclic codes are described by a small set of
degreesdegrees
Explicit description of sparse affine Explicit description of sparse affine familiesfamilies
)()( 19127 xxxxTracexf
...,)(
)(
)(
)(
)(
01110001
10001
011
101
etcCxxTrace
CxTrace
CxTrace
CxTrace
CTrace
Shadow(10011) = {10011,10010,10001,10000,11,10,1}
Strong number theoretic result of Bourgain Strong number theoretic result of Bourgain implies high weight of functions of the form implies high weight of functions of the form
few degs > deg< few degs > deg<
Proof ingredientsProof ingredients
))(...( 11 xgxaxaTrace kd
kd
2/2n 2/2n
0Degs inside trace
12 n2/2n
Weil bounds
)1(2 n
Bourgain?
Proof ingredients (contd)Proof ingredients (contd)
MacWilliams type counting estimates - fourier transform between the functions that represent number of codewords for each weight in C and in dual- C, respectively
For sparse codes of length N and of high distance obtain:
|C|N C-dualin k weight codew. #
k
Proof sketchProof sketch ► CC described by set of degrees described by set of degrees
DD► Let Let dual-C’= Span( aff(w) )dual-C’= Span( aff(w) )► If C’ C then there existsIf C’ C then there exists
► Let Let ► Associate Associate C(a)C(a) to codew. to codew. ww► Does every wt<k codew. Does every wt<k codew.
belong to a dual of some belong to a dual of some C(a)C(a) ? ?► New goal:New goal: exists w that does exists w that does
not belong to the dual of any not belong to the dual of any C(a), for all aC(a), for all a
► We showWe show
C
weight<k
Dual-C
w
Dual-C’
Want:Want: exists codew. c with wt < k exists codew. c with wt < k s.t. Span(aff(c))=Dual-Cs.t. Span(aff(c))=Dual-C
C’ C(a)
|) C(a)-dual (| | C)-(dual| kk
DaCCxTrace a /')(
C)xTrace(C(a) a
Proof SketchProof Sketch► C, C(a):C, C(a): sparse, high distsparse, high dist (Bourgain) (assuming N-1 (Bourgain) (assuming N-1
and n are primes)and n are primes)► How many codew of wt How many codew of wt kk in dual-C? in dual-C?
► How many codew of wt How many codew of wt kk in dual-C(a) ? in dual-C(a) ?
► Total number of degrees a to consider: Total number of degrees a to consider: N/nN/n
► Therefore, there exists codew. of wt<k in dual-C that Therefore, there exists codew. of wt<k in dual-C that whose orbit generates Cwhose orbit generates C
t
k
NN
1t
k
NN
Specifics of the affine case proofSpecifics of the affine case proof
► Here only assume n prime- Bourgain Here only assume n prime- Bourgain doesn’t hold for all monomialsdoesn’t hold for all monomials
► Need codes C(a) to have deg Need codes C(a) to have deg a <a <
► Use shadow property Use shadow property
► Show that enough to consider a in the setShow that enough to consider a in the set
1N
} [n]i |1{2 i
C')Trace(x
C') x( Trace10000101
11101111
Cyclic codesCyclic codes
► Invariant under: Invariant under: ► Punctured affine invariant codes are cyclicPunctured affine invariant codes are cyclic► Cyclic codes are described by generator Cyclic codes are described by generator
polynomial (or its roots in the field)polynomial (or its roots in the field)► Alternatively described by function Alternatively described by function
families of the form families of the form
► Degrees can be arbitrary Degrees can be arbitrary
0
)}({i
ii xaTraceC
axx )(nn FF22
:
Single orbit: affine vs cyclic codesSingle orbit: affine vs cyclic codes
► Affine (length N= Affine (length N= )) n primen prime degrees of degrees of
monomials are monomials are shadow closedshadow closed
|Aut(C)|=|Aut(C)|= ““single orbit” implies single orbit” implies
testingtesting
► Cyclic (length N-1)Cyclic (length N-1)
n, N-1 primesn, N-1 primes degrees of degrees of
monomials are monomials are arbitraryarbitrary
|Aut(C)|=N|Aut(C)|=N not known if “single not known if “single
orbit” implies testingorbit” implies testing
n2
2N
Open QuestionsOpen Questions► Do same results hold for non-prime n, ?Do same results hold for non-prime n, ?
► Single orbit under what other groups imply Single orbit under what other groups imply testing? How large does the Aut group should be testing? How large does the Aut group should be to imply testing?to imply testing?
► Small weight basis + invariance implies testing?Small weight basis + invariance implies testing?
► Examples of families where the tests are not the Examples of families where the tests are not the “expected” ones (I.e. not the ones suggested by “expected” ones (I.e. not the ones suggested by the description of Aut group)the description of Aut group)
12 n
Thank youThank you