Skip to content

Category InnerProductSpaces #30218

@mkoeppe

Description

@mkoeppe

(follow-up from #30092)

We define a category InnerProductSpaces with

  • parent method dual (which returns self),
  • element method inner_product.

A complication for complex vector spaces: FreeModule defines:

  • dot_product - which ignores inner_product_matrix and does not conjugate
  • hermitian_inner_product - which ignores inner_product_matrix but conjugates the left factor (self)
  • inner_product - which uses inner_product_matrix but does not conjugate.

Perhaps we need to add an extra parameter inner_product_hermitian to FreeModule. For a complex base ring, the module would only be added to the category of InnerProductSpaces if this is True.

MatrixSpace elements currently do not have inner_product.

References:

See also: https://en.wikipedia.org/wiki/Pseudo-Euclidean_space

CC: @tscrim @orlitzky @egourgoulhon @mjungmath @kcrisman

Component: linear algebra

Issue created by migration from https://trac.sagemath.org/ticket/30218

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions