Documentation

TauCeti.Analysis.InnerProductSpace.BilinearForm

The bilinear form of a tensor on an inner product space #

On an inner product space the inner product turns a tensor t : V βŠ—[π•œ] V into a bilinear form on V,

B_t (v, w) = βŸͺt, v βŠ—β‚œ w⟫,

TauCeti.BilinForm.ofTensor. The construction is conjugate-linear in t and always injective, so a tensor is determined by its form; it is surjective only in finite dimensions, where it therefore identifies the tensor square with all of BilinForm π•œ V (TauCeti.BilinForm.ofTensorEquiv). In infinite dimensions it is just an injection: the tensor square is spanned by the finite sums of pure tensors, while a general bilinear form need not be one.

The construction carries the flip x βŠ— y ↦ y βŠ— x to the exchange of the two arguments of a form, so the symmetric tensors TauCeti.symmetricTensors become the symmetric forms and the antisymmetric tensors TauCeti.antisymmetricTensors the alternating ones.

Nothing here needs a group or a representation: this is the purely bilinear half of the dictionary that TauCeti/RepresentationTheory/Continuous/Square/BilinearForm.lean makes equivariant for a unitary representation.

Main definitions #

Main statements #

Implementation notes #

TauCeti.BilinForm.ofTensor is conjugate-linear, not linear, so it is bundled as a semilinear map V βŠ—[π•œ] V β†’β‚›β‚—[starRingEnd π•œ] BilinForm π•œ V; it is the composition of innerSL with the currying TensorProduct.lcurry, so its behaviour on 0, on sums, on negation and on differences is the generic map_zero, map_add, map_neg and map_sub. Injectivity comes from TensorProduct.ext_iff_inner_right; surjectivity in finite dimensions is read off TauCeti.BilinForm.ofTensorEquiv, which is assembled from the Riesz representation InnerProductSpace.toDual, the identification LinearMap.toContinuousLinearMap of the linear with the continuous linear functionals, and the currying TensorProduct.lift.equiv.

The two symmetry statements go through Mathlib's flip characterizations LinearMap.BilinForm.isSymm_iff_flip and LinearMap.isAlt_iff_eq_neg_flip, so the only geometric input is TauCeti.BilinForm.ofTensor_comm, that the construction intertwines the flip of the tensor square with the flip of a form.

References #

This is the linear-algebra half of the invariant-form dictionary that Layer 6b of the compact-groups roadmap needs for its frobeniusSchurIndicator_eq_one_iff and frobeniusSchurIndicator_eq_neg_one_iff targets. The mathematical development follows Daniel Bump, Lie Groups, second edition, Chapter 2, and T. BrΓΆcker and T. tom Dieck, Representations of Compact Lie Groups, Springer GTM 98 (1985), Chapter II.

noncomputable def TauCeti.BilinForm.ofTensor {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] :

The bilinear form of a tensor: B_t (v, w) = βŸͺt, v βŠ—β‚œ w⟫. The inner product is conjugate-linear in its first argument and linear in its second, so this is bilinear in (v, w) and conjugate-linear in t.

Equations
Instances For
    @[simp]
    theorem TauCeti.BilinForm.ofTensor_apply {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] (t : TensorProduct π•œ V V) (v w : V) :
    ((ofTensor t) v) w = inner π•œ t (v βŠ—β‚œ[π•œ] w)
    theorem TauCeti.BilinForm.ofTensor_injective {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] :

    A tensor is determined by its form.

    @[simp]
    theorem TauCeti.BilinForm.ofTensor_eq_zero_iff {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] {t : TensorProduct π•œ V V} :
    ofTensor t = 0 ↔ t = 0

    The form of a tensor vanishes only for the zero tensor.

    @[simp]
    theorem TauCeti.BilinForm.ofTensor_comm {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] (t : TensorProduct π•œ V V) :

    The flip of the tensor square is the flip of the form.

    @[simp]
    theorem TauCeti.BilinForm.isSymm_ofTensor_iff {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] {t : TensorProduct π•œ V V} :

    The form of a tensor is symmetric exactly when the tensor is symmetric.

    @[simp]
    theorem TauCeti.BilinForm.isAlt_ofTensor_iff {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] {t : TensorProduct π•œ V V} :

    The form of a tensor is alternating exactly when the tensor is antisymmetric.

    noncomputable def TauCeti.BilinForm.ofTensorEquiv {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] [FiniteDimensional π•œ V] :

    In finite dimensions the tensor square is the space of bilinear forms, conjugate-linearly, through TauCeti.BilinForm.ofTensor: the Riesz representation InnerProductSpace.toDual identifies a tensor with a functional on the tensor square, and the currying TensorProduct.lift.equiv identifies such a functional with a bilinear form.

    Equations
    Instances For
      @[simp]
      theorem TauCeti.BilinForm.ofTensorEquiv_apply {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] [FiniteDimensional π•œ V] (t : TensorProduct π•œ V V) :
      @[simp]
      theorem TauCeti.BilinForm.coe_ofTensorEquiv {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] [FiniteDimensional π•œ V] :
      theorem TauCeti.BilinForm.ofTensor_surjective {π•œ : Type u_1} {V : Type u_2} [RCLike π•œ] [NormedAddCommGroup V] [InnerProductSpace π•œ V] [FiniteDimensional π•œ V] :

      Every bilinear form on a finite-dimensional inner product space is the form of a tensor, because TauCeti.BilinForm.ofTensorEquiv is an equivalence.