## Description

Encodes \(K\) states (codewords) in \(n\) \(q\)-ary coordinates over the field \(GF(q)\), i.e., \(q\)-ary strings. Error-correcting performance is quantified by some distance \(d\), which in turn is defined using a metric. The default distance is the Hamming distance \(d\), the weight (i.e., number of nonzero coordinates) of the lowest-weight nonzero codeword; such codes are usually denoted as \((n,K,d)_q\). The corresponding Hamming metric between two \(q\)-ary strings is the number of coordinates in which they differ. Unless stated otherwise, the distance for this class is the Hamming distance.

Two \(q\)-ary codes are equivalent if the codewords of one code can be mapped into those of the other under a combination of a coordinate permutation and a permutation of the elements of each coordinate. The full group of such composite permutations is \(S_q \wr S_n\) [2][1; Def. 1.8.8].

## Protection

A code detects errors on up to \(d-1\) coordinates, corrects erasure errors on up to \(d-1\) coordinates, and corrects general errors on up to \(\left\lfloor (d-1)/2 \right\rfloor\) coordinates. Often, the relative distance \(\delta=d/n\) is used to compare codes of different lengths.

### Noise channels

Noise channels include the symmetric noise channel, asymmetric noise channels [3–7], and insertion/deletion noise.

### Weight enumerator and four fundamental parameters

Weight enumerator: Determining protection and bounds on code parameters can also be done using the code's weight enumerator (cf. quantum weight enumerators), \begin{align} \begin{split} A(x,y)&=\sum_{j=0}^{n}A_{j}x^{n-j}y^{j}\\ A_{j}&=\text{number of wt-}j\text{ codewords}~. \end{split} \tag*{(1)}\end{align} The weight enumerator and it's Fourier transform the dual weight enumerator satisfy the MacWilliams identity [8,9]; see [10; Ch. 5].

The distance of the code is the value of the first nonzero coefficient \(A_j\), while the dual distance is the first nonzero coefficient of the dual weight enumerator. The number of the code is the number of nonzero \(A_j\)'s, corresponding to the number of distinct nonzero distances between codewords. The external distance is the number of nonzero coefficients of the dual weight enumerator. The distance, dual distance, number and external distance make up the four fundamental parameters of a code [11][10; Ch. 5].

Other types of weight enumerators includes the Hamming weight enumerator, Lee weight enumerator, joint weight enumerator, split weight enumerator, and biweight enumerator [10].

### Bounds on code parameters

Bounds on the parameters of an \((n,K,d)_q\) code include the Hamming a.k.a. sphere-packing bound, Singleton bound, Gilbert-Varshamov (GV) bound, Griesmer bound, Plotkin bound, Johnson bound, and various linear programming (LP) bounds; see [1]. A code whose parameters attain the Hamming bound (Singleton bound, Griesmer bound, Johnson bound, Delsarte LP bound) is called a perfect code (an MDS code, a Griesmer code, a nearly perfect code, an LP universally optimal code).

Gilbert-Varshamov (GV) bound: The Gilbert-Varshamov [12,13], or Gilbert-Shannon-Varshamov, bound states that the maximum size \(K\) of a \(q\)-ary code with distance \(d\) satisfies \begin{align} K\sum_{j=0}^{d-1}{n \choose j}(q-1)^{j}\geq q^{n}~. \tag*{(2)}\end{align} In other words, if the left-hand side of the above is less than or equal to the right-hand side, then a code with such parameters exists. The GV bound gives rise to the asymptotic GV bound (i.e., GV bound in the \(n\to\infty\) limit), expressed in terms of the maximum achievable rate \(R\) and relative distance \(\delta\), \begin{align} R\geq 1-h_{q}(\delta)~, \tag*{(3)}\end{align} where \(h_q\) is the \(q\)-ary entropy function, \begin{align} h_{q}(\delta)=-\delta\log_{q}\frac{\delta}{q-1}-(1-\delta)\log_{q}(1-\delta)~. \tag*{(4)}\end{align}

## Rate

## Decoding

## Notes

## Parent

- Ring code — Galois fields are rings under addition.

## Children

- Binary code
- Additive \(q\)-ary code
- Algebraic-geometry (AG) code
- Editing code
- Poset code
- Sequential-recovery code
- One-versus-one (OVO) code
- Lexicographic code
- Matrix-product code
- Orthogonal array (OA) — There is a relation between \(q\)-ary codes and orthogonal arrays which is phrased in terms of the codes' dual distance [11; Thm. 4.5][18; Thm. 4.9].
- Weighed-covering code
- Completely regular code
- Subspace design
- Universally optimal \(q\)-ary code
- Balanced code

## Cousins

