We generalize FiniteRankFreeModule.tensor_module by giving it optional arguments sym, antisym; if given, a submodule of the tensor module spanned by the tensors with these prescribed symmetries is created.
The new methods symmetric_power and dual_symmetric_power provide two important special cases.
The implementation makes the standard bases of tensor modules (and of their new submodules) explicit objects. The basis method now works for tensor modules, not just the base module, and returns an instance of the new class TensorFreeSubmoduleBasis_sym, which represents the standard basis corresponding to an instance of the Components class (or one of its subclasses).
Follow-ups:
Depends on #30300
Depends on #34424
Depends on #34451
Depends on #34474
CC: @egourgoulhon @tscrim @mjungmath @slel @honglizhaobob
Component: linear algebra
Author: Matthias Koeppe
Branch/Commit: fc66ad1
Reviewer: Eric Gourgoulhon
Issue created by migration from https://trac.sagemath.org/ticket/30229
We generalize
FiniteRankFreeModule.tensor_moduleby giving it optional argumentssym,antisym; if given, a submodule of the tensor module spanned by the tensors with these prescribed symmetries is created.The new methods
symmetric_poweranddual_symmetric_powerprovide two important special cases.The implementation makes the standard bases of tensor modules (and of their new submodules) explicit objects. The
basismethod now works for tensor modules, not just the base module, and returns an instance of the new classTensorFreeSubmoduleBasis_sym, which represents the standard basis corresponding to an instance of theComponentsclass (or one of its subclasses).Follow-ups:
TensorFreeModule.isomorphism_with_fixed_basisExtPowerFreeModulea quotient ofTensorFreeModuleComponents into parent (aModuleWithBasis) & elementDepends on #30300
Depends on #34424
Depends on #34451
Depends on #34474
CC: @egourgoulhon @tscrim @mjungmath @slel @honglizhaobob
Component: linear algebra
Author: Matthias Koeppe
Branch/Commit:
fc66ad1Reviewer: Eric Gourgoulhon
Issue created by migration from https://trac.sagemath.org/ticket/30229