ABSTRACT

In Chapter 8, we study the congruences with the restrictions xi ∈ {0,1}, that is, the congruences with binary solutions. Put it in coding theory language, we introduce the Binary Linear Congruence Code (BLCC) which includes several well-known classes of deletion/insertion correcting codes as special cases. For example, the Helberg code, the Levenshtein code, the Varshamov–Tenengolts code, and most variants of these codes including most of those which have been recently used in studying DNA-based data storage systems are all special cases of BLCC. We give an explicit formula for the weight enumerator of BLCC which in turn gives explicit formulas for the weight enumerators and so the sizes of all the aforementioned codes. As another application, we derive an explicit formula for the number of binary solutions of an \textit{arbitrary} linear congruence. These results might have more applications/implications in information theory, computer science, and mathematics.