A note on the explicit constructions of tree codes over polylogarithmic-sized alphabet
aa r X i v : . [ c s . CC ] F e b A note on the explicit constructions of tree codes overpolylogarithmic-sized alphabet
Siddharth Bhandari ∗ Prahladh Harsha ∗ February 20, 2020
Abstract
Recently, Cohen, Haeupler and Schulman gave an explicit construction of binary tree codes overpolylogarithmic-sized output alphabet based on Pudlák’s construction of maximum-distance-separable(MDS) tree codes using totally-non-singular triangular matrices. In this short note, we give a unifiedand simpler presentation of Pudlák and Cohen-Haeupler-Schulman’s constructions.
We begin by recalling the definition of tree codes as introduced by Schulman in 1993 [Sch96]
Definition 1.1 (tree codes) . Given two finite alphabets Σ and Γ and a parameter δ ∈ (
0, 1 ) , a tree code TC : Σ ∗ → Γ ∗ with distance δ is a function mapping n-length strings over the alphabet Σ to n-length stringsover the alphabet Γ for every positive integer n satisfying the following two properties. Online encoding:
For every positive integer m, there exist functions ϕ m : Σ m → Γ such that for all n ∈ N ,x ∈ Σ n and i ∈ [ n ] , we have TC ( x ) i = ϕ i ( x , . . . , x i ) . In other words, the i th symbol of the output onlydepends on the first i symbols of the input and not on the latter symbols. The functions ϕ i are referred to asthe encoding functions. Distance:
The (relative) distance of the tree code TC , denoted by δ TC , (defined as follows) is at least δ . δ TC : = inf n , x = x ′ ∈ Σ n ∆ ( TC ( x ) , TC ( x ′ )) n − split ( x , x ′ ) , where split ( x , x ′ ) is the largest integer s such that for all i ≤ s, we have x i = x ′ i . In other words, for everypositive integer n and any two distinct n-length strings x , x ′ ∈ Σ n , we have that the Hamming distancebetween y = TC ( x ) and y ′ = TC ( x ′ ) is at least δ ( n − split ( x , x ′ )) .The string y = TC ( x ) is said to be the tree code encoding of x. This encoding is said to be explicit if each of theencoding functions ϕ i can be computed in time polynomial in i. It is known via the probabilistic method that for every finite alphabet Σ and distance parameter δ ∈ (
0, 1 ) , there exists an alphabet Γ = Γ ( Σ , δ ) and a tree code TC : Σ ∗ → Γ ∗ with distance at least δ (see Theorem 1.3 for the precise statement when Σ is a finite field). A long standing open problem is toconstruct explicit tree codes matching the above construction (or even one for some distance parameter δ ∈ (
0, 1 ) ). Since we do not yet know such explicit constructions, several intermediate variants andspecial cases of the above definition of tree codes have been studied, some of which are interesting oftheir own right. Below, we mention some of these variants. ∗ Tata Institute of Fundamental Research, INDIA. email: {siddharth.bhandari,prahladh}@tifr.res.in . Research of the au-thors supported by the Department of Atomic Energy, Government of India, under project no. 12-R&D-TFR-5.01-0500. Researchof the second author supported in part by the Swarnajayanti fellowship. runcated Tree Code: Instead of constructing a single tree code TC : Σ ∗ → Γ ∗ that works for all inputlengths, sometimes it is easier to construct a family of tree codes (indexed by n ) each of whichworks for all strings up to a fixed length n , i.e., TC ( n ) : Σ ( ≤ n ) → Γ ( ≤ n ) . We will refer to thesetree-codes as n-truncated tree codes and the family { TC ( n ) } n ∈ Z > as truncated tree codes. Whiledealing with n -truncated tree codes, we will use the superscript n to denote the maximum inputlength. The notion of distance now becomes: δ TC ( n ) : = inf i ≤ n , x = x ′ ∈ Σ i ∆ ( TC ( x ) , TC ( x ′ )) i − split ( x , x ′ ) Note that for a truncated code { TC ( n ) } n , we have a family of encoding functions { ϕ ( n ) i : 1 ≤ i ≤ n } for each n . In this case, we say that the truncated code is explicit if for each n and i ≤ n , ϕ ( n ) i iscomputable in time polynomial in n . Note that it is polynomial in n and not just i as in the case of(non-truncated) tree codes. Clearly, tree codes imply truncated tree codes but the other directionis not known. Input Alphabet:
The classical tree-code considers binary input alphabet, i.e., Σ = {
0, 1 } . Sometimes,it is convenient to have an algebraic structure on the input alphabet, say Σ is a finite field F oreven the set of non-negative integers Z ≥ . When dealing with truncated tree-codes TC ( n ) , onemay also consider tree codes whose input and output alphabets grow with n (i.e, { Σ n } n , { Γ n } n corresponding to { TC ( n ) } n ). Output Alphabet:
The holy grail is to construct tree codes over the binary alphabet with constant out-put alphabet size. As an intermediate step, one typically constructs tree codes whose output al-phabets grow with n . This is best formalized in the setting of truncated tree codes { TC ( n ) : Σ ( ≤ n ) → Γ ( ≤ n ) n } n ∈ Z ≥ where { Γ n } n is a family of output alphabets whose size (may) grow with n . The for-malism for the more standard (single) tree code is a little more involved. We let Γ = ∪ n Γ n and TC : Σ ∗ → Γ ∗ subject to the constraint that the encoding functions ϕ i satisfy ϕ i : Σ i → Γ i . Note Γ is not necessarily a finite alphabet, though each Γ n is.We are now ready to state the remarkable recent result of Cohen, Haeupler and Schulman thatconstructs explicit binary tree codes over a polylogarithmic-sized output alphabet. Theorem 1.2 (explicit tree codes with polylog alphabet [CHS18]) . For all η ∈ [
0, 1 ) there exists a family ofalphabets { Γ n } n such that | Γ n | = O η ( polylog ( n )) with the following property. Let Γ = ∪ n Γ n . There exists atree code TC : {
0, 1 } ∗ → Γ ∗ with distance η such that the encoding functions ϕ i satisfy satisfy ϕ i : {
0, 1 } i → Γ i .Furthermore, the encoding functions ϕ n are constructible in time polynomial in n. Cohen, Haeupler and Schulam construct such tree codes in two steps. In the first step, they constructtree codes over the integer alphabet using Newton polynomials. This construction is a special case ofPudlák’s construction of "maximum-distance-separable (MDS)" tree codes using totally-non-singulartriangular matrices. In the second step, they perform an alphabet reduction to reduce the alphabet fromintegers to a polylogarithmic-sized output alphabet.
Organization:
The rest of this exposition is organized as follows. We give a short (but complete)exposition of MDS codes, a la Pudlák, in Section 2 followed by the alphabet reduction technique ofCohen-Haeupler-Schulman in Section 3.The purpose of this note is only to give an exposition of the Cohen-Haeupler-Schulman construc-tion. In particular, we place the Cohen-Haeupler-Schulman construction in the context of Pudlák’sframework for constructing explicit tree codes. For a more comprehensive treatment of tree codes, werefer the interested reader to Gelles’s survey on interactive communication [Gel17] and Pudlák’s excel-lent paper [Pud16] discussing various potential approaches to obtain explicit tree codes. The theorem as stated here is marginally stronger than the one proved by Cohen-Haeupler-Schulman, in the sense that itrefers to explicit constructions of tree codes as opposed to truncated codes. See Remark 3.8 for more details. .1 Linear tree codes A particularly appealing setting is when the input and output alphabet Σ , Γ are finite-dimensional vec-tor spaces F s , F r respectively over some finite field F . In this setting, if the tree code TC : ( F s ) ∗ → ( F r ) ∗ further satisfies that TC | ( F s ) n is a linear mapping for each n , then the tree code is said to F -linear .For the case when s =
1, it is easy to check that the online encoding property of tree codes ensuresthat if TC : F ∗ → ( F r ) ∗ is F -linear, then there exist r -lower triangular matrices A , . . . , A r − ∈ F Z > × Z > such that for any x ∈ F n , we have TC ( x ) i = (( A ( n ) ( x )) i , ( A ( n ) ( x )) i , . . . , ( A ( n ) r − ( x )) i ) ∈ F r where A ( n ) refers to the n × n -matrix formed by the restricting A to the top n columns and rows. By a change ofbasis of the input strings, we may without loss of generality assume that A = I , the identity matrix(we will not use this property, however our construction of distance-half linear tree codes will have thisproperty).As in linear codes, the distance of a linear tree code can be characterized by the minimum weight ofnon-zero codewords. More specifically, if TC : F ∗ → ( F r ) ∗ is F -linear then δ TC = inf n , x ∈ F n \{ n } wt F r ( TC ( x )) n − split ( x , 0 n ) ,where wt Γ ( x ) refers to the Hamming weight of x with respect to the alphabet Γ . Since Γ = F r and TC ( x ) ∈ ( F r ) n = F rn , it is also natural to consider a variation of the above definition with Hammingweight with respect to the finite field alphabet F instead. e δ TC : = inf n , x ∈ F n \{ n } wt F ( TC ( x )) r ( n − split ( x , 0 n )) .Clearly, e δ TC ≤ δ TC .Schulman proved the existence of tree codes via the probabilistic method. The following statementis due to Pudlák [Pud16, Theorem2.1] . Theorem 1.3 (probabilistic construction of linear tree codes [Sch96, Pud16]) . Let q = | F | , r = q d = | Σ | and < δ < r − r such that log r ( q ) + H r ( δ ) ≤ where H r denotes the r-entropy function defined byH r ( x ) = x log r ( r − ) − x log r x − ( − x ) log r ( − x ) . Then, there exists a linear tree code TC : F ∗ → Σ ∗ with e δ TC > δ . Moreover, if q , r and δ are fixed, then theencoding functions ϕ n can be constructed for every n in time O ( n ) . Note that there exists δ > q >
2, there exist tree codes with rate 1/2 (i.e., d = ≥ δ . We do not know if binary (i.e., q =
2) tree codes with rate 1/2 canhave asymptotically positive minimum relative distance.
In this section, we present the treatment of linear tree codes following Pudlák [Pud16]. More precisely,we present the “Singleton bound” for linear codes, define maximum-distance-separable (MDS) treecodes and present a construction of MDS codes assuming the existence of totally-non-singular triangu-lar matrices.
Proposition 2.1 (Singleton bound for tree codes [Pud16, Proposition 5.1]) . For every n-truncated code, TC ( n ) : Σ ( ≤ n ) → Γ ( ≤ n ) we have δ TC ( n ) ≤ n ⌊ n ( − log | Σ | / log | Γ | ) + ⌋ . Pudlák provides two probabilistic constructions, one for truncated codes and another for untruncated codes. The theoremstated here refers to the latter construction using cyclic Toeplitz matrices. roof. This proof will be an adaptation of the standard proof of the Singleton bound for codes to thetree code setting. The proposition is trivially true when | Γ | ≥ | Σ n | (in fact, in this case, there exist n -truncated tree codes with distance 1). So we might as well assume that | Γ | < | Σ n | . Let ℓ be the smallestinteger such that ℓ ≥ n · ( log | Σ | / log | Γ | ) −
1, which is at least 1 since n · ( log | Σ | / log | Γ | ) >
1. Consider themapping f n → ℓ : Σ n → Γ ℓ defined as follows f n → ℓ ( x ) : = TC ( n ) ( x ) | [ n − ℓ + n ] (i.e, the tree code encodingrestricted to the last ℓ symbols). Since | Σ n | > | Γ ℓ | , there must exist two strings x , x ′ ∈ Σ n such that f n → ℓ ( x ) = f n → ℓ ( x ′ ) (i.e., the tree code encodings of x and x ′ agree on the last ℓ symbols). Let i ≥ x and x ′ differ. Note that i ≤ n − ℓ . Due to the online nature of tree codes we knowthat TC ( n ) ( x ) and TC ( n ) ( x ′ ) agree on the first i − ℓ coordinates).Therefore, δ TC ( n ) ≤ n − ( ℓ + ( i − )) n − i + = − ℓ n − i + ≤ − ℓ n = − n (cid:18)(cid:24) n · log | Σ | log | Γ | (cid:25) − (cid:19) = n (cid:22) n (cid:18) − log | Σ | log | Γ | (cid:19) + (cid:23) .Notice that the aforementioned proof would have also worked with the following relaxed notion ofdistance (that only considers strings of length n ): δ relaxed TC ( n ) : = inf x = x ′ ∈ Σ n ∆ ( TC ( x ) , TC ( x ′ )) n − split ( x , x ′ ) .For any non-zero y ∈ Γ n and α ∈ (
0, 1 ) , the condition wt ( y ) ≥ ⌊ α · n + ⌋ is equivalent to thecondition that wt ( y ) > α · n . This combined with Proposition 2.1 motivates the following definition. Definition 2.2 (MDS tree codes) . A n-truncated tree code TC ( n ) : Σ ( ≤ n ) → Γ ( ≤ n ) is said to be maximum-distance separable (MDS) if δ TC ( n ) > − log | Σ | / log | Γ | . An MDS tree code is defined similarly. Pudlák showed how the existence of certain type of matrices implies the existence of MDS codes. Wefirst define these special type of matrices. In the following, for a n × n matrix A and subsets I , J ⊆ [ n ] of the rows and columns, the matrix A [ I | J ] refers to the submatrix of A restricted to the rows I andcolumns J . Definition 2.3 (totally-non-singular triangular matrix) . A lower-triangular matrix A ∈ F n × n is said to betotally-non-singular if for every ≤ r ≤ n and pair of sets I , J ⊆ [ n ] such that | I | = | J | = r and I = { ≤ i < · · · i r ≤ n } , J = { ≤ j < · · · j r ≤ n } satisfying i s ≥ j s for all s ∈ [ r ] , we have that the submatrix A [ I | J ] isnon-singular. Given a lower-triangular matrix A ∈ F n × n , consider the linear tree code TC ( n ) A : F ( ≤ n ) → ( F ) ≤ n defined by the pair of generator matrices ( A = I n , A = A ) . In other words, for any x ∈ F k and i ≤ k ,we have (cid:16) TC ( n ) A ( x ) (cid:17) i : = (cid:16) x i , (cid:16) A ( k ) ( x ) (cid:17) i (cid:17) . Theorem 2.4 (MDS linear tree codes [Pud16, Theorem 5.3]) . If A ∈ F n × n is a totally-non-singular lower-triangular matrix, then the n-truncated tree code TC ( n ) A has distance greater than / and is hence MDS.Proof. We will in fact show the stronger property that e δ > / . More precisely, for any non-zero code-word x ∈ F k with ℓ = split ( k , x ) ∈ [ k − ] , we need to show that the F -weight of y = TC ( x ) ∈ ( F ) k when viewed as a string in F k is greater than ( k − ℓ ) . To this end, we define the following two sets ofcolumn and row indices. C x : = { j ∈ [ k ] : x j = } , R x : = { i ∈ [ k ] : i > ℓ , ( A ( k ) ( x )) i = } .The number of non-zero coordinates in y (when viewed a string over F ) is exactly |C x | + ( k − ℓ −|R x | ) which is at strictly greater than ( k − ℓ ) if |C x | > |R x | , which is proved in the claim below. Claim 2.5. |C x | > |R x | roof. Assume otherwise and suppose that C x = { j < j < . . . < j r } and R x = { i < j < . . . < i s } for some s ≥ r . By definition of C x , we have j = ℓ +
1. Since |R x | ≥ |C x | ≥
1, we have that i > ℓ andhence i ≥ j . Let t be the maximum integer such that i ≥ j , i ≥ j , . . . , i t ≥ j t . Let us observe theaction of the matrix A [ { i , . . . , i t } | { j , . . . , j t } ] on the vector x | { j ,..., j t } . By maximality of t , we get thateither r = t or i t + < j t + . In either case, it is easy to see that A [ { i , . . . , i t } | { j , . . . , j t } ]( x | { j ,..., j t } ) = .However, this is contradiction to the total non-singularity of A . Therefore, |C x | > |R x | .Claim 2.5 lends itself to the following alternate construction of a tree code which also has distancegreater than / . For v ∈ F define v ′ = ( v , 0 ) ∈ F as the vector obtained by appending a zero to v . Similarly, for a vector x ∈ F k let x ′ ∈ ( F ) k be ( x ′ , x ′ , . . . , x ′ k ) . Given a totally-non-singular lower-triangular matrix A ∈ F n × n , consider the n -truncated tree code TC ( n ) A , ( ) : F ( ≤ n ) → ( F ) ( ≤ n ) that maps x ∈ F k to A ( k ) ( x ′ ) ∈ F k . For a non-zero x ∈ F k , let ℓ = split ( k , x ) . Let x ′ ∈ F k be the correspondingnon-zero vector and let ℓ ′ = split ( k , x ) . Clearly, ℓ ′ = ℓ . Let y ′ = TC ( n ) A , ( ) ( x ′ ) Define sets C x ′ and R x ′ as before. By definition, |C x ′ | ≤ / · ( k − ℓ ′ ) = k − ℓ and wt F ( y ′ ) = k − ℓ ′ − |R ′ x | > k − ℓ ′ − |C x ′ | (byClaim 2.5). Hence, wt F ( y ′ ) > k − ℓ ′ − ( k − ℓ ) = k − ℓ = / ( k − ℓ ′ ) . Hence, e δ distance of TC ( n ) A , ( ) isgreater than / .This alternate construction has the advantage that it can be generalized to obtain MDS tree codeswith distance δ TC > r / r + s for integers r , s ≥
1. Let A ∈ F ( r + s ) n × ( r + s ) n be a totally-non-singular lower-triangular matrix. For v ∈ F s define v ′ ∈ F r + s as the vector obtained by appending r zeros to v .Similarly, for a vector x ∈ ( F s ) k let x ′ ∈ F ( r + s ) k be ( x ′ , x ′ , . . . , x ′ k ) . For all x ∈ ( F s ) k and k ≤ n define TC ( n ) A , ( s , r ) : ( F s ) ( ≤ n ) → ( F r + s ) ( ≤ n ) as x ∈ ( F s ) k A ( r + s ) k x ′ ∈ ( F ( r + s ) ) k .An argument identical to the one above proves that this is an MDS code. Theorem 2.6. TC ( n ) A , ( s , r ) is a n-truncated MDS tree code with distance r / r + s . Pudlák suggested various examples of triangular totally-nonsingular matrices. One of these examplesis the the Pascal Matrix defined as follows:
Definition 2.7 (Pascal matrix) . The Pascal matrix P ∈ Z Z ≥ × Z ≥ ≥ is the matrix whose ( i , j ) -entry for i , j ∈ Z ≥ is the binomial coefficient ( ij ) . For any n ∈ Z > , we let P n be the restriction of the (infinite) matrix P to thefirst ( n + ) rows and ( n + ) columns. We will use the fact that for any n, the maximum value of any entry inP n is at most n . Gessel and Viennot [GV85], using Lindström’s combinatorial interpretation of certain determinantsin terms of disjoint path systems [Lin73], proved the following remarkable theorem which immediatelyyields the total-non-singularity of the Pascal matrix.
Lemma 2.8 ( [GV85], Corollary 2) . Let ≤ a < a < a < . . . < a n and ≤ b < b < . . . < b n betwo sequences of n integers each. Define the n × n matrix M by M i , j = ( a i b j ) . If a i ≥ b i for each i ∈ [ n ] then det ( M ) > . Combining the above theorem with Theorem 2.4, we obtain the following result.
Theorem 2.9 (tree code over integers [CHS18, Theorem 1.3]) . There exists an explicit tree code over theintegers TC Z : Z Z ≥ ≥ → ( Z ≥ ) Z ≥ with distance at least satisfying the property that for any n ∈ Z > andi ∈ {
0, 1 . . . , n } , we have (( TC Z ( a , . . . , a n )) i ) = a i and (( TC Z ( a , . . . , a n )) i ) ≤ n max j | a j | . Cohen-Haeupler-Schulman obtained this theorem by using the inverse of the Pascal matrix instead. If a lower-triangular istotally-non-singular, then so is its inverse. Alphabet Reduction
In this section, we show how to convert the tree code over the integers constructed in Theorem 2.9 toone over the binary alphabet. By merely restricting the input alphabet of TC Z in Theorem 2.9 to integerswithin the range {
0, 1 . . . , 2 s − } and setting n = s , we obtain the following corollary. Corollary 3.1 (tree code over large alphabet) . For every s ∈ Z > , there exist an explicit tree code over theinput alphabet {
0, 1 } s , TC ( s ) : {{
0, 1 } s } ( ≤ s ) → {{
0, 1 } s } ( ≤ s ) with distance at least . The tree code constructed in the above corollary has excellent distance albeit over a large super-constant alphabet (both with respect to input and output). In the rest of this section, we will show howto transform this tree code into one over the binary alphabet and polylogarithmic output alphabet.We follow, roughly, the treatment of Cohen-Haeupler-Schulman [CHS18]. (Also, see Pudlák [Pud16,Proposition 3.1] for the standard well-known alphabet reduction procedure from a polynomial-sizedoutput alphabet to constant-sized output alphabet. In some sense, the Cohen-Haeupler-Schulman re-duction is an extension of this procedure to super-polynomial-sized alphabets.)To this end, we define the notion of a lagged tree code.
Definition 3.2 (tree codes with lag) . Given positive integers ℓ ≤ L, a tree code TC : Σ ∗ → Γ ∗ is said tohave ℓ -lagged distance δ if the (relative) ℓ -lagged distance δ Lag ℓ TC (defined below) is at least δ . It is said to have ( ℓ , L ) -lagged distance δ if the (relative) ( ℓ , L ) -lagged distance δ Lag ( ℓ , L ) TC (defined below) is at least δ . δ Lag ℓ TC : = inf n , x = x ′ ∈ Σ n , n − split ( x , x ′ ) ≥ ℓ ∆ ( TC ( x ) , TC ( x ′ )) n − split ( x , x ′ ) , δ Lag ( ℓ , L ) TC : = inf n , x = x ′ ∈ Σ n , ℓ ≤ n − split ( x , x ′ ) ≤ L ∆ ( TC ( x ) , TC ( x ′ )) n − split ( x , x ′ ) . The truncated versions of these lagged codes are defined appropriately.
In other words, lagged distance is a relaxation of the standard notion of distance when we consideronly pairs of strings x , x ′ whose split ( x , x ′ ) lies in a particular interval.The rest of the construction proceeds as follows. In step 1, we show that composing the integer treecode in Corollary 3.1 with a standard error-correcting code yields a truncated tree code with constant ℓ -lagged distance for some ℓ = ℓ ( s ) . In step 2, we show that we can then obtain an untruncated codewith constant ( ℓ , L ) -lagged distance by placing interleaving copies of the truncated code obtained instep 1 along the infinite tree for some fixed function L = L ( ℓ ) . Finally, in step 3, we show show that asuperimposition of several ( ℓ , L ) -lagged distance codes for increasing values of ℓ and L yields our finalcode. The size of the final alphabet is determined by how fast the function L = L ( ℓ ) grows which is inturn determined by the function ℓ = ℓ ( s ) .We begin by stating some basic error-correcting code that we need for step 1. Proposition 3.3.
For all δ ∈ [
0, 1 ) there are constants s δ and c δ such that for all s ≥ s δ there is an explicit code C : {
0, 1 } s → ( {
0, 1 } c δ ) s with (relative) distance at least δ .Proof. Using standard error-correcting codes, we know that for every δ ∈ [
0, 1 ) , there are constants n δ ∈ Z > , α δ ∈ (
0, 1 ) and alphabet Σ δ such that there exist explicit codes ˜ C : {
0, 1 } n → Σ n / α δ δ for all n ≥ n δ with distance δ over the alphabet Σ δ .Set s δ : = n δ /3 and for s ≥ s δ , let ˜ C : {
0, 1 } s → Σ s / α δ δ be the above code for n = s . Choose c δ suchthat 2 c δ ≥ | Σ δ | δ so that there exists an injective mapping Σ α δ δ ֒ → {
0, 1 } c δ . Under this mapping, thecode ˜ C : {
0, 1 } s → Σ s / α δ δ can be viewed as C : {
0, 1 } s → ( {
0, 1 } c δ ) s . Clearly, the distance of C is at leastthat of ˜ C . There are several ways to obtain such codes. Take a constant-rate-constant-distance code and distance amplify it using theABNNR distance amplification technique. Or take Algebraic Geometric codes. tep 1: truncated code with constant ℓ -lagged distance: We describe the truncated-lagged tree code TC ( s ) Lag ℓ : {
0, 1 } ( ≤ s ) → {{
0, 1 } c δ } ( ≤ s ) that results by composing the tree code, TC ( s ) : ( {
0, 1 } s ) ( ≤ s ) → ( {
0, 1 } s ) ( ≤ s ) , in Corollary 3.1, which isa distance half tree code, with the code C from Proposition 3.3.Formally, let C be the code from Proposition 3.3 with output alphabet {
0, 1 } c δ and distance δ and a ∈ N a large constant to be determined later. For every s ≥ s δ and ℓ ≥ as we describe an explicittruncated- ℓ -lagged tree code over the binary input alphabet, TC ( s ) Lag ℓ : {
0, 1 } ( ≤ s ) → {{
0, 1 } c δ } ( ≤ s ) with ℓ -lagged distance at least δ ( / − / a ) .The encoding process is a follows. Consider any x ∈ {
0, 1 } k and let x ′ = ( x ′ , . . . , x ′⌊ k / s ⌋ ) ∈ ( {
0, 1 } s ) ⌊ k / s ⌋ obtained by grouping together blocks of s symbols and ignoring any leftover symbols. Let y ′ =( y ′ , . . . , y ′⌊ k / s ⌋ ) = TC ( s ) ( x ′ ) , so y ′ ∈ ( {
0, 1 } s ) ⌊ k / s ⌋ and C ( y ′ ) = ( C ( y ′ ) , . . . , C ( y ′⌊ k / s ⌋ )) ∈ (( {
0, 1 } c δ ) s ) ⌊ k / s ⌋ .We construct TC ( s ) Lag ℓ ( x ) by letting for all i ∈ {
1, . . . , s } and for all 1 ≤ j ≤ ⌊ k / s ⌋ such that js + i − ≤ k : TC ( s ) Lag ℓ ( x ) js + i − = ( C ( y ′ ) j ) i .In other words, we read groups of s symbols from x ∈ {
0, 1 } k , say x | [ js + ( j + ) s ] and interpret eachblock of s symbols as a step in TC ( s ) . Thus, we obtain a symbol in {
0, 1 } s which we then encode to asymbol in ( {
0, 1 } c δ ) s using C . Then we "write" this s -character long string on the appropriate s -lengthsegment of TC ( s ) Lag ℓ ( x ) , i.e., from ( j + ) s to ( j + ) s − Proposition 3.4.
For all x ∈ {
0, 1 } k the encoding procedure of TC ( s ) Lag ℓ ( x ) is online and TC ( s ) Lag ℓ ( x ) [ s − ] = ε where ε is the empty string.Proof. The online nature of the encoding is clear by construction. For the latter part notice that wedon’t begin "writing" the encoding of TC ( s ) Lag ℓ ( x ) until we see the first block of s symbols and hence theencoding starts only from TC ( s ) Lag ℓ ( x ) s . Lemma 3.5. TC ( s ) Lag ℓ : {
0, 1 } ( ≤ s ) → {{
0, 1 } c δ } ( ≤ s ) has ℓ -lagged distance at least δ ( / − / a ) .Proof. We need to show that for all u , v ∈ {
0, 1 } k such that b = k − split ( u , v ) ≥ ℓ we have ∆ ( TC ( s ) Lag ℓ ( u ) , TC ( s ) Lag ℓ ( v )) b ≥ δ ( / − / a ) .Notice that | u ′ | − split ( u ′ , v ′ ) ≥ ⌊ b / s ⌋ where u ′ and v ′ are analogues of x ′ for u and v respectively. Bydistance of tree code TC ( s ) , we have ∆ ( TC ( s ) ( u ′ ) , TC ( s ) ( v ′ )) ≥ ⌊ b / s ⌋ . By composition with C we obtainthat ∆ ( TC ( s ) Lag ℓ ( u ) , TC ( s ) Lag ℓ ( v )) ≥ δ s ( ⌊ b / s ⌋ · / − ) . The ⌊ b / s ⌋ − C ( u ′ ) | ⌊ k / s ⌋ , i.e., it may be that k < ⌊ k / s ⌋ s + s − ∆ ( TC ( s ) Lag ℓ ( u ) , TC ( s ) Lag ℓ ( v )) b ≥ δ s ( ⌊ b / s ⌋· / − ) b ≥ δ ( / − / a ) since b ≥ ℓ ≥ as . Step 2: untruncated code with constant ( ℓ , O ( ℓ ) -lagged distance: We use interleaving copies of theabove truncated- ℓ -lagged distance δ ( / − / a ) tree code to construct a un-truncated- ( ℓ , O ( ℓ )) -laggeddistance δ ( / − / a ) tree code. Formally, let C be the code from Proposition 3.3 with output alphabet {
0, 1 } c δ and distance δ . For all ℓ ≥ as (where s ≥ s δ as in Proposition 3.3), we describe an explicit- ( ℓ , O ( ℓ )) -lagged tree code over the binary input alphabet and output alphabet {
0, 1 } c δ , TC Lag ℓ : {
0, 1 } ∗ → ( {
0, 1 } c δ ) ∗ . We think of a as a constant and of ℓ and s as growing. x ∈ {
0, 1 } k . We describe the encoding of x , i.e., TC Lag ℓ ( x ) below. Let i ≤ k be j ( s /2 ) + r where r < s /2. Then, TC Lag ℓ ( x ) i = ( TC ( s ) Lag ℓ ( x | [( j − ) s /2, i ] ) , TC ( s ) Lag ℓ ( x | [( j ) s /2, i ] )) .Notice that if j = x | [( j − ) s /2, i ] is the empty string.In other words, we place a ℓ -lagged tree code TC ( s ) Lag ℓ : {
0, 1 } s → {{
0, 1 } c δ } s at intervals of length s /2. So, for every x ∈ {
0, 1 } k and i > s /2 there are two ℓ -lagged tree codes whose encodings are"written" on TC Lag ℓ ( x ) i . Proposition 3.6.
For all x ∈ {
0, 1 } k the encoding procedure of TC Lag ℓ ( x ) is online and TC Lag ℓ ( x ) | [ s − ] = ε where ε is the empty string.Proof. The online nature of the encoding is by construction. TC Lag ℓ ( x ) | [ s − ] = ε follows from TC ( s ) Lag ℓ ( x ) [ s − ] = ε as shown in Proposition 3.4. Lemma 3.7. TC Lag ℓ : {
0, 1 } ∗ → ( {
0, 1 } c δ ) ∗ has ( ℓ , O ( ℓ )) -lagged distance at least δ ( / − / a ) .Proof. We show that for all u , v ∈ {
0, 1 } k such that b = k − split ( u , v ) ≥ ℓ and b ≤ s /2 we have δ ( TC Lag ℓ ( u ) , TC Lag ℓ ( v )) b ≥ δ ( / − / a ) . By construction we know that there is some j such that split ( u , v ) − js /2 ≤ s /2 and k − js /2 ≤ s . Thus the encoding of u and v which include TC ( s ) Lag ℓ ( u | [ js /2, k ] ) and TC ( s ) Lag ℓ ( v | [ js /2, k ] ) differ on at least δ ( / − / a ) b locations by virtue of TC ( s ) Lag ℓ . Thus, TC Lag ℓ is a ( ℓ , s /2 ) -lagged tree code with distance δ ( / − / a ) . Step 3: tree code with polylogarithmic output alphabet
Finally, we superimpose several copies of theabove ( ℓ , O ( ℓ )) -lagged tree code for varying ℓ to get an explicit family of constant distance n -truncatedtree codes, { TC ( n ) } n with binary input alphabet and output alphabet of size O ( polylog ( n )) . Formally,there exists a family of alphabets { Γ n } n such that | Γ n | = polylog ( n ) with the following property. Thereexists a constant-distance tree code TC ( n ) : {
0, 1 } ( ≤ n ) → Γ ( ≤ n ) n such that the encoding functions areconstructible in time polynomial in n . TC ( n ) is a superimposition of polylog ( n ) many copies of the ( ℓ , O ( ℓ )) -lagged tree code for varying ℓ such that for any two strings u , v , it is always the case thatsplit ( u , v ) lies in the stipulated range for one of these codes which witnesses the distance. We describe TC ( n ) formally below.For concreteness let us take δ = a = ℓ = s in Lemma 3.7. Then for all s ≥ s δ we havea ( s , s /2 ) -lagged tree code with distance 1/16. In other words, for ℓ ≥ s we have a distance-1/16- ( ℓ , ℓ /72 ) -lagged tree code. To construct TC ( n ) we will superimpose the encodings of TC Lag ℓ i forall i ∈ {
1, . . . , j } where ℓ = s and ℓ i + = ℓ i /72 and ℓ j /72 = n , thus j = O ( log log ( n )) . Moreprecisely, for all x ∈ {
0, 1 } k let TC ( n ) ( x ) i = (( x | [ i − s , i ] ) , ( TC Lag ℓ ( x )) i , . . . , ( TC Lag ℓ j ( x )) i ) .Hence, TC ( n ) ( x ) ∈ Γ kn where | Γ n | = O ( polylog ( n )) and the encoding functions take time polynomial in n since each coordinate is computable in time polynomial in n . Remark 3.8.
The above construction yields a n -truncated tree code. To obtain a honest-to-god untrun-cated tree code, we observe that the Cohen-Haeupler-Schulman construction can be done incrementallyin the following sense. Propositions 3.4, 3.6 and 3.9 state that the initial part of the tree code encodingsare empty. Hence, we might begin with a constant-sized alphabet (without printing the ε ) and grow thealphabet as and when needed We assume that s is even for simplicity. We ignore divisibility issues for the sake of simplicity. roposition 3.9. For all x ∈ {
0, 1 } n , i ∈ [ n ] and g such that ℓ g > ( i + ) we have TC Lag ℓ g ( x ) i = ε . Hence, TC ( n ) ( x ) i ∈ Γ i where | Γ i | = O ( polylog ( i )) .Proof. From Proposition 3.6 (with a =
6) we know that TC Lag ℓ j ( x ) i = ε . In particular, we have that TC ( n ) ( x ) i = (( x | [ i − s , i ] ) , ( TC Lag ℓ ( x )) i , . . . , ( TC Lag ℓ g ( x )) i , ε , . . . , ε ) .Putting the above together we get that there exists a family of alphabets { Γ n } n such that | Γ n | = O η ( polylog ( n )) with the following property. Let Γ = ∪ n Γ n . There exists a tree code TC : {
0, 1 } ∗ → Γ ∗ such that the encoding functions ϕ i satisfy satisfy ϕ i : {
0, 1 } i → Γ i . Furthermore, the encoding functions ϕ n are constructible in time polynomial in n . Theorem 3.10.
There exists a family of alphabets { Γ n } n such that | Γ n | = O η ( polylog ( n )) with the followingproperty. Let Γ = ∪ n Γ n . There exists a tree code TC : {
0, 1 } ∗ → Γ ∗ with distance / such that the encod-ing functions ϕ i satisfy ϕ i : {
0, 1 } i → Γ i . Furthermore, the encoding functions ϕ n are constructible in timepolynomial in n.Proof. The tree code we consider is the tree code TC as mentioned above the theorem statement. Wehave already shown that TC : {
0, 1 } ∗ → Γ ∗ is such that the encoding functions ϕ i satisfy ϕ i : {
0, 1 } i → Γ i . Furthermore, the encoding functions ϕ n are constructible in time polynomial in n .Next, we show that the distance of TC ( n ) is at least 1/16. Consider u , v ∈ {
0, 1 } k and let b = k − split ( u , v ) . If b ≤ s then for all i ∈ { split ( u , v ) + k } we have ( TC ( n ) ( u )) i = ( TC ( n ) ( v )) i asthey differ in the first coordinate. Now, suppose ℓ i ≤ b ≤ ℓ i /72 for some 1 ≤ i ≤ j . Then, by virtue of TC Lag ℓ i we know that ∆ ( TC ( n ) ( u ) , TC ( n ) ( v )) b ≥ δ TC ( n ) ≥ r / ( r + s ) treecode over the integers for any r , s ∈ N . If we use this tree code in the procedure detailed in the proofof Theorem 3.10 we obtain TC ( n ) with distance (cid:16) − O (cid:16) rr + s − O (cid:16) a (cid:17)(cid:17) δ (cid:17) where δ is the distance of C inProposition 3.3 and a = ℓ / s is as describe in the proof of Lemma 3.5. Hence, by choosing r / ( r + s ) and δ close to 1 and a large enough we have established Theorem 1.2, which is restated below for convenience. Theorem 1.2 (explicit tree codes with polylog alphabet [CHS18]) . For all η ∈ [
0, 1 ) there exists a family ofalphabets { Γ n } n such that | Γ n | = O η ( polylog ( n )) with the following property. Let Γ = ∪ n Γ n . There exists atree code TC : {
0, 1 } ∗ → Γ ∗ with distance η such that the encoding functions ϕ i satisfy satisfy ϕ i : {
0, 1 } i → Γ i .Furthermore, the encoding functions ϕ n are constructible in time polynomial in n. Recall that the TC Z of Theorem 2.9 used in Corollary 3.1 was an explicit tree code over the integers TC Z : Z Z ≥ ≥ → ( Z ≥ ) Z ≥ with distance at least 1/2 satisfying the property that for any n ∈ Z > and i ∈ {
0, 1 . . . , n } , we have | ( TC Z ( a , . . . , a n )) i | ≤ n max j | a j | . This in turn was used in step 1 of thereduction process to small alphabets. If instead our TC Z had the property that | ( TC Z ( a , . . . , a n )) i ) | ≤ polylog ( n ) max j | a j | , then the above reduction process to small alphabets would actually yield constant-sized alphabets. Since, TC Z of Theorem 2.9 was obtained using a totally-non-singular lower-triangularmatrix (specifically the Pascal Matrix), we are led to the following question about the existence of such n × n matrices with entries only 2 polylog ( n ) which if true would imply tree codes with constant distanceand constant-sized alphabets. Furthermore, if the matrices are explicit then we would get explicit treecodes with constant distance and constant-sized alphabets. Strictly speaking, | ( TC Z ( a , . . . , a n )) i ) | ≤ f ( n ) max j | a j | yields a tree code whose (relative) ( f ( n ) , n f ( n )) -lagged distance isconstant. Thus, any function f ( n ) would suffice for constant-sized alphabets as long as we can show that there exists a constant c such that g ◦ g ◦ . . . ◦ g | {z } c − times ( n ) = O ( log log ( n )) where g ( n f ( n )) = f ( n ) . uestion 1 (Existence of totally-non-singular lower-triangular matrices over small alphabets) . Are theren × n totally-non-singular lower-triangular matrices as defined in Definition 2.3 with entries of size O ( polylog ( n ) ) .Further, are there such matrices which are explicit? (Pudlák [Pud16, Problem 1] states this question askingwhether the entries of such a matrix can be poly ( n ) .) The next question asks about the decoding process to accompany the constant-distance tree codesof Theorem 1.2.
Question 2 (Efficient decoding of tree codes) . Is there an efficient decoding procedure for the tree codes ofTheorem 1.2 which corrects a constant fraction of errors?
There has been recent work on this question by Narayanan and Weidner [NW20]. The authors usea randomized polynomial time decoding algorithm to correct errors which scale roughly as the blocklength to the three-fourths power, falling short of the constant fraction error correction guaranteed bythe constant distance.
Acknowledgements
We thank Madhu Sudan for various discussions while preparing this exposition, in particular, we thankhim for suggesting the alternate construction of distance / -tree codes over the integers mentioned afterClaim 2.5. References [CHS18] G IL C OHEN , B
ERNHARD H AEUPLER , and L
EONARD
J. S
CHULMAN . Explicit binary tree codes with polylogarithmic size alphabet . In
Proc. th ACM Symp. on Theory of Com-puting (STOC) , pages 535–544. 2018. eccc:2018/TR18-032 . 2, 5, 6, 9[Gel17] R AN G ELLES . Coding for interactive communication: A survey . Foundations and Trends in Theoretical Com-puter Science, 13(1-2):1–157, 2017. doi:10.1561/0400000079 . 2[GV85] I RA G ESSEL and G
ÉRARD V IENNOT . Binomial determinants, paths, and hook length formulae . Adv. Math.,58(3):300 – 321, 1985. 5[Lin73] B
ERNT L INDSTRÖM . On the vector representations of induced matroids . Bull. Lond. Math. Soc., 5(1):85–90,1973. 5[NW20] A
NAND K UMAR N ARAYANAN and M
ATTHEW W EIDNER . On decoding Cohen-Haeupler-Schulman tree codes .In
Proc. st Annual ACM-SIAM Symp. on Discrete Algorithms (SODA) , pages 1337–1356. 2020. arXiv:1909.07413 . 10[Pud16] P AVEL P UDLÁK . Linear tree codes and the problem of explicit constructions . Linear Algebra and its Applica-tions, 490:124–144, 2016. arXiv:1310.5684 . 2, 3, 4, 6, 10[Sch96] L
EONARD
J. S
CHULMAN . Coding for interactive communication . IEEE Trans. Inform. Theory, 42(6):1745–1756, 1996. (Preliminary version in 33rd FOCS, 1992). 1, 3. IEEE Trans. Inform. Theory, 42(6):1745–1756, 1996. (Preliminary version in 33rd FOCS, 1992). 1, 3