Documentation

Mathlib.Analysis.Matrix.HermitianFunctionalCalculus

Continuous Functional Calculus for Hermitian Matrices #

This file defines an instance of the continuous functional calculus for Hermitian matrices over an RCLike field π•œ.

Main Results #

Tags #

spectral theorem, diagonalization theorem, continuous functional calculus

noncomputable def Matrix.IsHermitian.cfcAux {n : Type u_1} {π•œ : Type u_2} [RCLike π•œ] [Fintype n] [DecidableEq n] {A : Matrix n n π•œ} (hA : A.IsHermitian) :

The star algebra homomorphism underlying the instance of the continuous functional calculus of a Hermitian matrix. This is an auxiliary definition and is not intended for use outside of this file.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[simp]
    theorem Matrix.IsHermitian.cfcAux_apply {n : Type u_1} {π•œ : Type u_2} [RCLike π•œ] [Fintype n] [DecidableEq n] {A : Matrix n n π•œ} (hA : A.IsHermitian) (g : C(↑(spectrum ℝ A), ℝ)) :
    hA.cfcAux g = ((Unitary.conjStarAlgAut π•œ (Matrix n n π•œ)) hA.eigenvectorUnitary) (diagonal (RCLike.ofReal ∘ ⇑g ∘ fun (i : n) => ⟨hA.eigenvalues i, β‹―βŸ©))
    theorem Matrix.IsHermitian.isClosedEmbedding_cfcAux {n : Type u_1} {π•œ : Type u_2} [RCLike π•œ] [Fintype n] [DecidableEq n] {A : Matrix n n π•œ} (hA : A.IsHermitian) :
    theorem Matrix.IsHermitian.cfcAux_id {n : Type u_1} {π•œ : Type u_2} [RCLike π•œ] [Fintype n] [DecidableEq n] {A : Matrix n n π•œ} (hA : A.IsHermitian) :

    Instance of the continuous functional calculus for a Hermitian matrix over π•œ with RCLike π•œ.

    noncomputable def Matrix.IsHermitian.cfc {n : Type u_1} {π•œ : Type u_2} [RCLike π•œ] [Fintype n] [DecidableEq n] {A : Matrix n n π•œ} (hA : A.IsHermitian) (f : ℝ β†’ ℝ) :
    Matrix n n π•œ

    The continuous functional calculus of a Hermitian matrix as a triple product using the spectral theorem. Note that this actually operates on bare functions since every function is continuous on the spectrum of a matrix, since the spectrum is finite. This is shown to be equal to the generic continuous functional calculus API in Matrix.IsHermitian.cfc_eq. In general, users should prefer the generic API, especially because it will make rewriting easier.

    Equations
    Instances For
      theorem Matrix.IsHermitian.cfcHom_eq_cfcAux {n : Type u_1} {π•œ : Type u_2} [RCLike π•œ] [Fintype n] [DecidableEq n] {A : Matrix n n π•œ} (hA : A.IsHermitian) :
      cfcHom β‹― = hA.cfcAux
      theorem Matrix.IsHermitian.cfc_eq {n : Type u_1} {π•œ : Type u_2} [RCLike π•œ] [Fintype n] [DecidableEq n] {A : Matrix n n π•œ} (hA : A.IsHermitian) (f : ℝ β†’ ℝ) :
      cfc f A = hA.cfc f
      theorem Matrix.IsHermitian.charpoly_cfc_eq {n : Type u_1} {π•œ : Type u_2} [RCLike π•œ] [Fintype n] [DecidableEq n] {A : Matrix n n π•œ} (hA : A.IsHermitian) (f : ℝ β†’ ℝ) :
      (cfc f A).charpoly = ∏ i : n, (Polynomial.X - Polynomial.C ↑(f (hA.eigenvalues i)))