This notebook is part of the Introduction to manifolds in SageMath by Andrzej Chrzeszczyk (Jan Kochanowski University of Kielce, Poland).
version()
'SageMath version 9.6, Release Date: 2022-05-15'
If $ϕ$ is a one-parameter group of transformations on $M$ (notebook 17), then the map $ϕ_t : M → M$, defined by $ϕ_t (x) = ϕ(x, t)$, is smooth and therefore for $f ∈ C^∞ (M),\ \ $ $ϕ_t^*f = f\circ \phi_t\ $ also belongs to $C^∞ (M)$.
If $X$ is the infinitesimal generator of $ϕ$ (notebook 17), then the Lie derivative of $f$ with respect to $X$ is defined by
\begin{equation} \mathcal{L}_Xf=\lim_{t\to 0}\frac{\phi_t^*f-f}{t} =\frac{d}{dt}(\phi_t^*f)\Big|_{t=0}. \tag{19.1} \end{equation}Example 19.1
Compute $\ \ \mathcal{L}_Xf\ \ $ for $ f(x)=x^2\cos y \ \ $ and $\ \ X=-y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y},$ using SageMath Manifolds.
%display latex
M = Manifold(2, 'M') # manifold M
c_xy.<x,y> = M.chart() # chart on M
f = M.scalar_field(x^2*cos(y)) # scalar function f on M
X = M.vector_field(name='X') # vector field X on M
X[:] = (-y, x) # components of X
f.lie_derivative(X).expr() # Lie derivative L_X(f)
Since the curve $ϕ_x$ given by $ϕ_x (t) = ϕ(x, t)$ is the integral curve of $X$ that starts at $x$ we have
$$\lim_{t\to 0}\frac{\phi_t^*f-f}{t}(x)= \lim_{t\to 0}\frac{f(\phi_t(x))-f(x)}{t} =\lim_{t\to 0}\frac{f(\phi(x,t))-f(x)}{t}$$$$=\lim_{t\to 0}\frac{f(\phi_x(t))-f(\phi_x(0))}{t}\\ =(ϕ_x)'_0 ( f ) = X_x ( f )=(Xf)(x). $$We have checked that \begin{equation} \mathcal{L}_Xf=Xf. \tag{19.2} \end{equation}
Thus we can compute $\ \ \mathcal{L}_Xf\ \ $ without any knowledge on the integral curves of $X$.
Example 19.2
Check the result of the previous example using (19.2).
We have
$$\ \ X(f)=(-y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y})(x^2\cos y )\ \ =-y(2x)\cos y +x(x^2)(-\sin y)\\=-x^3\sin y-2xy\cos y.$$# continuation
X(f).expr() # value of the vector field X on f
Example 19.3
Check that SageMath lie_derivative
method applied to functions coincides with application of (19.2).
%display latex
N = 2 # dimension of manifold M
M = Manifold(N, 'M') # manifold M
c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M
x0, x1 = c_x[:] # coordinates x^0, x^1 of chart c_x as the Python variables x0, x1
X = M.vector_field(name='X') # vector field X
Xf=[M.scalar_field(function('X'+str(i), # list of components
latex_name='X'+'^'+str(i))(x0, x1))
for i in range(N)]
X[:] = Xf # define all components of X
X.disp()
f = M.scalar_field(function('f')(x0, x1)) # scalar function on M
f.disp()
f.lie_derivative(X).expr() # Lie derivative of f w.r.t. X
From (19.2) it follows $$\mathcal{L}_X (\mathcal{L}_Y f ) − \mathcal{L}_Y (\mathcal{L}_X f ) = XY f − YX f = [X, Y] f = \mathcal{L}_{[X,Y]} f, $$ i.e. \begin{equation} \mathcal{L}_X (\mathcal{L}_Y f ) − \mathcal{L}_Y (\mathcal{L}_X f )= \mathcal{L}_{[X,Y]} f. \tag{19.3} \end{equation}
Example 19.4
Check in SageMath Manifolds that (19.3) holds for 2-dimensional manifolds.
# continuation
Y = M.vector_field(name='Y') # vector field Y
Yf = [M.scalar_field(function('Y'+str(i), # list of components
latex_name='Y'+'^'+str(i))(x0, x1))
for i in range(N)]
Y[:] = Yf # define all components
L_XL_Yf = (f.lie_derivative(Y)).lie_derivative(X) # L_X(L_Y(f))
L_YL_Xf = (f.lie_derivative(X)).lie_derivative(Y) # L_Y(L_X(f))
L_bracket_f = f.lie_derivative(X.bracket(Y)) # L_{lie_brack(X,Y)}(f)
L_XL_Yf - L_YL_Xf == L_bracket_f # check (19.3)
Let $ψ : M → N$ be a smooth map between two smooth manifolds. If $X ∈ \mathfrak{X}(M)$ and $Y ∈ \mathfrak{X}(N ).$
$X$ and $Y$ are $ψ$-related if \begin{equation} Y_{ψ(p)} = dψ_pX_p , \tag{19.4} \end{equation} for $p ∈ M.$
If $f ∈ C^∞ (N )$, then from (19.4) and (8.8) it follows
$$ (Y f ) (ψ( p)) = Y_{ψ( p)} ( f ) = dψ_p X_p ( f ) = X_p ( f ◦ ψ) = (X( f ◦ ψ) )( p),$$for $p ∈ M,$ i.e.,
\begin{equation}
(Y f ) ◦ ψ = X( f ◦ ψ),
\tag{19.5}
\end{equation}
for $f ∈ C^∞ (N).$
An equivalent formulation is
for $f ∈ C^∞ (N).$
Let $M$ and $N$ be smooth manifolds, $ψ : M → N$ be a diffeomorphism and $X$ be a vector field on $N$. The pullback of $X$ under $\psi$ is the vector field on $M$ defined by
\begin{equation} (\psi^∗ X)_x = d(ψ^{-1 })_{ψ(x)} X_{ ψ(x)}. \tag{19.7} \end{equation}Note that (19.7) implies that
\begin{equation} X_{\psi(x)}=d\psi_x(\psi^*X)_x, \tag{19.7'} \end{equation}which means that $ψ^∗ X$ and $X$ are $ψ$-related. If we replace in (19.6) $Y$ by $X$ and $X$ by $\psi^*X$ we obtain
\begin{equation} \psi^*(X f ) = (\psi^*X)( \psi^*f), \tag{19.8} \end{equation}for $f ∈ C^∞ (N ).$
We have also $$ψ^∗ ( f X) = (ψ^∗ f )(ψ^∗ X),$$
$$ψ^∗ (aX + bY) = aψ^∗X + bψ^∗ Y,$$for $X, Y ∈ \mathfrak{X}(N ), f ∈ C^∞ (N ),$ and $a, b ∈ R.$
In fact by (19.7)
$$ [ψ^∗( f X)]_x = d(ψ^{−1} )_{ψ(x)} ( f X)_{ψ(x)} = d(ψ^{−1} )_{ψ(x)} (f (ψ(x)) X_{ψ(x)})\\ = f (ψ(x)) d(ψ^{−1} )_{ψ(x)} X_{ψ(x)} = (ψ^∗ f )(x) (ψ^∗ X)_x = [(ψ^∗ f )(ψ^∗ X)]_x, $$and
$$ [ψ^∗ (aX + bY)]_x = d(ψ^{−1})_{ψ(x)} (aX + bY)_{ψ(x)} = d(ψ^{−1} )_{ψ(x)} (aX_{ψ(x)} + bY_{ψ(x)} ) = ad(ψ^{ −1} )_{ψ(x)} X_{ψ(x)} + bd(ψ^{−1} )_{ψ(x)} Y_{ψ(x)} = [aψ^∗ X + bψ^∗ Y]_x. $$If $ψ : M → N$ is a diffeomorphism of smooth manifolds $M$, $N$ and $χ$ is a one-parameter group of transformations on $N$ whose infinitesimal generator is $Y$, then $ϕ_t = ψ^{−1} ◦ χ_t ◦ ψ$ is a one-parameter group of transformations on $M$ whose infinitesimal generator is $ψ^∗ Y$.
This relation follows from
$$ϕ_s ◦ϕ_t = (ψ^{−1} ◦ χ_s ◦ ψ) ◦ (ψ^{−1} ◦ χ_t ◦ ψ) \\ = ψ^{−1} ◦ χ_s ◦ χ_t ◦ ψ = ψ^{−1} ◦ χ_{s+t} ◦ ψ = ϕ_{s+t} .$$If $ψ_1 : M_1 → M_2$ and $ψ_2 : M_2 → M_3$ are diffeomorphisms, then $$(ψ_2 ◦ ψ_1 )^∗ X = (ψ_1^∗ ◦ ψ_2^∗ )X,$$ for $X ∈ \mathfrak{X}(M_3 )$.
The last equality is true, since
$$ [(ψ_2 ◦ ψ_1 )^∗ X]_x = d((ψ_2 ◦ ψ_1 )^{−1}) _{ (ψ_2 ◦ψ_1 )(x)}X_{( ψ_2 \circ ψ_1 )(x)}\\ = (d(ψ_1^{−1})_{ψ_1 (x)}\circ d(ψ_2^{-1})_{\psi_2(\psi_1(x))}) X_{\psi_2(ψ_1 (x))}\\ =d(\psi_1^{-1})_{\psi_1(x)}(\psi_2^*X)_{\psi_1(x)} = [ψ_1^∗ (ψ_2^∗ X)]_x . $$If $ϕ$ is a one-parameter group of transformations on a manifold $M$ and $X$ its infinitesimal generator, then for any vector field $Y$ on $M$, the Lie derivative of $Y$ with respect to $X$ is defined by \begin{equation} (\mathcal{L}_XY)_x=\lim_{t→0}\frac{(\phi^*_tY)_x-Y_x}{t} =\frac{d}{dt}(\phi_t^*Y)_x\Big|_{t=0}. \tag{9.11} \end{equation}
If $X, Y ∈ \mathfrak{X}(M)$, then \begin{equation} \mathcal{L}_XY=[X,Y]. \tag{19.12} \end{equation}
To prove this formula, we will check first a form of Leibniz rule. If $ \phi$ is a one-parameter group of transformations on $M$ whose infinitesimal generator is $X$, then
$$\mathcal{L}_X(Yf) =\lim_{t→0}\frac{\phi^*_t(Yf)-Yf}{t} =\lim_{t→0}\frac{(\phi^*_tY)(\phi_t^*f)-Yf}{t}$$$$=\lim_{t→0}\Big[(\phi^*_tY)\frac{\phi^*_tf-f}{t} +\frac{\phi^*_tY-Y}{t}f\Big]=Y(\mathcal{L}_Xf)+(\mathcal{L}_XY)f. $$Notice that $(\phi^*_tY)_x=d(\phi_t^{-1})_{\phi_t(x)}Y_{\phi_t(x)}= d(\phi_{-t})_{\phi_t(x)}Y_{\phi_t(x)}$. We have also $\phi_t(x)\to x, \ \phi_{-t}(x)\to x$ as $t\to 0$ and in local coordinates the components of the matrix of the differential $d(ϕ_{−t} )_{\phi_t(x)} : T_{ϕ_t(x)} M → T_x M$ are $\displaystyle \frac{∂ϕ^i(−t, ϕ(t, x))}{∂x^j}.$ Smoothness of $X$ implies smoothness of $\phi$, which implies that
$$\displaystyle \frac{∂ϕ^i(−t, ϕ(t, x))}{∂x^j}\to \frac{\partial\phi^i(0,x)}{\partial x^j}=\frac{\partial x^i}{\partial x^j}=\delta^i_j\quad\text {as}\ t\to 0.$$Consequently, if $Y = Y^j \frac{\partial}{∂ x^j}$, then $$d(ϕ_{−t} )_{\phi_t(x)}Y_{ϕ_t (x)} = \frac{∂ϕ^i (−t, ϕ(t, x))}{ ∂ x^j}Y^j(ϕ(t, x))\frac{∂}{∂x^i}\Big|_{x}\to Y_x\quad \mbox{as } t\to 0. $$
Since by (19.2) $\mathcal{L}_Xf=Xf,\ $ we have
$$X(Yf)=\mathcal{L}_X(Yf)=Y(Xf)+(\mathcal{L}_XY)f,$$so $$\mathcal{L}_X(Yf)= X(Yf)-Y(Xf)=[X,Y]f,$$ i.e., (19.12) holds true.
Thus we can compute $\ \ \mathcal{L}_XY\ \ $ without any knowledge on the integral curves of $X$.
Example 19.5
Compute $\ \ \mathcal{L}_XY\ \ $ for $\ \ X=-y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y}\ \ $ and $\ \ Y=(1-x)\frac{\partial}{\partial x}+(x-y)\frac{\partial}{\partial y}.$
%display latex
M = Manifold(2, 'M') # manifold M
c_xy.<x,y> = M.chart() # chart on M
X = M.vector_field(-y, x, name='X') # vector field X
Y = M.vector_field(1-x, x-y, name='Y') # vector field Y
First we use the lie_derivative
method:
Y_X = Y.lie_derivative(X) # Lie derivative L_X(Y)
Y_X.disp()
and next the Lie bracket for comparison:
X.bracket(Y).disp() # [X,Y]
Example 19.6
Use SageMath to check that (19.12) holds for 2-dimensional manifolds.
%display latex
N = 2 # dimension of manifold M
M = Manifold(N, 'M') # manifold M
c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M
x0, x1 = c_x[:] # coordinates x^0, x^1 of chart c_x as the Python variables x0, x1
X = M.vector_field(name='X') # vector field X
Xf = [M.scalar_field(function('X'+str(i), # list of components
latex_name='X'+'^'+str(i))(x0,x1))
for i in range(N)]
X[:] = Xf # define all components of X
Y = M.vector_field(name='Y') # vector field Y
Yf = [M.scalar_field(function('Y'+str(i), # list of components
latex_name='Y'+'^'+str(i))(x0,x1))
for i in range(N)]
Y[:] = Yf # define all components of Y
Y.lie_derivative(X) == X.bracket(Y) # check (19.12)
Using properties of the Lie bracket from notebook 12, one can check that if $X, Y ∈ \mathfrak{X}(M)$ and $f ∈ C^∞ (M),$ then
$$\mathcal{L}_X(fY)=[X, f Y] = f [X, Y] + (X f )Y = f \mathcal{L}_X Y + (\mathcal{L}_X f )Y,$$and $$\mathcal{L}_X (Y + Z) = [X, Y + Z] = [X, Y] + [X, Z] = \mathcal{L}_X Y + \mathcal{L}_X Z.$$
If $X, Y, Z \in \mathfrak{X}(M)$, then using Jacobi identity (notebook 12) we obtain
$$\mathcal{L}_X (\mathcal{L}_Y Z) − \mathcal{L}_Y (\mathcal{L}_X Z) = [X, [Y, Z]] − [Y, [X, Z]] = [X, [Y, Z]] + [Y, [Z, X]]\\ = −[Z, [X, Y]]= [[X, Y], Z] =\mathcal{L}_{[X,Y]} Z.$$Example 19.7
For $\ X,Y$ from example 19.5 and $\ Z=y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y}\ \ $ compute $\mathcal{L}_X (\mathcal{L}_Y Z) − \mathcal{L}_Y (\mathcal{L}_X Z)\ \ $ and $ \mathcal{L}_{[X,Y]} Z.$
%display latex
M = Manifold(2, 'M') # manifold M
c_xy.<x,y> = M.chart() # chart on M
X = M.vector_field(-y, x, name='X') # vector field X
Y = M.vector_field(1-x, x-y, name='Y') # vector field Y
Z = M.vector_field(y, x, name='Z') # vector field Z
Z_YX = (Z.lie_derivative(Y)).lie_derivative(X) # L_X(L_Y(Z))
Z_XY = (Z.lie_derivative(X)).lie_derivative(Y) # L_Y(L_X(Z))
(Z_YX - Z_XY).disp() # L_X(L_Y(Z)) - L_Y(L_X(Z))
Z_brXY = Z.lie_derivative(X.bracket(Y)) # L_[X,Y](Z)
Z_brXY.disp()
Let us recall (from notebook 15) that if $M$ and $N$ are smooth manifolds and $ψ : M → N$ is a smooth map then the pullback $\ \psi^*t\ $of a smooth tensor field $t\in T^{(0,k)}N$ is defined by
\begin{equation} (ψ^∗ t)_p (X_{1p} , . . . , X_{kp} ) = t_{ψ( p)} (dψ_p X_{1p} , . . . , dψ_p X_{kp} ), \tag{19.13} \end{equation}for $X_{1p},\ldots,X_{kp}\in T_pM$ and $p\in M$.
In (15.2) we have proved that for $f ∈ C^∞ (N )$ \begin{equation} ψ^∗ d f=d(\psi^*f), \tag{9.14} \end{equation}
and in (15.3)-(15.5) we justified the relations (for covariant tensor fields $t,s$ and $f\in C^\infty(M),\ a,b\in R$)
In notebook 15 we also have checked that if $M_1,M_2,M_3\ $ are smooth manifolds and $ψ_1 : M_1 → M_2$ and $ψ_2 : M_2 → M_3$ are smooth maps, then \begin{equation} (ψ_2 ◦ ψ_1 )^∗ t = (ψ_1^∗ ◦ ψ_2^∗ )\,t. \tag{19.17} \end{equation}
If $ϕ$ is a one-parameter group of transformations on $M$ and $X$ its infinitesimal generator, then for any tensor field $t\in T^{(0,k)}M$ the Lie derivative of $t$ with respect to $X$ is defined by \begin{equation} (\mathcal{L}_Xt)_x=\lim_{h→0}\frac{(\phi^*_ht)_x-t_x}{h} =\frac{d}{dt}(\phi_t^*t)_x\Big|_{t=0}. \tag{9.18} \end{equation}
For $t\in T^{(0,k)}M,\ s\in T^{(0,m)}M$ we have
\begin{equation} \begin{matrix} \displaystyle \mathcal{L}_X(t\otimes s) =\lim_{h→0}\frac{\phi^*_h(t\otimes s)-t\otimes s}{h} =\lim_{h→0}\frac{(\phi^*_ht)\otimes (\phi_h^*s)-t\otimes s}{h}\\ \displaystyle =\lim_{h→0}\Big[(\phi^*_ht)\otimes\frac{\phi^*_hs-s}{h} +\frac{\phi^*_ht-t}{h}\otimes s\Big]\\ \displaystyle =t\otimes(\mathcal{L}_X s)+(\mathcal{L}_Xt)\otimes s. \end{matrix} \tag{19.19} \end{equation}For $t,s\in T^{(0,k)}M$ and $a,b\in R$
For $f ∈ C^∞ (M)$ and $t\in T^{(0,k)}M$
\begin{equation} \begin{matrix} \displaystyle \mathcal{L}_X(ft) =\lim_{h→0}\frac{\phi^*_h(ft)-ft}{h} =\lim_{h→0}\frac{(\phi^*_hf)(\phi_h^*t)-ft}{h}\\ \displaystyle =\lim_{h→0}\Big[\phi^*_hf\frac{\phi^*_ht-t}{h} +\frac{\phi^*_hf-f}{h}t\Big] =f(\mathcal{L}_X t)+(\mathcal{L}_Xf)t. \end{matrix} \tag{19.21} \end{equation}If $t\in T^{(0,k)}M$ is given locally by $t = t_{i_1... i_k} dx^{i_1} ⊗· · · ⊗ dx^{i_k}$, then
$$ \mathcal{L}_X t = \mathcal{L}_X (t_{i_1... i_k} dx^{i_1} ⊗ · · · ⊗ dx^{i_k} )\\ = (\mathcal{L}_X t_{i_1... i_k})dx^{i_1} ⊗ · · · ⊗ dx^{i_k} \\ + t_{i_1... i_k}\big( \mathcal{L}_X dx^{i_1} ⊗ · · · ⊗ dx^{i_k} + · · · + dx^{i_1} ⊗ · · · ⊗ \mathcal{L}_Xdx^{i_k}\big)\\ =(Xt_{i_1... i_k})dx^{i_1} ⊗ · · · ⊗ dx^{i_k}\\ + t_{i_1... i_k}\big[d (\mathcal{L}_X x^{i_1}) ⊗ · · · ⊗ dx^{i_k} + · · · + dx^{i_1} ⊗ · · · ⊗ d(\mathcal{L}_Xx^{i_k})\big].\\ $$If $X = X^m \frac{∂}{∂ x^m}$, then
$$ \mathcal{L}_Xx^i=Xx^i=\big(X^m \frac{∂}{∂ x^m}\big)x^i=X^i, $$consequently
\begin{equation} d(\mathcal{L}_Xx^i)=dX^i=\frac{∂X^i}{∂ x^m}dx^m, \tag{19.22'} \end{equation}and \begin{eqnarray*} &\mathcal{L}_X t = (Xt_{i_1... i_k} ) dx^{i_1} ⊗ · · · ⊗ dx^{i_k}\\ &+t_{i_1... i_k} \big(\frac{∂X^{i_1}}{∂ x^m}dx^m\otimes\ldots\otimes dx^{i_k}+\ldots+dx^{i_1}\otimes\ldots\otimes\frac{∂X^{i_k}}{∂ x^m}dx^m\Big)\\ &=\big(X^m\frac{\partial t_{i_1... i_k}}{∂ x^m}+ t_{i_m... i_k}\frac{∂X^{i_m}}{∂ x^{i_1}}+\ldots +t_{i_1... i_m}\frac{∂X^{i_m}}{∂ x^{i_k}}\Big)dx^{i_1} ⊗ · · · ⊗ dx^{i_k}. \tag{19.23} \end{eqnarray*}
Example 19.8
Compute $\ \mathcal{L}_Xt\ \ $ for $\ X=(1-x)\frac{\partial}{\partial x}+(x-y)\frac{\partial}{\partial y}\ \ $ and $\ \ t=xdx⊗dx+dx⊗d𝑦+𝑦d𝑦⊗dx.$
First define the tensor field and vector field:
%display latex
M = Manifold(2, 'M') # manifold M
c_xy.<x,y> = M.chart() # chart on M
e_xy = c_xy.frame() # local basis of vector fields
t = M.tensor_field(0, 2, {e_xy: [[x, 1], [y, 0]]}, name='t')
t.disp() # tensor field t of (0,2)-type
e_xy # show the local basis
X = M.vector_field({e_xy: [1-x, x-y]}, name='X')
X.disp() # vector field X
Now we can compute $\ \mathcal{L}_Xt:\ \ $
lt = t.lie_derivative(X) # Lie derivative L_X(t)
lt.display(e_xy)
Example 19.9
For a deeper understanding of the formula (19.23) let us take a more general example.
Let $\ \ t=𝑡_{00}d𝑥^0⊗d𝑥^0+𝑡_{01}d𝑥^0⊗d𝑥^1+𝑡_{10}d𝑥^1⊗d𝑥^0+𝑡_{11}d𝑥^1⊗d𝑥^1.\ \ $
N=2 # dimension of manifold M
M = Manifold(N, 'M') # manifold M
c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M
x0, x1 = c_x[:] # coordinates x^0, x^1 of chart c_x as the Python variables x0, x1
t = M.tensor_field(0,2, name='t') # tensor field t of type (0,2)
def f2(i,j): return 't'+str(i)+str(j) # names of components
# component functions:
f1 = [[M.scalar_field(function(f2(j,k))(x0,x1), name=f2(j,k))
for k in range(N)] for j in range(N)]
t[:] = f1 # define all components of t
%display latex
Manifold.options.omit_function_arguments=True
t.disp() # show tensor field t
and $\ \ X=X^0\frac{\partial}{\partial x^0}+X^1\frac{\partial}{\partial x^1}$
# continuation
X = M.vector_field(name='X') # vector field X
Xf=[M.scalar_field(function('X'+str(i), # list of components
latex_name='X'+'^'+str(i))(x0,x1))
for i in range(N)]
X[:] = Xf # define all comp. of X
X.disp() # show vect.field X
Compute the Lie derivative$\ \mathcal{L}_Xt:\ \ $
lt = t.lie_derivative(X)
lt.disp()
For comparison, using (19.23) without simplifications we obtain
$$ \begin{matrix} \Big(X^m\frac{\partial t_{i_1... i_k}}{∂ x^m} & +t_{i_m... i_k}\frac{∂X^{i_m}}{∂ x^{i_1}}+ & ...+t_{i_1... i_m}\frac{∂X^{i_m}}{∂ x^{i_k}}\Big) & dx^{i_1} ⊗ · · · ⊗ dx^{i_k}\\ =\Big(X^0\frac{\partial t_{00}}{\partial x^0}+X^1 \frac{\partial t_{00}}{\partial x^1} & +t_{00}\frac{\partial X^0}{\partial x^0}+t_{10}\frac{\partial X^1}{\partial x^0} & +t_{00}\frac{\partial X^0}{\partial x^0}+t_{01}\frac{\partial X^1}{\partial x^0} \Big)& dx^0\otimes dx^0\\ +\Big(X^0\frac{\partial t_{01}}{\partial x^0}+X^1 \frac{\partial t_{01}}{\partial x^1} & +t_{01}\frac{\partial X^0}{\partial x^0}+t_{11}\frac{\partial X^1}{\partial x^0} & +t_{00}\frac{\partial X^0}{\partial x^1}+t_{01}\frac{\partial X^1}{\partial x^1} \Big)& dx^0\otimes dx^1\\ +\Big(X^0\frac{\partial t_{10}}{\partial x^0}+X^1 \frac{\partial t_{10}}{\partial x^1} & +t_{00}\frac{\partial X^0}{\partial x^1}+t_{10}\frac{\partial X^1}{\partial x^1} & +t_{10}\frac{\partial X^0}{\partial x^0}+t_{11}\frac{\partial X^1}{\partial x^0} \Big)& dx^1\otimes dx^0\\ +\Big(X^0\frac{\partial t_{11}}{\partial x^0}+X^1 \frac{\partial t_{11}}{\partial x^1} & +t_{01}\frac{\partial X^0}{\partial x^1}+t_{11}\frac{\partial X^1}{\partial x^1} & +t_{10}\frac{\partial X^0}{\partial x^1}+t_{11}\frac{\partial X^1}{\partial x^1} \Big)& dx^1\otimes dx^1, \end{matrix} $$which of course gives the same result.
# 3 ways how to obtain contraction sign
print(u'\u231F',u'\u300D',u'\uFF63')
⌟ 」 」
If $t\in T^{(0,k)}M,\ X\in \mathfrak{X}(M)$, then the contraction of $t$ with $X$, denoted by $\ X\mathbin{」}t\ $ is a tensor field from $T^{(0,k-1)}M$ defined by
\begin{equation} (X\mathbin{」}t)_p(X_{2p},\ldots,X_{kp})=t_p(X_p,X_{2p},\ldots,X_{kp}). \tag{19.24} \end{equation}Example 19.10
Let us compute $\ \ X\mathbin{」}t\ \ $ for $\ \ X=X^1\frac{\partial}{\partial x^1}+ X^2\frac{\partial}{\partial x^2}\ \ $ and $\ \ 𝑔=d𝑥^1⊗d𝑥^1+d𝑥^2⊗d𝑥^2.$
%display latex
N = 2 # dimension of manifold M
M = Manifold(2, 'M',start_index=1) # manifold M
c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(1, N+1)])) # chart on M
x1, x2 = c_x[:] # coordinates x^1, x^2 of chart c_x as the Python variables x1, x2
g = M.tensor_field(0, 2, name='g'); # tensor field of type (0,2)
g[1,1] = 1; g[2,2] = 1 # set nonzero components
g.display() # show g
X = M.vector_field() # vector field X
X[:] = (function('X1', latex_name='X^1')(x1,x2), # define components of X
function('X2', latex_name='X^2')(x1,x2))
Manifold.options.omit_function_arguments=True
X.display() # show X
X.contract(g).display() # X 」g
Example 19.11
Compute $\ \ X\mathbin{」} a\ \ $ for $\ \ X=X^1\frac{\partial}{\partial x^1}+ X^2\frac{\partial}{\partial x^2}\ \ $ and $\ \ a= 𝑎_1d𝑥^1+𝑎_2d𝑥^2.$
# continuation
a = M.one_form() # one-form a
# define components of a
a[:] = (function('a1')(x1,x2), function('a2')(x1,x2))
a.disp() # show a
(X.contract(a)).disp() # X 」 a
X.interior_product(a).disp() # interior product
# gives the same results for k-forms
a(X).disp() # value of a on X
X(a).disp() # value of X on a
Example 19.12
Compute $\ \ X\mathbin{」}t\ \ $ for $\ \ X=X^0\frac{\partial}{\partial x^0}+ X^1\frac{\partial}{\partial x^1}\ \ $ and $\ \ 𝑡=𝑡_{00}d𝑥^0⊗d𝑥^0+𝑡_{01}d𝑥^0⊗d𝑥^1+𝑡_{10}d𝑥^1⊗d𝑥^0+𝑡_{11}d𝑥^1⊗d𝑥^1.$
N = 2 # dimension of manifold M
M = Manifold(N, 'M') # manifold M
c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M
x0, x1 = c_x[:] # coordinates x^0, x^1 of chart c_x as the Python variables x0, x1
t = M.tensor_field(0,2, name='t') # tensor field t of type (0,2)
def f2(i,j): return 't'+str(i)+str(j) # names of components
# list of components:
f = [[M.scalar_field(function(f2(j,k))(x0,x1), name=f2(j,k))
for k in range(2)] for j in range(2)]
t[:] = f # all components of t
%display latex
Manifold.options.omit_function_arguments=True
t.disp() # show t
X = M.vector_field() # vector field X
X[:] = (function('X0',latex_name='X^0')(x0,x1), # list of comp.
function('X1',latex_name='X^1')(x0,x1))
X.contract(t).display() # X 」 t
Let $ψ:M → N$ be a diffeomorphisms, $\ t\in T^{(0,k)}N\ $ and $\ X\in \mathfrak{X}(N)$. Recall that since $ψ^∗ X$ and $X$ are $ψ$-related, then $X_{\psi(p)}=d\psi_p(\psi^*X)_p\ $ (cf. (19.7')) and $(ψ^∗ X)(ψ^∗ f ) = ψ^∗ (X f )\ $ (cf. (19.8)), therefore
$$[(ψ^∗ X)\mathbin{」}(ψ^∗ t)]_p (X_{2p} , . . . , X_{kp} ) =(ψ^∗ t)_p ((ψ^∗ X)_p , X_{2p} , . . . , X_{kp})\\ = t_{ψ( p)} (dψ_p (ψ^∗ X)_p , dψ_p X_{2p} , . . . , dψ_p X_{kp})\\ = t_{ψ( p)} (X_{ψ( p)} ,dψ_p X_{2p} , . . . , dψ_p X_{kp} )\\ =(X\mathbin{」} t)_{ψ( p)} (dψ_p X_{2p} , . . . , dψ_p X_{kp} ) = [ψ^∗ (X\mathbin{」} t)]_p (X_{2p} , . . . , X_{kp} ), $$for $X_{2p},\ldots,X_{kp}\in T_pN.$ We have proved
\begin{equation} ψ^∗ (X\mathbin{」} t)=(ψ^∗ X)\mathbin{」}(ψ^∗ t). \tag{19.25} \end{equation}In a consequence, if $\phi_t$ is a one-parameter group of transformations on 𝑀, $X$ its infinitesimal generator and $Y\in\mathfrak{X}(M)$, then for $t\in T^{(0,k)}M$ $$\mathcal{L}_X (Y\mathbin{」}t)= \lim_{h\to 0}\frac{\phi_h^*(Y\mathbin{」}t)-Y\mathbin{」}t}{h} =\lim_{h\to 0}\frac{\phi_h^*(Y)\mathbin{」}(\phi^*_ht)-Y\mathbin{」}t}{h}\\ =\lim_{h\to 0}\frac{\phi_h^*(Y)\mathbin{」}(\phi^*_ht)- \phi_h^*(Y)\mathbin{」}t+\phi_h^*(Y)\mathbin{」}t-Y\mathbin{」}t}{h}\\ =\lim_{h\to 0}\Big[\phi_h^*Y\mathbin{」}\frac{\phi_h^*t-t}{h}+ \frac{\phi_h^*Y-Y}{h}\mathbin{」}t\Big]. $$
Thus \begin{equation} \mathcal{L}_X (Y\mathbin{」}t)=(\mathcal{L}_XY)\mathbin{」}t +Y\mathbin{」}\mathcal{L}_Xt. \tag{19.26} \end{equation}
Example 19.13
Compute both sides of (19.26) for $\ X=-y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y},$ $\ \ Y=(1-x)\frac{\partial}{\partial x}+(x-y)\frac{\partial}{\partial y}\ \ $ and $g=ydx⊗dx+xd𝑦⊗dy.$
First we define $g,\ X,\ Y$:
%display latex
M = Manifold(2, 'M') # manifold M
c_xy.<x,y> = M.chart() # chart on M
g = M.tensor_field(0,2, name='g'); # tensor field of type (0,2)
g[0,0] = y; g[1,1] = x # set nonzero components
X = M.vector_field(-y, x, name='X') # vector field X
Y = M.vector_field(1-x, x-y, name='Y') # vector field Y
Left hand side of (19.26) in SageMath:
(Y.contract(g)).lie_derivative(X).disp()
Right hand side of (19.26):
r1 = (Y.lie_derivative(X)).contract(g)
r2 = Y.contract(g.lie_derivative(X))
(r1 + r2).disp()
From (19.24) it follows \begin{equation} t_p(X_p,X_{2p},\ldots,X_{kp})=(X\mathbin{」}t)_p(X_{2p},\ldots,X_{kp}),\quad \text{for}\ t\in T^{(0,k)}M, \end{equation}
and $X_i\in\mathfrak{X}(M)$.
As a consequence we obtain
$$ t_p(Y_{1p},Y_{2p},\ldots,Y_{kp})=(Y_{1p}\mathbin{」}t)_p(Y_{2p},\ldots,Y_{kp})\\ =(Y_{2p}\mathbin{」}(Y_{1p}\mathbin{」}t))_p(Y_{3p},\ldots,Y_{kp})=\ldots\\ =(Y_{kp}\mathbin{」}Y_{(k-1)p}\mathbin{」}\ldots\mathbin{」}Y_{1p}\mathbin{」}t), $$i.e., for $\ t\in T^{(0,k)}M$ and $Y_i\in\mathfrak{X}(M)$
\begin{equation} t(Y_1,Y_2,\ldots,Y_k)=Y_k\mathbin{」}Y_{k-1}\mathbin{」}\ldots\mathbin{」}Y_1\mathbin{」}t. \tag{19.27} \end{equation}We know from (19.2) that $Xf=\mathcal{L}_Xf$, so
$$X( t (Y_1 , . . . , Y_k )) = \mathcal{L}_X (t (Y_1 , . . . , Y_k ))= \mathcal{L}_X(Y_k\mathbin{」}Y_{k-1}\mathbin{」}\ldots\mathbin{」}Y_1\mathbin{」}t)\\ =[(\mathcal{L}_XY_k)\mathbin{」}Y_{k-1}\mathbin{」}\ldots\mathbin{」}Y_1\mathbin{」}t\\ +Y_k\mathbin{」}(\mathcal{L}_XY_{k-1})\mathbin{」}\ldots\mathbin{」}Y_1\mathbin{」}t\\ ............................\\ +Y_k\mathbin{」}Y_{k-1}\mathbin{」}\ldots\mathbin{」}(\mathcal{L}_XY_1)\mathbin{」}t\\ +Y_k\mathbin{」}Y_{k-1}\mathbin{」}\ldots\mathbin{」}Y_1\mathbin{」}(\mathcal{L}_Xt)] $$According to (19.27) we have
$$ t(Y_1,\ldots,Y_{k-1},\mathcal{L}_XY_k)= (\mathcal{L}_XY_k)\mathbin{」}Y_{k-1}\mathbin{」}\ldots\mathbin{」}Y_1\mathbin{」}t,\\ t(Y_1,\ldots,\mathcal{L}_XY_{k-1},Y_k)= Y_k\mathbin{」}(\mathcal{L}_XY_{k-1})\mathbin{」}\ldots\mathbin{」}Y_1\mathbin{」}t,\\ ......................................\\ t(\mathcal{L}_XY_1,\ldots,Y_{k-1},Y_k)= Y_k\mathbin{」}Y_{k-1}\mathbin{」}\ldots\mathbin{」}(\mathcal{L}_XY_1)\mathbin{」}t,\\ (\mathcal{L}_Xt)(Y_1,\ldots,Y_{k-1},Y_k)= Y_k\mathbin{」}Y_{k-1}\mathbin{」}\ldots\mathbin{」}Y_1\mathbin{」}(\mathcal{L}_Xt). $$Therefore
$$X( t (Y_1 , . . . , Y_k )) =t (Y_1 , Y_2 , . . . , \mathcal{L}_X Y_k ) + t (Y_1 , Y_2 , . . . , \mathcal{L}_X Y_{k−1} , Y_k ) + · · ·\\ + t (\mathcal{L}_X Y_1 , Y_2 , . . . , Y_k ) + (\mathcal{L}_X t)(Y_1 , . . . , Y_k )\\ = (\mathcal{L}_X t)(Y_1 , . . . , Y_k )+ \sum_{i=1}^k t (Y_1 , . . . , \mathcal{L}_X Y_i , . . . , Y_k). $$We have proved
\begin{equation} (\mathcal{L}_X t)(Y_1 ,.., Y_k ) = X (t (Y_1 ,.., Y_k )) -\sum_{i=1}^kt (Y_1 ,.., [X, Y_i ],.., Y_k ). \tag{19.28} \end{equation}Example 19.14
Compute both sides of (19.28) for $\ X=-y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y},$ $\ \ Y_1=(1-x)\frac{\partial}{\partial x}+(x-y)\frac{\partial}{\partial y},\ \ Y_2=(y+1)\frac{\partial}{\partial x}+(x-2)\frac{\partial}{\partial y},\ $ and $t=ydx⊗dx+xd𝑦⊗dy.$
First we define $\ t,\ X,\ Y_1,Y_2$:
%display latex
M = Manifold(2, 'M') # manifold M
c_xy.<x,y> = M.chart() # chart on M
t = M.tensor_field(0,2, name='t') # tensor field of type (0,2)
t[0,0] = y; t[1,1] = x # set nonzero components
X = M.vector_field(-y, x, name='X') # vector field X
Y1 = M.vector_field(1-x, x-y, name='Y1') # vector field Y1
Y2 = M.vector_field(y+1, x-2, name='Y2') # vector field Y2
L = t.lie_derivative(X)(Y1,Y2) # left hand side of (19.28)
L.expr() # value of L
R = X(t(Y1,Y2)) - t(X.bracket(Y1),Y2) - t(Y1,X.bracket(Y2))
R # right hand side of (19.28)
R.expr() # value of R
Repeating the use of (19.28) we obtain
$$(\mathcal{L}_X (\mathcal{L}_Y t)) (Z_1 , . . . , Z_k )\\ =X ((\mathcal{L}_Y t)(Z_1 , . . . , Z_k ))-\sum_{i=1}^k (\mathcal{L}_Y t)(Z_1 , . . . , [X, Z_i ], . . . , Z_k )\\ = X \Big\{Y (t (Z_1 , . . . , Z_k )) -\sum_{i=1}^k t (Z_1 , . . . , [Y, Z_j ], . . . , Z_k )\ \Big\}\\ -\sum_{i=1}^k \Big\{Y (t (Z_1 , . . . , [X, Z_i ], . . . , Z_k ) − t (Z_1 , . . . , [Y, [X, Z_i ]], . . . , Z_k )\\ -\sum_{j=1,j<i}^kt (Z_1 , . . . , [Y, Z_j ], . . . , [X, Z_i ], . . . , Z_k )\\ -\sum_{j=1,j>i}^kt (Z_1 , . . . , [X, Z_i ], . . . , [Y, Z_j ], . . . , Z_k ) \Big\}\\ = XY( t (Z_1 , . . . , Z_k ))-\sum_{j=1}^k X (t (Z_1 , . . . , [Y, Z_j ], . . . , Z_k ))\\ -\sum_{i=1}^k \Big\{Y (t (Z_1 , . . . , [X, Z_i ], . . . , Z_k ) ) − t (Z_1 , . . . , [Y, [X, Z_i ]], . . . , Z_k )\\ -\sum_{j=1,j<i}^k t (Z_1 , . . . , [Y, Z_j ], . . . , [X, Z_i ], . . . , Z_k )\\ -\sum_{j=1,j>i}^k t (Z_1 , . . . , [X, Z_i ], . . . , [Y, Z_j ], . . . , Z_k ) \Big\}, $$and analogously
$$ (\mathcal{L}_Y (\mathcal{L}_X t)) (Z_1 , . . . , Z_k )\\ =YX( t (Z_1 , . . . , Z_k )) -\sum_{i=1}^kY (t (Z_1 , . . . , [Y, Z_i ], . . . , Z_k ))\\ -\sum_{i=1}^k \Big\{X (t (Z_1 , . . . , [Y, Z_i ], . . . , Z_k ) ) − t (Z_1 , . . . , [X, [Y, Z_i ]], . . . , Z_k )\\ -\sum_{j=1,j<i}^k t (Z_1 , . . . , [X, Z_j ], . . . , [Y, Z_i ], . . . , Z_k )\\ -\sum_{j=1,j>i}^k t (Z_1 , . . . , [Y, Z_i ], . . . , [X, Z_j ], . . . , Z_k ) \Big\}. $$The Jacobi identity $\ \ -[Y,[Z_i,X]]-[X,[Y,Z_i]]-[Z_i,[X,Y]]=0,\ $ implies
$$[Y,[X,Z_i]]-[X,[Y,Z_i]]=-[[X,Y],Z_i],$$so
$$ (\mathcal{L}_X (\mathcal{L}_Y t) )(Z_1 , . . . , Z_k ) − \mathcal{L}_Y (\mathcal{L}_X t) )(Z_1 , . . . , Z_k )\\ = [X, Y] (t (Z_1 , . . . , Z_k )) -\sum_{i=1}^k t (Z_1 , . . . , [[X, Y], Z_i ], . . . , Z_k ). $$Thus \begin{equation} \mathcal{L}_X (\mathcal{L}_Y t) − \mathcal{L}_Y (\mathcal{L}_X t) = \mathcal{L}_{[X,Y]} t. \tag{19.29} \end{equation}
Using the fact that $\mathcal{L}_X X = [X, X] = 0$, we obtain:
$$\mathcal{L}_X (X \mathbin{」}t) = (\mathcal{L}_X X)\mathbin{」} t + X\mathbin{」} (\mathcal{L}_X t) = X\mathbin{」} (\mathcal{L}_X t).$$Example 19.15
Check (19.29) for a 2-dimensional manifold and tensor $t$ of type (0,2).
%display latex
N = 2 # dimension of manifold M
M = Manifold(N, 'M') # manifold M
c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M
x0, x1 = c_x[:] # coordinates x^0, x^1 of chart c_x as the Python variables x0, x1
X = M.vector_field(name='X') # vector field X
Xf = [M.scalar_field(function('X'+str(i), # list of components
latex_name='X'+'^'+str(i))(x0,x1))
for i in range(N)]
X[:] = Xf
Y = M.vector_field(name='Y') # vector field Y
Yf = [M.scalar_field(function('Y'+str(i), # list of components
latex_name='Y'+'^'+str(i))(x0,x1))
for i in range(N)]
Y[:] = Yf
t = M.tensor_field(0,2, name='t') # tensor field t of type (0,2)
def f2(i,j): return 't'+str(i)+str(j) # names of components
# list of components:
f = [[M.scalar_field(function(f2(j,k))(x0,x1), name=f2(j,k))
for k in range(2)] for j in range(2)]
t[:] = f
t.disp() # show t
[X.disp(), Y.disp()] # show X,Y
L_XL_Yt = (t.lie_derivative(Y)).lie_derivative(X) # L_XL_Y(t)
L_YL_Xt = (t.lie_derivative(X)).lie_derivative(Y) # L_YL_X(t)
L = L_XL_Yt-L_YL_Xt # Left hand side of (19.29)
R = t.lie_derivative(X.bracket(Y)) # Right hand side of (19.29)
L == R # check (19.29)
# slow
For a general tensor field $t\in T^{(k,m)}M$ the lie derivative is defined by
\begin{equation} \begin{matrix} (£_X t)(α_1 , . . . , α_k , Y_1 , . . . , Y_m ) = X (t (α_1 , . . . , α_k , Y_1 , . . . , Y_m ))\\ -\sum_{i=1}^k t (α_1 , . . . , £_X α_i , . . . , α_k , Y_1 , . . . , Y_m )\\ -\sum_{i=1}^m t (α_1 , . . . , α_k , Y_1 , . . . , £_X Y_i , . . . , Y_m ), \end{matrix} \tag{19.30} \end{equation}for $\ α_1 , . . . , α_k ∈ \Omega^1(M)\ $ and $\ Y_1 , . . . , Y_m ∈ \mathfrak{X}(M)$.
If in coordinates $\ (x^1,\ldots,x^n)\ $ the tensor field $t\in T^{(k,m)}M$ has components $t^{i_1\ldots i_k}_{j_1\ldots j_m}$, then the Lie derivative $\ \mathcal{L}_Xt\ \ $ has components
\begin{equation} \begin{matrix} \displaystyle (\mathcal{L}_Xt)^{i_1\ldots i_k}_{j_1\ldots j_m} =X^p\frac{\partial t^{i_1\ldots i_k}_{j_1\ldots j_m}}{\partial x^p} -t^{p\,i_2\ldots i_k}_{j_1\ldots j_m}\frac{\partial X^{i_1}}{\partial x^p} \ldots -t^{i_1\ldots i_{k-1}p}_{j_1\ldots j_m}\frac{\partial X^{i_k}}{\partial x^p}\\ \displaystyle +t^{i_1\ldots i_k}_{p\,j_2\ldots j_m}\frac{\partial X^p}{\partial x^{j_1}} +\ldots +t^{i_1\ldots i_k}_{j_1\ldots j_{m-1}\,p}\frac{\partial X^p}{\partial x^{j_m}}. \end{matrix} \tag{19.31} \end{equation}The formula follows from (19.30). In fact, computing $\mathcal{L}_X$ for scalars $\ f\ $ we have by (19.2) $\ \mathcal{L}_Xf=Xf,\ $ so $\ \mathcal{L}_X(t^{i_1\ldots i_k}_{j_1\ldots j_m})=X^p\frac{\partial t^{i_1\ldots i_k}_{j_1\ldots j_m}}{\partial x^p}$, computing $\mathcal{L}_X$ for $\ dx^i\ $ we have by (19.22), (19.22') $\ \ \mathcal{L}_Xdx^i=\frac{\partial X^i}{\partial x^p}dx^p,\ $ and computing $\mathcal{L}_X$ for for $\frac{\partial}{\partial x^k}$ we can use Lie brackets: $$\mathcal{L}_X \frac{\partial}{\partial x^k} =[X,\frac{\partial}{\partial x^k}]=[X^p\frac{\partial}{\partial x^p}, \delta^i_k\frac{\partial}{\partial x^i}]=(X\delta^i_k-\frac{\partial}{\partial x^k}X^p)\frac{\partial}{\partial x^p} =-\frac{\partial X^p}{\partial x^k} \frac{\partial}{\partial x^p}, $$
(cf. also (19.23)).
Example 19.16
Compute the Lie derivative $\ \mathcal{L}_Xt\ \ $ for $\ \ X=X^0\frac{\partial}{\partial x^0}+ X^1\frac{\partial}{\partial x^1}\ \ $ and $𝑡=𝑡^0_0\frac{∂}{∂𝑥^0}⊗d𝑥^0+𝑡^0_1\frac{∂}{∂𝑥^0}⊗d𝑥^1+𝑡^1_0\frac{∂}{∂𝑥^1}⊗d𝑥^0+𝑡^1_1\frac{∂}{∂𝑥^1}⊗d𝑥^1.$
%display latex
N = 2 # dimension of manifold M
M = Manifold(N, 'M') # manifold M
c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M
def fn(i,j): return 't'+str(i)+str(j) # names of components
def fl(i,j): return 't'+'^'+str(i)+'_'+str(j) # latex names of comp.
# list of components of t:
ff = [[M.scalar_field(function(fn(i,j), latex_name=fl(i,j))(*c_x))
for j in range(N)] for i in range(N)]
t = M.tensor_field(1,1, name='t') # tensor field t
t[:] = ff # define all components of t
Manifold.options.omit_function_arguments=True
t.disp() # show t
X = M.vector_field() # vector field X
X[:] = (function('X0', latex_name='X^0')(*c_x),
function('X1', latex_name='X^1')(*c_x)) # comp. of X
LtX = t.lie_derivative(X) # Lie derivative L_X(t)
LtX.disp() # show Lie derivative
For comparison, using (19.31) without simplifications we obtain the following components of $\ \mathcal{L}_Xt\ \ $ (in the first row we repeat the general formula)
$$ \begin{matrix} X^p\frac{\partial t^{i_1\ldots i_k}_{j_1\ldots j_m}}{\partial x^p} & -t^{p\,i_2\ldots i_k}_{j_1\ldots j_m}\frac{\partial X^{i_1}}{\partial x^p} \ldots -t^{i_1\ldots i_{k-1}p}_{j_1\ldots j_m}\frac{\partial X^{i_k}}{\partial x^p} & +t^{i_1\ldots i_k}_{p\,j_2\ldots j_m}\frac{\partial X^p}{\partial x^{j_1}} +\ldots +t^{i_1\ldots i_k}_{j_1\ldots j_{m-1}\,p}\frac{\partial X^p}{\partial x^{j_m}}\\ X^0\frac{\partial t^0_0}{\partial x^0}+X^1\frac{\partial t^0_0}{\partial x^1} & -t^0_0\frac{\partial X^0}{\partial x^0}-t^1_0\frac{\partial X^0}{\partial x^1} & +t^0_0\frac{\partial X^0}{\partial x^0}+t^0_1\frac{\partial X^1}{\partial x^0}\\ X^0\frac{\partial t^0_1}{\partial x^0}+X^1\frac{\partial t^0_1}{\partial x^1} & -t^0_1\frac{\partial X^0}{\partial x^0}-t^1_1\frac{\partial X^0}{\partial x^1} & +t^0_0\frac{\partial X^0}{\partial x^1}+t^0_1\frac{\partial X^1}{\partial x^1}\\ X^0\frac{\partial t^1_0}{\partial x^0}+X^1\frac{\partial t^1_0}{\partial x^1} & -t^0_0\frac{\partial X^1}{\partial x^0}-t^1_0\frac{\partial X^1}{\partial x^1} & +t^1_0\frac{\partial X^0}{\partial x^0}+t^1_1\frac{\partial X^1}{\partial x^0}\\ X^0\frac{\partial t^1_1}{\partial x^0}+X^1\frac{\partial t^1_1}{\partial x^1} & -t^0_1\frac{\partial X^1}{\partial x^0}-t^1_1\frac{\partial X^1}{\partial x^1} & +t^1_0\frac{\partial X^0}{\partial x^1}+t^1_1\frac{\partial X^1}{\partial x^1} \end{matrix} $$which of course gives the same result.
Bellow we list the components of the Lie derivative using display_comp
method:
LtX.display_comp(coordinate_labels=False)
#LtX.comp()[:] # matrix of components
Take a look at the notebook Integration of differential forms on singular $k$-cubes.