Documentation

Complexitylib.Algebraic.LinearAlgebra.Tensor.Substitution.Defs

Slice restrictions, tight tensors, and hyperplane projections #

Definitions for border substitution on the first factor A = ℂ^α of a 3-tensor T : Tensor3 α β γ, whose A-slices are the matrices T i : β → γ → ℂ (see Complexitylib.Algebraic.LinearAlgebra.Tensor.Substitution).

def Algebraic.Tensor3.restrictSlices {α : Type u_1} {β : Type u_2} {γ : Type u_3} [DecidableEq α] (T : Tensor3 α β γ) (S : Finset α) :
Tensor3 α β γ

Keep the A-slices T i with i ∈ S and replace the others by zero: the (i, j, k) coordinate is T i j k if i ∈ S and 0 otherwise.

Equations
Instances For
    def Algebraic.Tensor3.Tight {α : Type u_1} {β : Type u_2} {γ : Type u_3} (T : Tensor3 α β γ) :

    T is tight with respect to its first factor: there are integer weights τA, τB, τC on the coordinate bases of the three factors, with τA injective, such that every coordinate (i, j, k) in the support of T has total weight τA i + τB j + τC k = 0. This is weaker than tightness in the sense of Landsberg and Michałek, which also asks τB and τC to be injective.

    Equations
    Instances For
      noncomputable def Algebraic.Tensor3.orthProj {α : Type u_1} [Fintype α] [DecidableEq α] (u : α → ℂ) :
      Matrix α α ℂ

      The orthogonal projection 1 - (u^* u)⁻¹ u u^* of ℂ^α onto the hyperplane orthogonal to u, where u^* is the conjugate transpose. Its kernel is the line ℂ u when u ≠ 0 (Tensor3.orthProj_mulVec_eq_zero_iff); orthProj 0 is the identity.

      Equations
      Instances For