Welcome to the Matrix Kingdom.

Matrix code
Encodes \(K\) states (codewords) in an \(m\times n\)-dimensional matrix of coordinates over a field (e.g., the Galois field \(GF(q)\) or the complex numbers \(\mathbb{C}\)).
Parents:
Error-correcting code (ECC).
Parent of:
Rank-metric code, Regenerating code (RGC), Spacetime code (STC).

Gabidulin code[1][2]
Also called a vector rank-metric code. A linear code over \(GF(q^N)\) that corrects errors over rank metric instead of the traditional Hamming distance. Every element \(GF(q^N)\) can be written as an \(N\)-dimensional vector with coefficients in \(GF(q)\), and the rank of a set of elements is rank of the matrix formed by their coefficients.
Protection: Set of vectors \(\{x_1, x_2, \ldots, x_M\}\) determines a rank code with distance \(d=\min d(x_i, x_j)\). The code with distance \(d\) corrects all errors with rank of the error not greater than \(\lfloor (d-1)/2\rfloor\).
Parents:
Linear \(q\)-ary code, Rank-metric code.
Cousins:
Maximum-rank distance (MRD) code.

Rank-metric code[3]
Also called a Delsarte code. Each codeword is a matrix over \(GF(q)\), with codewords forming a \(GF(q)\)-linear subspace, and with the metric being the rank of the difference of matrices. The distance \(d\) is the minimum rank of all nonzero matrices in the code. Rank-metric codes on \(n\times m\) matrices are denoted as \([n\times m,k,d]_q\).
Protection: Protects against errors with rank \(\leq \lfloor \frac{d-1}2 \rfloor\).
Parents:
Matrix code.
Parent of:
Gabidulin code, Maximum-rank distance (MRD) code.

Regenerating code (RGC)
Stub.
Parents:
Distributed-storage code, Matrix code.
Parent of:
Minimum-bandwidth regenerating (MBR) code, Minimum-storage regenerating (MSR) code.

Spacetime code (STC)[4]
Code designed for wireless transmission of information (via, e.g., radio waves) such that the sender can send multiple times from multiple locations. A spacetime code uses a modulation scheme to encode a message into signals that are sent at different times through different antennas, thereby utilizing both spatial and temporal (i.e., spacetime) degrees of freedom.
Parents:
Matrix code.
Parent of:
Spacetime block code (STBC).
Cousin of:
Codeword stabilized (CWS) code, Homological bosonic code.

Maximum-rank distance (MRD) code[3][5][2]
Also called an optimal rank-distance code. An \([n\times m,k,d]_q\) rank-metric code whose parameters are such that the Singleton-like bound
\begin{align}
k \leq \max(n, m) (\min(n, m) - d + 1)
\end{align}
become an equality.
Parents:
Rank-metric code.
Cousins:
Maximum distance separable (MDS) code, Reed-Solomon (RS) code.
Cousin of:
Gabidulin code.

Spacetime block code (STBC)[6]
In a space-time block code, \(n\) spatially separated channels transmit symbols in \(T\) time slots. These symbols can be arranged in a \(T\times n\) matrix where the columns correspond to the channels, and the rows correspond to the time slots. The codewords \(\{X\}\) are \(T\times n\) matrices such that the codeword difference matrices have rank \(n\), and \(\min_{X\neq 0}\det(XX^*)\) is maximized.
Protection: Provides protection against errors due to thermal noise and destructive interference arising from traversing an environment with scattering, reflection, and/or refraction.
Parents:
Spacetime code (STC).
Parent of:
Orthogonal Spacetime Block Code (OSTBC).

Orthogonal Spacetime Block Code (OSTBC)[6]
The codewords are \(T\times n\) matrices as defined for spacetime codes, with the additional condition that columns of the coding matrix are orthogonal. The parameter \(n\) is the number of channels, and \(T\) is the number of time slots.
Protection: If the matrix \(C-C'\), where \(C\) and \(C'\) are distinct codewords, has minimum rank \(b\), the code has diversity order \(bn_R\) (see Ref. [7], Sec. 28.2.1), where \(n_R\) is the number of receivers. The maximum possible diversity order is \(nn_R\).
Parents:
Spacetime block code (STBC).
Parent of:
Alamouti code.

Alamouti code[6]
The simplest OSTBC, with two time slots, two channels, and with unitary coding matrix
\begin{align}
\begin{pmatrix}c_{1} & c_{2}\\
-c_{2}^{\star} & c_{1}^{\star}
\end{pmatrix}~,
\end{align}
where \(c_i\) are complex numbers.
Parents:
Orthogonal Spacetime Block Code (OSTBC).

## References

- [1]
- E. M. Gabidulin, Theory of Codes with Maximum Rank Distance, Problemy Peredachi Informacii, Volume 21, Issue 1, 3–16 (1985)
- [2]
- R. M. Roth, “Maximum-rank array codes and their application to crisscross error correction”, IEEE Transactions on Information Theory 37, 328 (1991). DOI
- [3]
- P. Delsarte, “Bilinear forms over a finite field, with applications to coding theory”, Journal of Combinatorial Theory, Series A 25, 226 (1978). DOI
- [4]
- V. Tarokh, N. Seshadri, and A. R. Calderbank, “Space-time codes for high data rate wireless communication: performance criterion and code construction”, IEEE Transactions on Information Theory 44, 744 (1998). DOI
- [5]
- E. M. Gabidulin, "Theory of Codes with Maximum Rank Distance", Problemy Peredachi Informacii, Volume 21, Issue 1, 3–16 (1985)
- [6]
- S. M. Alamouti, “A simple transmit diversity technique for wireless communications”, IEEE Journal on Selected Areas in Communications 16, 1451 (1998). DOI
- [7]
- W. C. Huffman, J.-L. Kim, and P. Solé, Concise Encyclopedia of Coding Theory (Chapman and Hall/CRC, 2021). DOI