- Matrix-based code — Elements of fields such as \(GF(p^{ml})\) can be written as \(m\)-dimensional vectors over \(GF(p^l)\) or \((m\times l)\)-dimensional matrices over \(GF(p)\). This idea is used to convert between ordinary block codes and matrix-based codes such as disk array codes and rank-metric codes.
- Combinatorial design — Designs can be constructed from \(q\)-ary codes by taking the supports of a subset of codewords of constant weight.
- Constantin-Rao (CR) code — CR codes, and their special cases the VT codes, can be converted to ternary codes with nice structure via a binary-to-ternary map \(00\to 0\), \(11\to 0\), \(01\to 1\), and \(10\to 2\) [19].
- Traceability code — A \(q\)-ary code with distance \(d \geq n(1-1/t^2)\) has the \(t\)-traceability property [20; Thm. 4.3].
- Convolutional code — Convolutional codes for finite block size are \(q\)-ary codes.
- Polyphase code — Polyphase codes are spherical codes that can be obtained from \(q\)-ary codes.

## References

- [1]
- W. C. Huffman, J.-L. Kim, and P. Solé, "Basics of coding theory." Concise Encyclopedia of Coding Theory (Chapman and Hall/CRC, 2021) DOI
- [2]
- P. R. J. Östergård, "Construction and Classification of Codes." Concise Encyclopedia of Coding Theory (Chapman and Hall/CRC, 2021) DOI
- [3]
- Varshamov, R. R. "Some features of linear codes that correct asymmetric errors." Soviet Physics Doklady. Vol. 9. 1965.
- [4]
- R. Varshamov, “A class of codes for asymmetric channels and a problem from the additive theory of numbers”, IEEE Transactions on Information Theory 19, 92 (1973) DOI
- [5]
- S. D. Constantin and T. R. N. Rao, “On the theory of binary asymmetric error correcting codes”, Information and Control 40, 20 (1979) DOI
- [6]
- Kløve, Torleiv. Error correcting codes for the asymmetric channel. Department of Pure Mathematics, University of Bergen, 1981.
- [7]
- T. Kløve, Codes for Error Detection (WORLD SCIENTIFIC, 2007) DOI
- [8]
- J. Macwilliams, “A Theorem on the Distribution of Weights in a Systematic Code†”, Bell System Technical Journal 42, 79 (1963) DOI
- [9]
- F. J. MacWilliams, N. J. A. Sloane, and J.-M. Goethals, “The MacWilliams Identities for Nonlinear Codes”, Bell System Technical Journal 51, 803 (1972) DOI
- [10]
- F. J. MacWilliams and N. J. A. Sloane. The theory of error correcting codes. Elsevier, 1977.
- [11]
- P. Delsarte, “Four fundamental parameters of a code and their combinatorial significance”, Information and Control 23, 407 (1973) DOI
- [12]
- E. N. Gilbert, “A Comparison of Signalling Alphabets”, Bell System Technical Journal 31, 504 (1952) DOI
- [13]
- R. R. Varshamov, Estimate of the number of signals in error correcting codes, Dokl. Akad. Nauk SSSR Soviet Math. - Doklady 117 (1957), 739–741.
- [14]
- M. Aaltonen, “A new upper bound on nonbinary block codes”, Discrete Mathematics 83, 139 (1990) DOI
- [15]
- Andries E. Brouwer, Bounds on linear codes, in: Vera S. Pless and W. Cary Huffman (Eds.), Handbook of Coding Theory, pp. 295-461, Elsevier, 1998.
- [16]
- B. Cambou and D. Telesca, “Ternary Computing to Strengthen Cybersecurity”, Advances in Intelligent Systems and Computing 898 (2018) DOI
- [17]
- S. Assiri et al., “Key Exchange using Ternary system to Enhance Security”, 2019 IEEE 9th Annual Computing and Communication Workshop and Conference (CCWC) (2019) DOI
- [18]
- A. S. Hedayat, N. J. A. Sloane, and J. Stufken, Orthogonal Arrays (Springer New York, 1999) DOI
- [19]
- M. Grassl et al., “New Constructions of Codes for Asymmetric Channels via Concatenation”, IEEE Transactions on Information Theory 61, 1879 (2015) arXiv:1310.7536 DOI
- [20]
- J. N. Staddon, D. R. Stinson, and Ruizhong Wei, “Combinatorial properties of frameproof and traceability codes”, IEEE Transactions on Information Theory 47, 1042 (2001) DOI

## Page edit log

- Victor V. Albert (2022-02-16) — most recent
- Victor V. Albert (2021-10-29)

## Cite as:

“\(q\)-ary code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2022. https://errorcorrectionzoo.org/c/q-ary_digits_into_q-ary_digits