Hello everybody,
I am currently working on gravity in the language of differential forms. One of the limitations I have found when using xTerior is the interior product. I have noticed that there are already other posts in this group concerning the use of something like Int[Frame[M][a]][<differential form>]. But (at least one of) the problem is that the indices inside the first argument of Int are not taken into account in xTerior.
I have thought that maybe a "simpler" way (in quotation marks because I do not know in detail the internal structure of xTerior) could be to introduce something like
IntD[<index>][<differential form>]
The natural index position should be IntD[-a][...] since the interior product is performed in the direction of some vector 'e_a'' of the frame that is associated to the family of indices {a,b...}.
---
A first attempt could be to introduce a graded derivation. According to Alfonso's suggestion (thanks!), this can be easily done as
xAct`xTerior`Private`DefGradedDerivation[
IntD[v_], Wedge, -1, PrintAs -> "\[Iota]"
];
where "v_" can be anything; actually, "v_" is, as far as I know, completely invisible for xAct. This last fact is the limitation of this approach because we need "v_"...
1)... to be seen as an index.
Example: If we execute IntD[a][Test[b,c]] // FindIndices, "a" does not appear in the list. This is problematic in many situations, e.g. when canonicalizing.
2)... and to be manipulated as an index.
If one tries IntD[a][Test[b,c]], the index "a" appears as a lower index. Similarly, in IntD[-a][Test[b,c]], we get a lower index "-a" (with the minus). Of course the metric cannot raise/lower indices.
I do not know how difficult these points can be. I think "1)" can be solved by asking with the appropriate command whether "v_" is an index of the tangent bundle. If not, an error should be printed. On the other hand, "2)" looks quite non-trivial.
----
Of course, once these technical issues are solved one can start introducing the fundamental properties of this operator: antisymmetry, the reduction of the rank of the differential form,... but these are surely much more simple to define. The problem is the very definition of the operator.
Thanks a lot for reading this. Any suggestion is welcome.
Best regards,
Alejandro Jiménez Cano