pith. machine review for the scientific record. sign in

IndisputableMonolith.YM.Kernel

IndisputableMonolith/YM/Kernel.lean · 43 lines · 7 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: pending

   1import Mathlib
   2
   3namespace IndisputableMonolith
   4namespace YM
   5
   6noncomputable section
   7open Classical Complex
   8
   9structure TransferKernel (ι : Type) where
  10  T : (ι → ℂ) →L[ℂ] (ι → ℂ)
  11
  12structure MatrixView (ι : Type) [Fintype ι] [DecidableEq ι] where
  13  A : Matrix ι ι ℂ
  14
  15noncomputable def CLM.ofLM {ι : Type}
  16  (L : (ι → ℂ) →ₗ[ℂ] (ι → ℂ)) : (ι → ℂ) →L[ℂ] (ι → ℂ) :=
  17{ toLinearMap := L, cont := by exact ContinuousLinearMap.continuous _ }
  18
  19structure MatrixBridge (ι : Type) [Fintype ι] [DecidableEq ι]
  20  (K : TransferKernel ι) (V : MatrixView ι) where
  21  intertwine : K.T = CLM.ofLM (Matrix.toLin' V.A)
  22
  23def KernelHasMatrixView (ι : Type) [Fintype ι] [DecidableEq ι]
  24  (K : TransferKernel ι) (V : MatrixView ι) : Prop :=
  25  Nonempty (MatrixBridge ι K V)
  26
  27noncomputable def buildKernelFromMatrix (ι : Type) [Fintype ι] [DecidableEq ι]
  28  (V : MatrixView ι) : Σ K : TransferKernel ι, MatrixBridge ι K V :=
  29by
  30  let K : TransferKernel ι := { T := CLM.ofLM (Matrix.toLin' V.A) }
  31  exact ⟨K, { intertwine := rfl }⟩
  32
  33noncomputable def constantStochastic3x3 : MatrixView (Fin 3) :=
  34{ A := fun _ _ => ((1/3 : ℝ) : ℂ) }
  35
  36noncomputable def kernel3x3_with_bridge :
  37  Σ K : TransferKernel (Fin 3), MatrixBridge (Fin 3) K constantStochastic3x3 :=
  38  buildKernelFromMatrix (ι := Fin 3) constantStochastic3x3
  39
  40end
  41end YM
  42end IndisputableMonolith
  43

source mirrored from github.com/jonwashburn/shape-of-logic