Hi everyone, here I tried to make some supergravity calculations for N=1, D=4. I needed to use the "substitute" command a lot. Any suggestions to make it more neat and tidy are very welcome. Also is there any other way than using the substitute command to make the cubic expressions vanish?
D{#}::Derivative;
\bar{D{#}}::Derivative;
\bar{#}::DiracBar;
{m,n,p,q,r,s,t,u,m#}::Indices(flat);
{m,n,p,q,r,s,t,u,m#}::Integer(0..3);
{\mu,\nu,\rho,\sigma,\kappa,\lambda,\alpha,\beta}::Indices(curved,position=fixed);
{\mu,\nu,\rho,\sigma,\kappa,\lambda,\alpha,\beta}::Integer(0..3);
e^{m \mu}::Vielbein;
e^{m}_{\mu}::Vielbein;
e_{m \mu}::InverseVielbein;
e_{m}^{\mu}::InverseVielbein;
e::Determinant(e_{m \mu});
e::Determinant(e_{m}^{\mu});
e::Determinant(e^{m}_{\mu});
e::Determinant(e^{m \mu});
g^{\mu\nu}::InverseMetric;
g_{\mu\nu}::Metric;
R_{\mu \nu \rho \sigma}::RiemannTensor;
{ \epsilon,\psi_{\mu} }::Spinor(dimension=4, type=Majorana);
\Gamma_{#{m}}::GammaMatrix(metric=\delta);
{ \psi_{\mu},\epsilon }::AntiCommuting;
{ \psi_{\mu}}::SelfAntiCommuting;
{ \epsilon, \psi_{\mu}}::SortOrder;
\Gamma_{#}::Depends(\bar{#});
{ \psi_{\mu}, \epsilon ,\bar{\epsilon}}::Depends(D{#});
First, we write our action as two parts:
S32:= \int{- 1/2 e \bar{\psi_\mu} \Gamma^{\mu\nu\rho} D_{\nu}{\psi_{\rho}}}{x};
S2:= \int{ 1/2 e e_{m}^{\mu} e_{n}^{\nu} R_{\mu \nu}^{ m n}}{x};
Now we define our SUSY rules. (I did not include the variation of $e_{m}^{\mu}$, because it only leads to cubic expressions (for the action S32) and they vanish.)
susy32:= {e -> 1/2 e {\bar{\epsilon} \Gamma^\sigma \psi_\sigma} , \psi_\mu -> D_{\mu}{\epsilon}};
susy2:= {e -> 1/2 e {\bar{\epsilon} \Gamma^\sigma \psi_\sigma}, e_{m}^{\mu} -> -1/2 {\bar{\epsilon}} \Gamma^{\mu} \psi_m };
Let us start to our calculations with the S32 part. First we take the
variation of it, according to the rules we defined above.
vS32= vary(S32, susy32);
Here, I need to erase the bar above the $D_{\mu}$ term because the
integrate by parts command does not work properly with the bar.
substitute(_,$\bar{D_{#??}{\epsilon}} -> D_{#??}{\bar{\epsilon}} $);
The first term here, is a cubic expression therefore it must be
vanish.
substitute(_, $\bar{\epsilon}*A?? -> 0$);
Manipulating the equations a little bit leads us to use "Clifford
algebra".
integrate_by_parts(_, $\bar{\epsilon}$);
product_rule(_);
We know that
$D{\mu} e = 0$
and $D{\mu}{\Gamma^{\mu\nu\rho}} = 0$ so
we substitute it by hand.
substitute(_,$D_{#??}{e}*A?? -> 0$);
substitute(_, $ D_{#??}{\Gamma^{\mu\nu\rho}}*A?? -> 0 $);
Using the Clifford algebra, we can substitute the equations below;
substitute(_, $D_{\mu}{D_{\nu}{A??} } -> 1/8 R_{\mu \nu m n} \Gamma^{m n} A??$ )
sort_spinors(_)
rename_dummies(_);
substitute(_, $\Gamma^{\mu \nu \rho}R_{\mu \nu m n}\Gamma^{m n} -> 4 \Gamma^{\mu}R_{\mu \nu}^{\rho \nu} + 2 \Gamma^{\rho} R_{\mu \nu}^{\nu \mu}$);
substitute(_, $\Gamma^{\rho \mu \nu}R_{\mu \nu m n}\Gamma^{m n} -> 4 \Gamma^{\mu}R_{\mu \nu}^{\rho \nu} + 2 \Gamma^{\rho} R_{\mu \nu}^{\nu \mu}$);
Now, we can start to play with the S2 part of the action. Here we will
take the variation and re-organize the result as shown below:
vS2= vary(S2, susy2);
eliminate_vielbein(_, repeat=True)
rename_dummies(_);
We now need to use a property of the Riemann tensor such as below;
substitute(_, $ R_{\mu \nu}^{\mu m} -> R_{\nu \mu}^{m \mu}$);
canonicalise(_);
Stotal=vS32+vS2;
This final sum must be equal to $0$, yet I couldn't accomplish to sum
the integrals to show it with cadabra.
Thanks.