伝統的テンソル計算技法の背景

 古典的微分幾何・ベクトル解析のモダン化: ダイレクトインデックス記法 - 檜山正幸のキマイラ飼育記 (はてなBlog)とかでモダン化をやってみたのだが、添字の技法をちゃんと定式化するには、添字集合の集合の性質が必要。

ℬを集合の集合(族)とする。ℬは空集合を含まないとする。ℬはベース族のつもり。次のようにしてℐを構成する。

  1. A∈ℬ に対して、A- = {a- | a∈A} として、A- を作り、ℬ- = {A- | A∈ℬ} とする。A∩A- = ∅ とする。
  2. ℐ = ℬ± = ℬ∪{∅}∪ℬ- を作る。

ℐ上に次の構造を与える。

  • S:ℐ→ℐ, A∈ℬ ならば S(A) := A-, A∈ℬ- ならば、S(A-) = A, S(∅) = ∅
  • X∈ℐ に対して、σX:X→S(X) を、AとA-のあいだの自然な同型写像として定義する。

すると:

  1. Sはinvolution SS(X) = X
  2. Sの不動点は∅だけ。S(X) = X ⇔ X = ∅
  3. X∩S(X) = ∅

× = ℐ\{∅} とする。ℐ×*(クリーネスター)の要素をタイプと呼ぶ。タイプは、集合のリストなので、(A1, ..., An) と書ける。

タイプの極性〈polarity〉、または変性〈variance〉を次のように決める。

  1. A∈ℬ ならば、p(A) = "+" (+は反変)
  2. A∈ℬ ならば、p(A-) = "-" (-は共変)
  3. p(∅) = ""
  4. あとは連接で決める。p(A)∈{+, -}*

今定義したタイプの集合 ℐ×* を使って、テンソル代数とテンソル圏を構成する。

まず、Vをベクトル空間として、Vのテンソル代数を構成する。タイプ A∈(ℐ×)* ごとに、ベクトル空間 TA(V) を定義して、すべてのAに渡って直和をとる。最初に、Vからℐを作る必要がある。

B⊆V をVの基底集合とする。Vがゼロ空間でないなら、B ≠ ∅ なので、{B} はベース族となる。このベース族から、ℐ = {B, ∅, B-} を作る。ℐ\{∅} = {B, B-}, (ℐ\{∅})* = {B, B-}*

任意のタイプは、BとB-を並べたリストになる。次のようにベクトル空間を定義できる。

  1. T(V) = R
  2. TB(V) = V
  3. TB-(V) = V*
  4. T(A1, ..., An)(V) = TA1(V)⊗...⊗TAn(V) (テンソル積)

\( {\mathscr T}\) をタイプの集合として、
\(
\sum_{A\in {\mathscr T}} T_{A}(V)
\)
を、Vのテンソル空間とする。テンソル空間に積も入れることができる。特定のタイプAの部分空間の要素を型Aのテンソルと呼ぶ。特定の変性のテンソルも定義できる。

ひとつの空間Vではなくて、複数の空間の族から生成することも出来る。それは次の機会に。