Two Different Matrix Conditions
For a real square matrix, symmetry and normality are defined by different equations. Symmetry asks whether transposing the matrix leaves it unchanged. Normality asks whether two products, formed in opposite orders from the matrix and its transpose, agree. These conditions are related, but they are not interchangeable: a symmetry check compares entries of one matrix, while a normality check requires computing and comparing two matrix products.
Throughout this tutorial, \(\mathbf{A}\) is an \(n\times n\) real matrix, and vectors are columns in \(\mathbb{R}^n\). The transpose \(\mathbf{A}^{\top}\) is obtained by interchanging rows and columns. Matrix multiplication gives both \(\mathbf{A}^{\top}\mathbf{A}\) and \(\mathbf{A}\mathbf{A}^{\top}\) as \(n\times n\) matrices.
Both products in the normality condition are symmetric matrices: \((\mathbf{A}^{\top}\mathbf{A})^{\top}=\mathbf{A}^{\top}\mathbf{A}\), and \((\mathbf{A}\mathbf{A}^{\top})^{\top}=\mathbf{A}\mathbf{A}^{\top}\). But being symmetric separately does not make the two products equal. Normality requires equality entry by entry, in the same row and column positions.
Reading the Products Through Rows and Columns
Write the columns of \(\mathbf{A}\) as \(\mathbf{a}_1,\dots,\mathbf{a}_n\). The entry in row \(i\), column \(j\) of \(\mathbf{A}^{\top}\mathbf{A}\) is \(\mathbf{a}_i^{\top}\mathbf{a}_j\), the dot product of columns \(i\) and \(j\). If the rows of \(\mathbf{A}\) are viewed as vectors in \(\mathbb{R}^n\), then the entry in row \(i\), column \(j\) of \(\mathbf{A}\mathbf{A}^{\top}\) is the dot product of rows \(i\) and \(j\). Thus the normality test compares the full array of column dot products with the full array of row dot products.
Proof. By the rule for matrix multiplication, the entry in position \((i,j)\) of \(\mathbf{A}^{\top}\mathbf{A}\) is \(\sum_{k=1}^{n}(\mathbf{A}^{\top})_{ik}a_{kj}\). Since \((\mathbf{A}^{\top})_{ik}=a_{ki}\), this entry equals \(\sum_{k=1}^{n}a_{ki}a_{kj}\). The entry in position \((i,j)\) of \(\mathbf{A}\mathbf{A}^{\top}\) is \(\sum_{k=1}^{n}a_{ik}(\mathbf{A}^{\top})_{kj}=\sum_{k=1}^{n}a_{ik}a_{jk}\). Two matrices are equal exactly when all their entries in corresponding positions are equal. Therefore the two products are equal exactly when the displayed condition holds for every \(i,j\). For \(i=j\), the left side is the sum of squares in column \(i\), and the right side is the sum of squares in row \(i\). \(\square\)
The diagonal tests alone are necessary but not generally sufficient: even if corresponding rows and columns have matching lengths, the off-diagonal dot products must also match. The examples below show why computing both full products, rather than checking only lengths, is a reliable test.
Worked Normality Tests
Worked Example: A Symmetric Matrix That Passes the Test
Test whether \(\mathbf{A}=\begin{bmatrix}1&2\\2&0\end{bmatrix}\) is normal. First, \(\mathbf{A}^{\top}=\begin{bmatrix}1&2\\2&0\end{bmatrix}=\mathbf{A}\), so it is symmetric. Compute the two products directly:
For the other order, the transpose is the same matrix, so
The products agree, so this particular matrix is normal as well as symmetric. Check: both products have entries \(5,2,2,4\) in the same positions, confirming \(\mathbf{A}^{\top}\mathbf{A}=\mathbf{A}\mathbf{A}^{\top}\).
Worked Example: A Nonsymmetric Matrix That Is Not Normal
Let \(\mathbf{B}=\begin{bmatrix}1&2\\0&1\end{bmatrix}\). Since \(\mathbf{B}^{\top}=\begin{bmatrix}1&0\\2&1\end{bmatrix}\ne\mathbf{B}\), the matrix is not symmetric. To test normality, multiply both orders rather than deciding from its nonsymmetry:
The products differ in their diagonal entries, so \(\mathbf{B}\) is not normal. Check: the columns of \(\mathbf{B}\) are \((1,0)^{\top}\) and \((2,1)^{\top}\), with squared lengths \(1\) and \(5\); the rows have squared lengths \(5\) and \(1\). These disagree in corresponding positions, just as the diagonal entries of the products do.
Worked Example: A Parameter Family With No Normal Member
For real \(t\), determine whether any matrix in the family \(\mathbf{C}_t=\begin{bmatrix}t&1\\0&t\end{bmatrix}\) is normal. Its transpose is \(\mathbf{C}_t^{\top}=\begin{bmatrix}t&0\\1&t\end{bmatrix}\). Computing both products gives
Equality would require \(t^2=t^2+1\) in the upper-left entry, which would imply \(0=1\). No real \(t\) satisfies this, so no matrix in the family is normal. Check: the off-diagonal entries do agree, but the two diagonal entries in each position differ by \(1\); hence the products never agree as matrices.
A Norm Test for Normality
The product equation also has a useful interpretation in terms of how a matrix changes vector lengths. For \(\mathbf{x}\in\mathbb{R}^n\), the squared Euclidean norm is \(\|\mathbf{x}\|^2=\mathbf{x}^{\top}\mathbf{x}\). Thus \(\|\mathbf{A}\mathbf{x}\|^2=\mathbf{x}^{\top}\mathbf{A}^{\top}\mathbf{A}\mathbf{x}\), while \(\|\mathbf{A}^{\top}\mathbf{x}\|^2=\mathbf{x}^{\top}\mathbf{A}\mathbf{A}^{\top}\mathbf{x}\). This gives the following equivalence.
Proof. Suppose first that \(\mathbf{A}\) is normal. Then \(\mathbf{A}^{\top}\mathbf{A}=\mathbf{A}\mathbf{A}^{\top}\), so for every \(\mathbf{x}\in\mathbb{R}^n\), \[ \|\mathbf{A}\mathbf{x}\|^2 =\mathbf{x}^{\top}\mathbf{A}^{\top}\mathbf{A}\mathbf{x} =\mathbf{x}^{\top}\mathbf{A}\mathbf{A}^{\top}\mathbf{x} =\|\mathbf{A}^{\top}\mathbf{x}\|^2. \] Norms are nonnegative, so equality of their squares implies equality of the norms. Conversely, suppose \(\|\mathbf{A}\mathbf{x}\|=\|\mathbf{A}^{\top}\mathbf{x}\|\) for every \(\mathbf{x}\). Squaring and using the norm identities gives \[ \mathbf{x}^{\top}\mathbf{S}\mathbf{x}=0 \quad\text{for every }\mathbf{x}, \qquad \mathbf{S}=\mathbf{A}^{\top}\mathbf{A}-\mathbf{A}\mathbf{A}^{\top}. \] The matrix \(\mathbf{S}\) is symmetric, since each of its two terms is symmetric. Let \(\mathbf{e}_i\) be the standard basis vector with \(1\) in position \(i\) and \(0\) elsewhere. Substituting \(\mathbf{x}=\mathbf{e}_i\) gives \(s_{ii}=0\) for every \(i\). For \(i\ne j\), substitute \(\mathbf{x}=\mathbf{e}_i+\mathbf{e}_j\). Then \[ 0=(\mathbf{e}_i+\mathbf{e}_j)^{\top}\mathbf{S}(\mathbf{e}_i+\mathbf{e}_j) =s_{ii}+s_{ij}+s_{ji}+s_{jj}=2s_{ij}, \] because \(s_{ii}=s_{jj}=0\) and \(s_{ji}=s_{ij}\). Over \(\mathbb{R}\), this implies \(s_{ij}=0\). Every entry of \(\mathbf{S}\) is therefore zero, so \(\mathbf{A}^{\top}\mathbf{A}=\mathbf{A}\mathbf{A}^{\top}\), as required. \(\square\)
The quantifier “for every \(\mathbf{x}\)” matters. Checking the norm equality for a few selected vectors can provide evidence, but it does not establish normality. The proof works because equality for all vectors forces every entry of the symmetric difference matrix \(\mathbf{S}\) to vanish.
A Short Criterion for Two-by-Two Matrices
For a real \(2\times2\) matrix, the normality equations simplify enough to use without multiplying two full matrices each time. The simplification still comes from comparing all entries, not from symmetry alone.
Proof. Direct multiplication gives \[ \mathbf{A}^{\top}\mathbf{A} = \begin{bmatrix} a^2+c^2&ab+cd\\ ab+cd&b^2+d^2 \end{bmatrix}, \qquad \mathbf{A}\mathbf{A}^{\top} = \begin{bmatrix} a^2+b^2&ac+bd\\ ac+bd&c^2+d^2 \end{bmatrix}. \] Equality of the upper-left entries is equivalent to \(c^2=b^2\). Equality of the lower-right entries gives \(b^2=c^2\), the same condition. Equality of the off-diagonal entries is \(ab+cd=ac+bd\). Subtracting the right side from the left gives \(ab+cd-ac-bd=(a-d)(b-c)\), so the off-diagonal condition is exactly \((a-d)(b-c)=0\). The lower-left entries repeat the off-diagonal condition. Thus the two matrices are equal exactly when both stated equations hold. \(\square\)
This criterion can narrow a test quickly, but its two conditions must both be checked. A common error is to stop after checking \(b^2=c^2\), which only ensures that the diagonal entries of the two products match. The remaining condition compares the off-diagonal entries.
Common Pitfall: Symmetry Is Not the Normality Equation
A frequent mistake is to decide that a matrix is normal merely because both \(\mathbf{A}^{\top}\mathbf{A}\) and \(\mathbf{A}\mathbf{A}^{\top}\) are symmetric. For the matrix \(\mathbf{B}\) from the earlier example, the incorrect argument might be: “Both products are symmetric, so they are equal.” The actual computation shows otherwise:
Each displayed product is symmetric, but the upper-left entries are \(1\) and \(5\), so the products are not equal. The correction is to compare corresponding entries of the two products, or to use a proved equivalent test such as the norm test. Symmetry itself is checked separately by comparing \(\mathbf{A}^{\top}\) with \(\mathbf{A}\); it is not a substitute for the normality calculation.
For a practical test, keep the distinctions clear:
- To test symmetry, compute or inspect \(\mathbf{A}^{\top}\) and compare it with \(\mathbf{A}\).
- To test normality, compute \(\mathbf{A}^{\top}\mathbf{A}\) and \(\mathbf{A}\mathbf{A}^{\top}\), then compare them.
- For a real \(2\times2\) matrix, check both equations in the two-by-two criterion.
Normality packages a relationship between a matrix and its transpose into one exact equation. The row-and-column interpretation helps diagnose where a failure occurs, while the norm test expresses the same condition through the action on every vector. Neither interpretation changes the basic requirement: the two products must agree as matrices.
Check Your Understanding
Use exact computations and state which defining condition each question asks about.
- Test whether \(\begin{bmatrix}2&1\\1&2\end{bmatrix}\) is normal by computing both products.
- For \(\begin{bmatrix}1&3\\0&1\end{bmatrix}\), compare the squared lengths of corresponding rows and columns. Does that alone decide normality?
- Use the two-by-two criterion to test \(\begin{bmatrix}2&1\\-1&2\end{bmatrix}\) for normality.
- Explain why equality of \(\|\mathbf{A}\mathbf{x}\|\) and \(\|\mathbf{A}^{\top}\mathbf{x}\|\) for one vector does not establish normality.
- For a real \(2\times2\) matrix, state the two scalar conditions equivalent to normality.