using Antisymmetrize inside IndexSetDelayed

38 views
Skip to first unread message

Daniel Mahler

unread,
Apr 6, 2015, 12:28:58 AM4/6/15
to xa...@googlegroups.com
I am getting problems when I try to use Antisymmetrize inside the body of an IndexSetDelayed rule like 

IndexSetDelayed[B[i_, j_, k_, l_], Antisymmetrize[A[i, j, k, l]]]

For example:

In[1]:= Needs["xAct`xTras`"]
$PrePrint = ScreenDollarIndices;
$CovDFormat = "Prefix";
$CVVerbose = False;
$DefInfoQ = False;

In[6]:= DefManifold[S4, 4, IndexRange[i, t]]
DefMetric[1, met4[-i, -j], CD4, {";", "\[Del]"}, PrintAs -> "g"]
DefTensor[A[-i, -j, -k, -l], {S4}]
DefTensor[B[-i, -j, -k, -l], {S4}]
IndexSetDelayed[B[i_, j_, k_, l_], Antisymmetrize[A[i, j, k, l]]]

In[11]:= DownValues[B]

During evaluation of In[11]:= Validate::inhom: Found inhomogeneous indices: {IndexList[], IndexList[i, j, k, l]}.

During evaluation of In[11]:= Throw::nocatch: Uncaught Throw[Null] returned to top level. >>

Out[11]= Hold[Throw[Null]] °

What is the problem here?

thanks
Daniel

Thomas Bäckdahl

unread,
Apr 6, 2015, 7:23:13 AM4/6/15
to xa...@googlegroups.com
Hi Daniel!

The only thing that goes wrong here is displaying the rule with indexed tensor expressions. The system finds indices in the left hand side, but does not recognize them in the right hand side.
The rule still works, but I would recommend displaying it with
InputForm@DownValues[B]

This is unfortunately a common problem if you use SetDelayed, RuleDelayed, IndexSetDelayed or IndexRuleDelayed.

Perhaps it would be good to change the display and validate functions, so these rules would be displayed in input form if they are too complicated to be displayed with the correct index placements.

This kind of complicated rules can be safely used. Just be careful on how you try to display them at the moment.

Regards
Thomas
--
You received this message because you are subscribed to the Google Groups "xAct Tensor Computer Algebra" group.
To unsubscribe from this group and stop receiving emails from it, send an email to xact+uns...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages