Documentation

LeanPool.MatrixMultiplicationAllFields.LinearAlgebra.MatrixMultiplication.AuxiliarySeparation.Character.Basic

Characters of finite tensors over K #

The tensor operations in this file are the coefficient operations from MatrixMultiplication.Foundation.Tensor. A character is an assumption on those operations, not an assertion that a character exists. Restriction monotonicity forces invariance under independent invertible changes of coordinates, so this interface descends to the mutual-restriction classes of Section 3 of the paper.

The direct sum of r scalar multiplication tensors, in diagonal coordinates.

Equations
Instances For

    A normalized, additive, multiplicative, restriction-monotone tensor valuation.

    Index types vary over all finite types in Type. No character-existence result is included among the fields or claimed by this definition.

    Instances For
      theorem MatrixMultiplicationAllFields.MatrixMultiplication.AuxiliarySeparation.Character.value_pullback_le {K : Type} [Field K] (χ : Character K) {X Y Z X' Y' Z' : Type} [Fintype X] [Fintype Y] [Fintype Z] [Fintype X'] [Fintype Y'] [Fintype Z'] (T : Foundation.Tensor K X Y Z) (fx : X' → X) (fy : Y' → Y) (fz : Z' → Z) :

      Coordinate pullbacks are restrictions.

      theorem MatrixMultiplicationAllFields.MatrixMultiplication.AuxiliarySeparation.Character.value_reindex {K : Type} [Field K] (χ : Character K) {X Y Z X' Y' Z' : Type} [Fintype X] [Fintype Y] [Fintype Z] [Fintype X'] [Fintype Y'] [Fintype Z'] (T : Foundation.Tensor K X Y Z) (ex : X' ≃ X) (ey : Y' ≃ Y) (ez : Z' ≃ Z) :
      χ.value (Foundation.Tensor.pullback (⇑ex) (⇑ey) (⇑ez) T) = χ.value T

      Independent coordinate bijections preserve a character.

      theorem MatrixMultiplicationAllFields.MatrixMultiplication.AuxiliarySeparation.Character.value_eq_of_mutual_restriction {K : Type} [Field K] (χ : Character K) {X Y Z X' Y' Z' : Type} [Fintype X] [Fintype Y] [Fintype Z] [Fintype X'] [Fintype Y'] [Fintype Z'] (T : Foundation.Tensor K X Y Z) (S : Foundation.Tensor K X' Y' Z') (A : X' → X → K) (B : Y' → Y → K) (C : Z' → Z → K) (A' : X → X' → K) (B' : Y → Y' → K) (C' : Z → Z' → K) (hS : S = Foundation.Tensor.restrict A B C T) (hT : T = Foundation.Tensor.restrict A' B' C' S) :
      χ.value T = χ.value S

      The character has the same value on mutually restricting tensors.

      @[simp]

      An integer scalar tensor has its expected character value.

      theorem MatrixMultiplicationAllFields.MatrixMultiplication.AuxiliarySeparation.Character.restrict_scalarTensor {K : Type} [Field K] {X Y Z : Type} (r : ℕ) (a : Fin r → X → K) (b : Fin r → Y → K) (c : Fin r → Z → K) :
      Foundation.Tensor.restrict (fun (x : X) (i : Fin r) => a i x) (fun (y : Y) (i : Fin r) => b i y) (fun (z : Z) (i : Fin r) => c i z) (scalarTensor K r) = fun (x : X) (y : Y) (z : Z) => ∑ i : Fin r, Foundation.Tensor.rankOne (a i) (b i) (c i) x y z

      Restricting a diagonal scalar tensor realizes a rank decomposition.

      Character values are bounded by every exact rank decomposition size.

      Every nonzero tensor restricts to the scalar multiplication tensor.

      @[simp]

      Normalization and restriction monotonicity make the character faithful.