Welcome to Cadabra Q&A, where you can ask questions and receive answers from other members of the community.
+1 vote

Hi,

With the following definitions

{i,j,k,m,n,p}::Indices(space, position=free);
{i,j,k,m,n,p}::Integer(1..4);
{a,b,c,d,e}::Indices(gauge, parent=space, position=free);
{a,b,c,d,e}::Integer(1..3);
\delta{#}::KroneckerDelta;
\epsilon{#}::EpsilonTensor(delta=\delta);

I would like to calculate the below product of two Epsilon tensors e transform them to a delta function

ex:=\epsilon_{a b c}\epsilon_{a i j 4};
epsilon_to_delta(_);

How can I tell to Cadabra that in this situation uses the a,b,c,... indices instead to i,j,... indices because of the one fixed index to 4?

in General questions by (1.1k points)
edited by

1 Answer

+1 vote

I would make sure not to mix epsilons with different dimensions, so I would first

substitute(_, $\epsilon_{a i j 4} = \epsilon_{a i j}$);

and then the epsilon_to_delta does the right thing.

by (83.1k points)
...