Documentation

Complexitylib.Algebraic.LinearAlgebra.Tensor.Defs

Three-way tensors, tensor rank, and border rank #

A 3-tensor T ∈ ℂ^α ⊗ ℂ^β ⊗ ℂ^γ is given by its coordinates T i j k in the standard bases a_i ⊗ b_j ⊗ c_k (Algebraic.Tensor3). It carries the pointwise vector-space structure and the product topology on coordinates; for finite index types this is the usual Euclidean topology of ℂ^{α × β × γ}.

The basic facts about these notions are in Complexitylib.Algebraic.LinearAlgebra.Tensor.BorderRank.

@[reducible, inline]
abbrev Algebraic.Tensor3 (α : Type u_1) (β : Type u_2) (γ : Type u_3) :
Type (max (max u_1 u_2) u_3)

A 3-tensor in ℂ^α ⊗ ℂ^β ⊗ ℂ^γ, given by its coordinates: T i j k is the coefficient of a_i ⊗ b_j ⊗ c_k.

Equations
Instances For
    def Algebraic.Tensor3.outer {α : Type u_1} {β : Type u_2} {γ : Type u_3} (u : α → ℂ) (v : β → ℂ) (w : γ → ℂ) :
    Tensor3 α β γ

    The outer product u ⊗ v ⊗ w, with coordinates u i * v j * w k.

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

      T has rank at most r: it is a sum of r outer products. Zero vectors are allowed, so T.RankLE 0 means T = 0 and T.RankLE 1 means that T is an outer product.

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

        The tensor rank of T: the least r such that T is a sum of r outer products. Over finite index types such an r exists (Tensor3.rankLE_tensorRank).

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

          T has border rank at most r: it lies in the closure, for the product topology on coordinates, of the set of tensors of rank at most r.

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

            The border rank of T: the least r such that T is a limit of tensors of rank at most r. Over finite index types such an r exists (Tensor3.borderRankLE_borderRank).

            Equations
            Instances For
              def Algebraic.Tensor3.map {α : Type u_1} {β : Type u_2} {γ : Type u_3} {α' : Type u_4} {β' : Type u_5} {γ' : Type u_6} [Fintype α] [Fintype β] [Fintype γ] (X : Matrix α' α ℂ) (Y : Matrix β' β ℂ) (Z : Matrix γ' γ ℂ) (T : Tensor3 α β γ) :
              Tensor3 α' β' γ'

              The image of T under the linear map X ⊗ Y ⊗ Z, for matrices X : ℂ^α → ℂ^α', Y : ℂ^β → ℂ^β', and Z : ℂ^γ → ℂ^γ'.

              Equations
              Instances For
                def Algebraic.Tensor3.subtensor {α : Type u_1} {β : Type u_2} {γ : Type u_3} {α' : Type u_4} {β' : Type u_5} {γ' : Type u_6} (T : Tensor3 α β γ) (f : α' → α) (g : β' → β) (h : γ' → γ) :
                Tensor3 α' β' γ'

                Reindex T along maps of the three index types: the (i, j, k) coordinate of the result is the (f i, g j, h k) coordinate of T. For injective maps this deletes and permutes slices.

                Equations
                Instances For