“…The first stage is algebraic and gives local tests for algebraic codes, usually based on multivariate polynomials. This is based on a rich collection of results on "linearity testing" or "low-degree testing" [1,3,4,5,6,7,8,9,13,14,16,17,18,20,23,25]. This first stage either yielded codes of poor rate (mapping k information symbols to codewords of length exp(k)) as in [14], or yielded codes over large alphabets as in [25].…”