Thank you Kasper. I've build the github version 2.2.7, and soo that you improve my rusty version of the notebooks. Great work!
I'd like to mention that I try the following code:
{M,N,P,Q,J,K,L}::Indices(full, position=independent).
{\mu,\nu,\rho,\sigma,\gamma,\lambda}::Indices(sub,position=independent, parent=full).
e^{M}_{\mu}::Vielbein;
E^{\mu}_{M}::InverseVielbein;
\delta^{\mu?}_{\nu?}::KroneckerDelta;
\delta_{\mu?}^{\nu?}::KroneckerDelta;
ex := e^{M}_{\mu} E^{\nu}_{M};
eliminate_vielbein(ex);
The result is E^{\nu}_{\mu}, which is correct of course, but I expected that after defining the InverseVielbein the result would be a KroneckerDelta.
Question: Do you think it is possible to change that behaviour?
I know that it is possible that my expectations make not a lot of sense from the coding view point... since it's possible that the user had not defined the KronerckerDelta, or the fact that the delta has to be defined in both spaces, and so on.
BTW,
Bonus question: Instead of defining several KroneckerDelta, Would be possible to define a single \delta{#}::KroneckerDelta; that works on whatever indices type and position?