-
-
Notifications
You must be signed in to change notification settings - Fork 701
Description
This ticket implements the exterior power /<sup>p(M) for a free module of finite rank M (p being a positive integer), i.e. the set of alternating contravariant tensors of type (p,0) on M. Previously only the exterior power of the dual of M, i.e. /<sup>p(M*), was implemented, as the parent of alternating forms of degree p. More specifically, the ticket introduces two new classes:
- the parent class
ExtPowerFreeModulefor /<sup>p(M) - the element class
AlternatingContrTensorfor elements of /<sup>p(M)
Note that the pre-existing class for /<sup>p(M*), which was called ExtPowerFreeModule, has been renamed ExtPowerDualFreeModule, since it regards the exterior power of the dual of M.
The class for the elements of M, FiniteRankFreeModuleElement , inherits from the new class AlternatingContrTensor, reflecting the fact that /<sup>1(M) = M. In particular, this allows one to consider module elements in operations like the exterior product or the interior product. For instance, for a and b in M, a.wedge(b) returns now the element a/*b* of /<sup>2(M).
In addition, the ticket implements the interior products
- /<sup>p(M) x /<sup>q(M*) --> /<sup>q-p(M*)
- /<sup>p(M*) x /<sup>q(M) --> /<sup>q-p(M)
for p<=q via the method interior_product in classes AlternatingContrTensor and FreeModuleAltForm.
Besides, some slight updates in all source files in src/sage/tensor/modules have been performed:
- for the migration to Python3, a few
range(...)have been changed tolist(range(...))in places where a list is expected instead of an iterator - bibliographic references have been reformated to provide links to the master bibliography file
src/doc/en/reference/references/index.rst.
CC: @tscrim @sagetrac-bpym
Component: linear algebra
Keywords: free module exterior power
Author: Eric Gourgoulhon
Branch/Commit: b797009
Reviewer: Travis Scrimshaw
Issue created by migration from https://trac.sagemath.org/ticket/23207