IsNormal
A matrix U is normal when it commutes with its conjugate transpose, satisfying U^* U = U U^*. Linear algebra researchers and quantum information theorists cite this predicate when classifying operators that admit unitary diagonalization. The definition is introduced as a direct equality with no lemmas or reduction steps.
claimA matrix $U : M_{m,m}(α)$ is normal if $U^† U = U U^†$.
background
The module supplies lightweight, version-stable predicates for unitary and normal matrices in place of Mathlib variants. Unitary requires both left and right inverses under conjugation: $U^† U = I$ and $U U^† = I$. Normality requires only commutation with the adjoint. Upstream results supply the RS-native gauge U (tau0 = 1 tick, ell0 = 1 voxel, c = 1) and the Recognition.U structure that encodes the base recognition relation by structural equality.
proof idea
The definition is introduced directly as the equality U.conjTranspose * U = U * U.conjTranspose. The companion theorem IsUnitary.isNormal unfolds the definition and rewrites using the two unitary conditions to obtain the normal equality.
why it matters in Recognition Science
This definition supports the sibling IsUnitary predicate and its isNormal theorem inside the same module. It supplies a stable algebraic tool in the Support domain for operator properties that remain independent of Mathlib version changes. No direct link to the T0-T8 forcing chain or Recognition Composition Law appears, yet the predicate remains available for any matrix representations required by downstream Recognition Science constructions.
scope and limits
- Does not prove diagonalizability or spectral theorems for normal matrices.
- Does not restrict the scalar field or ring α.
- Does not supply algorithms or computational realizations.
- Does not assume finite matrix dimensions beyond the type parameters m.
formal statement (Lean)
28def IsNormal (U : Matrix m m α) : Prop :=
proof body
Definition body.
29 U.conjTranspose * U = U * U.conjTranspose
30
31theorem IsUnitary.isNormal {U : Matrix m m α} (h : IsUnitary U) : IsNormal U := by
32 unfold IsNormal
33 rw [h.1, h.2]
34
35end Matrix