{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 23. Curvature\n", "\n", "This notebook is part of the [Introduction to manifolds in SageMath](https://sagemanifolds.obspm.fr/intro_to_manifolds.html) by Andrzej Chrzeszczyk (Jan Kochanowski University of Kielce, Poland)." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'SageMath version 9.6, Release Date: 2022-05-15'" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "version()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Consider first the case of **Euclidean connection** (notebook 21).\n", "\n", "Recall that for an open subset $U\\subset R^n$, with Cartesian coordinate system $(U,x^1,\\ldots,x^n)$ and vector fields $X,Y\\in\\mathfrak{X}(U)$, $Y=Y^k \\frac{\\partial}{\\partial x^k}$, we defined the Euclidean connection by $D_XY=X(Y^k)\\frac{\\partial}{\\partial x^k}$.\n", "\n", "From this definition it follows that\n", "$$\n", "D_XD_YZ\n", "=X(Y(Z^k))\\frac{\\partial}{\\partial x^k},\\quad \\text{ for }\n", "X,Y,Z\\in\\mathfrak{X}(U).\n", "$$\n", "In fact, from the definition of $D_YZ$ it follows that if we put \n", "$\\tilde{Y}^k=Y(Z^k)$, then\n", "$$D_XD_YZ=D_X(Y(Z^k)\\frac{\\partial}{\\partial x^k})\n", "=D_X(\\tilde{Y}^k\\frac{\\partial}{\\partial x^k})\n", "=X(\\tilde{Y}^k)\\frac{\\partial}{\\partial x^k}=\n", "X(Y(Z^k))\\frac{\\partial}{\\partial x^k}.\n", "$$\n", "\n", "Using this representation for iterated Euclidean connection we can see that\n", "$$D_XD_YZ-D_YD_XZ\n", "=X(Y(Z^k))\\frac{\\partial}{\\partial x^k}\n", "-Y(X(Z^k))\\frac{\\partial}{\\partial x^k}\n", "=[X,Y](Z^k)\\frac{\\partial}{\\partial x^k}\n", "=D_{[X,Y]}Z.\n", "$$\n", " i.e.\n", " \\begin{equation}\n", " D_XD_YZ-D_YD_XZ\n", "-D_{[X,Y]}Z=0.\n", "\\tag{*}\n", "\\end{equation}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Recall also that for general connection $\\ \\nabla\\ $ and general vector fields $\\displaystyle X=X^i\\frac{∂}{∂x^i}, Y=Y^j\\frac{∂}{∂x^j}$ we have $\\displaystyle ∇_X Y = (X^i\\frac{∂}{∂x^i} Y^k + Γ^k_{ij} X^i Y^j )\\frac{∂}{∂x^k}$,\n", "where $Γ^k_{ij}$ are defined by \n", "$\\displaystyle ∇_{\\frac{∂}{∂x^i}} \\frac{∂}{∂x^j} = Γ^k_{ij}\\frac{∂} {∂x^k}$ and consequently the equality $(*)$ is not true. Nevertheless the left hand side of $(*)$ can be used as a kind of \n", "measure of \"flatness\" of the manifold\n", "or a measure how much the geometry of the manifold differs from the geometry of the Euclidean space." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "\n", "### Curvature map\n", "\n", "
\n", "\n", "The **curvature** $R$, of the connection ∇ is a map that associates to each pair\n", "of vector fields an operator from $\\mathfrak{X}(M)$ into itself, given by\n", "\n", "\\begin{equation}\n", "R(X, Y)Z = ∇_X ∇_Y Z − ∇_Y ∇_X Z− ∇_{[X,Y]}Z,\\quad\n", "\\text{for}\\ X, Y, Z ∈ \\mathfrak{X}(M).\n", "\\tag{23.1}\n", "\\end{equation}\n", "\n", "From the properties of the covariant derivative and Lie bracket it follows\n", "\n", "$$\n", "R(X, Y) = −R(Y, X)\\\\\n", "$$\n", "To prove the tensorial property (see notebook 13) of $R$ , we need to show that\n", "$R(X, Y )Z$ is multilinear over $C^∞ (M )$ in each of the three vector fields. First we show linearity for the $X$ variable, from which linearity immediately follows for the $Y$\n", "variable.\n", "
\n", "Let $f_1 , f_2 ∈ C^∞ (M ).$ Then\n", "\n", "$$R(f_1 X_1 + f_2 X_2 , Y )Z \\\\\n", "=\\nabla_{f_1X_1+f_2X_2}\\nabla_YZ-\\nabla_Y\\nabla_{f_1X_1+f2X_2}Z-\n", "\\nabla_{[f_1X1+f_2X_2,Y]}Z\n", "\\\\\n", "= (f_1 ∇_{X_1} + f_2 ∇_{X_2} )∇_Y Z\n", "-∇_Y (f_1 ∇_{X_1} + f_2 ∇_{X_2} )Z − ∇_{[f_1 X_1 ,Y ]+[f_2 X_2 ,Y ]} Z.\n", "$$\n", "\n", "Since (cf. notebook 12) $\\ [f X , Y ] = f [X , Y ] − Y (f )X $, we have\n", "\n", "$$\n", "R(f_1 X_1 + f_2 X_2 , Y )Z\n", "= f_1 ∇_{X_1} ∇_Y Z + f_2 ∇_{X_2} ∇_Y Z\\\\ − f_1 ∇_Y ∇_{X_1} Z − Y (f_1 )∇_{X_1}Z\n", "− f_2 ∇_Y ∇_{X_2} Z − Y (f_2 )∇_{X_2} Z\\\\ − ∇_{f_1 [X_1 ,Y ]−Y (f_1 )X_1} Z − ∇_{f_2[X_2 ,Y ]−Y (f_2 )X_2} Z\\\\\n", "=f_1 ∇_{X_1} ∇_Y Z − f_1 ∇_Y ∇_{X_1} Z − f_1 ∇_{[X_1 ,Y ]} Z\\\\ \n", "+ f_2 ∇_{X_2} ∇_Y Z − f_2 ∇_Y ∇_{X_2} Z − f_2 ∇_{[X_2 ,Y ]}Z\\\\\n", "− Y (f_1 )∇_{X_1} Z − Y (f_2 )∇_{X_2} Z + Y (f_1 )∇_{X_1} Z + Y (f_2 )∇_{X_2} Z\\\\\n", "= f_1 R(X_1 , Y )Z + f_2 R(X_2 , Y )Z.\n", "$$\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "Next we check the linearity for the $Z$ variable\n", "\n", "$$R(X, Y)( f_1 Z_1+f_2Z_2)\\\\\n", "=\n", "∇_X ∇_Y (f_1 Z_1+f_2Z_2) − ∇_Y ∇_X (f_1 Z_1+f_2Z_2) \n", "− ∇_{[X,Y ]} (f_1 Z_1+f_2Z_2)\\\\\n", "=∇_X (Y (f_1 )Z_1+ f_1 ∇_Y Z_1)\n", "− ∇_Y (X(f_1 )Z_1 + f_1 ∇_X Z_1)\n", "-[X,Y](f_1)Z_1-f_1 ∇_{[X,Y]}Z_1\\\\\n", "+∇_X (Y (f_2 )Z_2+ f_2 ∇_Y Z_2)\n", "− ∇_Y (X(f_2 )Z_2 + f_2 ∇_X Z_2)\n", "-[X,Y](f_2)Z_2-f_2 ∇_{[X,Y]}Z_2\\\\\n", "=X(Y (f_1 ))Z_1 + Y (f_1)∇_X Z_1 + X(f_1 )∇_Y Z_1 + f_1∇_X ∇_Y Z_1\\\\\n", "− Y (X(f_1))Z_1 − X(f_1) ∇_Y Z_1 − Y (f_1) ∇_X Z_1 − f_1∇_Y ∇_X Z_1\\\\\n", "− (X(Y (f_1))X − Y (X(f_1))Z_1 − f_1 ∇_{[X,Y ]} Z_1\\\\\n", "+X(Y (f_2 ))Z_2 + Y (f_2)∇_X Z_2 + X(f_2 )∇_Y Z_2 + f_2∇_X ∇_Y Z_2\\\\\n", "− Y (X(f_2))Z_2 − X(f_2) ∇_Y Z_2 − Y (f_2) ∇_X Z_2 − f_2∇_Y ∇_X Z_2\\\\\n", "− (X(Y (f_2))X − Y (X(f_2))Z_2 − f_2 ∇_{[X,Y ]} Z_2\\\\\n", "= f_1 (∇_X ∇_Y Z_1 − ∇_Y ∇_X Z_1 − ∇_{[X,Y ]} Z_1)\\\\\n", "+f_2 (∇_X ∇_Y Z_2 − ∇_Y ∇_X Z_2 − ∇_{[X,Y ]} Z_2)\\\\\n", "=f_1R(X,Y)Z_1+f_2R(X,Y)Z_2.\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "### Curvature tensor of type $T^{(1,3)}M$\n", "\n", "
\n", "\n", "\n", "Since $R$ takes its values in $\\mathfrak{X}(M)$, it does not satisfy the definition of tensor field (which takes its values in $C^\\infty(M) )$, however, $R$ is equivalent to the tensor field of type $T^{(1,3)}M$ defined by\n", "$\\tilde{R}(α, X, Y, Z) ≡ α(R(X, Y)Z).$ \n", "\n", "**Remark.** In `SageMath Manifolds` the method `riemann` returns this $(1,3)$-type tensor.\n", "\n", "A connection $∇$ is **flat** if its curvature tensor is zero.\n", "\n", "
\n", "\n", "### Curvature in local coordinates\n", "\n", "
\n", "\n", "If $X=X^i\\frac{\\partial}{\\partial x^i},\n", "Y=Y^j\\frac{\\partial}{\\partial x^j},\n", "Z=Z^k\\frac{\\partial}{\\partial x^k},$ then \n", "\n", "$$R(X, Y)Z = X^i Y^j Z^k R^m_{kij}\\frac{\\partial}{\\partial x^m},$$ where\n", "\n", "\\begin{equation}\n", "R^m_{kij}=\\frac{\\partial \\Gamma^m_{kj}}{\\partial x^i}\n", "-\\frac{\\partial \\Gamma^m_{ki}}{\\partial x^j}\n", "+\\Gamma^m_{li}\\Gamma^l_{kj}\n", "-\\Gamma^m_{lj}\\Gamma^l_{ki}\n", "\\tag{23.2}\n", "\\end{equation}\n", "\n", "\n", "In fact, from (23.1), the definition of Christoffel symbols and the relation $[\\frac{\\partial}{\\partial x^i},\\frac{\\partial}{\\partial x^j}]=0$ we have\n", "\n", "$$\\displaystyle\n", "R(\\frac{\\partial}{\\partial x^i},\n", "\\frac{\\partial}{\\partial x^j})\n", "\\frac{\\partial}{\\partial x^k}=\\displaystyle\n", "=\\nabla_{\\frac{\\partial}{\\partial x^i}}\n", "\\nabla_{\\frac{\\partial}{\\partial x^j}}\\frac{\\partial}{\\partial x^k}\n", "-\\nabla_{\\frac{\\partial}{\\partial x^j}}\n", "\\nabla_{\\frac{\\partial}{\\partial x^i}}\\frac{\\partial}{\\partial x^k}\\\\\n", "=\\displaystyle\n", "\\nabla_{\\frac{\\partial}{\\partial x^i}}\n", "\\Big(\\Gamma^m_{kj}\\frac{\\partial}{\\partial x^m}\\Big)\n", "-\\nabla_{\\frac{\\partial}{\\partial x^j}}\n", "\\Big(\\Gamma^m_{ki}\\frac{\\partial}{\\partial x^m}\\Big)\\\\\n", "=\\Gamma^m_{kj}\\nabla_{\\frac{\\partial}{\\partial x^i}}\n", "\\frac{\\partial}{\\partial x^m}\n", "+\\frac{\\partial \\Gamma^m_{kj}}{\\partial x^i}\\frac{\\partial}{\\partial x^m}\n", "-\\Gamma^m_{ki}\\nabla_{\\frac{\\partial}{\\partial x^j}}\n", "\\frac{\\partial}{\\partial x^m}\n", "-\\frac{\\partial \\Gamma^m_{ki}}{\\partial x^j}\\frac{\\partial}{\\partial x^m}\\\\\n", "=\\Gamma^m_{kj}\\Gamma^l_{mi}\\frac{\\partial}{\\partial x^l}\n", "+\\frac{\\partial \\Gamma^m_{kj}}{\\partial x^i}\n", "\\frac{\\partial}{\\partial x^m}\n", "-\\Gamma^m_{ki}\\Gamma^l_{mj}\\frac{\\partial}{\\partial x^l}\n", "-\\frac{\\partial \\Gamma^m_{ki}}{\\partial x^j}\n", "\\frac{\\partial}{\\partial x^m}\\\\\n", "=\\Big(\\frac{\\partial \\Gamma^m_{kj}}{\\partial x^i}\n", "-\\frac{\\partial \\Gamma^m_{ki}}{\\partial x^j}\n", "+\\Gamma^m_{li}\\Gamma^l_{kj}\n", "-\\Gamma^m_{lj}\\Gamma^l_{ki}\\Big)\n", "\\frac{\\partial}{\\partial x^m}.\n", "$$\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "**Example 23.1**\n", "\n", "In notebook 21 we have noticed that \n", "all Christoffel symbols for the Euclidean connection vanish.\n", "Consequently the curvature for this connection vanishes." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Tensor field of type (1,3) on the 2-dimensional differentiable manifold R^2" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "R2=Manifold(2,'R^2') # manifold R^2\n", "c_xy.=R2.chart() # Cartesian coordinates\n", "nab=R2.affine_connection('nab') # Eucl.connection on R^2\n", "nab[1,1,1]=0 # all coeff. zero\n", "R=nab.riemann();R # curvature of Eucl.conect." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "R.disp() # show R" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "**Example 23.2**\n", "\n", "Using the standard metric of the Euclidean space, the previous example can be simplified." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Riem(g) = 0" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E.=EuclideanSpace()\n", "E.metric().riemann().disp()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "**Example 23.3**\n", "\n", "Consider the two-dimensional half-plane $y>0$ with connection coefficients defined by\n", "$\\ \\ \\Gamma^1_{12}=\\Gamma^1_{21}=\\Gamma^2_{22}=-\\frac{1}{y}\\ \\ $\n", "and $\\ \\ \\Gamma^2_{11}=\\frac{1}{y}.$" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "%display latex\n", "M = Manifold(2, 'M', start_index=1) # manifold M, y>0\n", "c_xy. = M.chart() # chart on M\n", " # affine connection on M:\n", "nab = M.affine_connection('nabla', r'\\nabla') " ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\begin{array}{lcl} \\Gamma_{\\phantom{\\, 1}\\,1\\,2}^{\\,1\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{1}{y} \\\\ \\Gamma_{\\phantom{\\, 1}\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{1}{y} \\\\ \\Gamma_{\\phantom{\\, 2}\\,1\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}} & = & \\frac{1}{y} \\\\ \\Gamma_{\\phantom{\\, 2}\\,2\\,2}^{\\,2\\phantom{\\, 2}\\phantom{\\, 2}} & = & -\\frac{1}{y} \\end{array}\\)" ], "text/latex": [ "$\\displaystyle \\begin{array}{lcl} \\Gamma_{\\phantom{\\, 1}\\,1\\,2}^{\\,1\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{1}{y} \\\\ \\Gamma_{\\phantom{\\, 1}\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{1}{y} \\\\ \\Gamma_{\\phantom{\\, 2}\\,1\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}} & = & \\frac{1}{y} \\\\ \\Gamma_{\\phantom{\\, 2}\\,2\\,2}^{\\,2\\phantom{\\, 2}\\phantom{\\, 2}} & = & -\\frac{1}{y} \\end{array}$" ], "text/plain": [ "Gam^1_12 = -1/y \n", "Gam^1_21 = -1/y \n", "Gam^2_11 = 1/y \n", "Gam^2_22 = -1/y " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ " # Christoffel symbols:\n", "nab[1,1,2], nab[1,2,1],nab[2,2,2],nab[2,1,1] = -1/y, -1/y,-1/y,1/y\n", "%display latex\n", "nab.display(coordinate_labels=False) # show Christoffel symbols\n", " # (only non-zero ones)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Using (23.2) with $\\ (x^1,x^2)=(x,y)\\ $ to compute $R^1_{212}$ we obtain\n", "\n", "$$R^1_{212}=\\frac{\\partial \\Gamma^1_{22}}{\\partial x^1}\n", "-\\frac{\\partial \\Gamma^1_{21}}{\\partial x^2}\n", "+\\Gamma^1_{11}\\Gamma^1_{22}+\\Gamma^1_{21}\\Gamma^2_{22}\n", "-\\Gamma^1_{12}\\Gamma^1_{21}-\\Gamma^1_{22}\\Gamma^2_{21}\\\\\n", "=0-\\frac{1}{y^2}+0\\cdot 0+(-\\frac{1}{y})(-\\frac{1}{y})\n", "-(-\\frac{1}{y})(-\\frac{1}{y})-0\\cdot 0=-\\frac{1}{y^2}.\n", "$$\n", "\n", "The remaining components can be found analogously (one can use antisymmetry of $R^m_{kij}$ with respect to $i,j$)." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (1,3) on the 2-dimensional differentiable manifold M\n" ] }, { "data": { "text/html": [ "\\(\\displaystyle \\begin{array}{lcl} X_{\\phantom{\\, 1}\\,2\\,1\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{1}{y^{2}} \\\\ X_{\\phantom{\\, 1}\\,2\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 1}} & = & \\frac{1}{y^{2}} \\\\ X_{\\phantom{\\, 2}\\,1\\,1\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 2}} & = & \\frac{1}{y^{2}} \\\\ X_{\\phantom{\\, 2}\\,1\\,2\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{1}{y^{2}} \\end{array}\\)" ], "text/latex": [ "$\\displaystyle \\begin{array}{lcl} X_{\\phantom{\\, 1}\\,2\\,1\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{1}{y^{2}} \\\\ X_{\\phantom{\\, 1}\\,2\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 1}} & = & \\frac{1}{y^{2}} \\\\ X_{\\phantom{\\, 2}\\,1\\,1\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 2}} & = & \\frac{1}{y^{2}} \\\\ X_{\\phantom{\\, 2}\\,1\\,2\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{1}{y^{2}} \\end{array}$" ], "text/plain": [ "X^1_212 = -1/y^2 \n", "X^1_221 = y^(-2) \n", "X^2_112 = y^(-2) \n", "X^2_121 = -1/y^2 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Riem = nab.riemann(); print(Riem) # curvature (1,3) tensor\n", "Riem.display_comp(coordinate_labels=False) # show nonzero components" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "**Example 23.4** \n", "\n", "Consider the plane $R^2$ with Christoffel symbols\n", "$$Γ^1_{11}= Γ^1_{22}=\\frac{4u}{1+u^2+4v^2},\\\\\n", "Γ^2_{11}= Γ^2_{22}=\\frac{4v}{1+u^2+4v^2},\n", "$$\n", "and the remaining symbols equal to 0." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\begin{array}{lcl} \\Gamma_{\\phantom{\\, 1}\\,1\\,1}^{\\,1\\phantom{\\, 1}\\phantom{\\, 1}} & = & \\frac{4 \\, u}{4 \\, u^{2} + 4 \\, v^{2} + 1} \\\\ \\Gamma_{\\phantom{\\, 1}\\,1\\,2}^{\\,1\\phantom{\\, 1}\\phantom{\\, 2}} & = & 0 \\\\ \\Gamma_{\\phantom{\\, 1}\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}} & = & 0 \\\\ \\Gamma_{\\phantom{\\, 1}\\,2\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}} & = & \\frac{4 \\, u}{4 \\, u^{2} + 4 \\, v^{2} + 1} \\\\ \\Gamma_{\\phantom{\\, 2}\\,1\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}} & = & \\frac{4 \\, v}{4 \\, u^{2} + 4 \\, v^{2} + 1} \\\\ \\Gamma_{\\phantom{\\, 2}\\,1\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}} & = & 0 \\\\ \\Gamma_{\\phantom{\\, 2}\\,2\\,1}^{\\,2\\phantom{\\, 2}\\phantom{\\, 1}} & = & 0 \\\\ \\Gamma_{\\phantom{\\, 2}\\,2\\,2}^{\\,2\\phantom{\\, 2}\\phantom{\\, 2}} & = & \\frac{4 \\, v}{4 \\, u^{2} + 4 \\, v^{2} + 1} \\end{array}\\)" ], "text/latex": [ "$\\displaystyle \\begin{array}{lcl} \\Gamma_{\\phantom{\\, 1}\\,1\\,1}^{\\,1\\phantom{\\, 1}\\phantom{\\, 1}} & = & \\frac{4 \\, u}{4 \\, u^{2} + 4 \\, v^{2} + 1} \\\\ \\Gamma_{\\phantom{\\, 1}\\,1\\,2}^{\\,1\\phantom{\\, 1}\\phantom{\\, 2}} & = & 0 \\\\ \\Gamma_{\\phantom{\\, 1}\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}} & = & 0 \\\\ \\Gamma_{\\phantom{\\, 1}\\,2\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}} & = & \\frac{4 \\, u}{4 \\, u^{2} + 4 \\, v^{2} + 1} \\\\ \\Gamma_{\\phantom{\\, 2}\\,1\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}} & = & \\frac{4 \\, v}{4 \\, u^{2} + 4 \\, v^{2} + 1} \\\\ \\Gamma_{\\phantom{\\, 2}\\,1\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}} & = & 0 \\\\ \\Gamma_{\\phantom{\\, 2}\\,2\\,1}^{\\,2\\phantom{\\, 2}\\phantom{\\, 1}} & = & 0 \\\\ \\Gamma_{\\phantom{\\, 2}\\,2\\,2}^{\\,2\\phantom{\\, 2}\\phantom{\\, 2}} & = & \\frac{4 \\, v}{4 \\, u^{2} + 4 \\, v^{2} + 1} \\end{array}$" ], "text/plain": [ "Gam^1_11 = 4*u/(4*u^2 + 4*v^2 + 1) \n", "Gam^1_12 = 0 \n", "Gam^1_21 = 0 \n", "Gam^1_22 = 4*u/(4*u^2 + 4*v^2 + 1) \n", "Gam^2_11 = 4*v/(4*u^2 + 4*v^2 + 1) \n", "Gam^2_12 = 0 \n", "Gam^2_21 = 0 \n", "Gam^2_22 = 4*v/(4*u^2 + 4*v^2 + 1) " ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%display latex\n", "N=Manifold(2,name='R2',start_index=1) # manifold M, dim=2\n", "c_uv.=N.chart() # coordinates u,v\n", "nab=N.affine_connection('nab') # connection on M\n", "nab[:]=[[[4*u/(4*u^2 + 4*v^2 + 1), 0], # Christoffel symbols\n", " [0, 4*u/(4*u^2 + 4*v^2 + 1)]], \n", " [[4*v/(4*u^2 + 4*v^2 + 1), 0], \n", " [0, 4*v/(4*u^2 + 4*v^2 + 1)]]]\n", "nab.display(coordinate_labels=False,only_nonzero=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Compute components of the curvature $(1,3)$ tensor. At a first attempt we obtain some components non-simplified. " ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\begin{array}{lcl} X_{\\phantom{\\, 1}\\,1\\,1\\,2}^{\\,1\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 2}} & = & \\frac{16 \\, u v}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 1}\\,1\\,2\\,1}^{\\,1\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{16 \\, u v}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 1}\\,2\\,1\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 2}} & = & \\frac{4 \\, {\\left(4 \\, v^{2} + 1\\right)}}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 1}\\,2\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{4 \\, {\\left(4 \\, v^{2} + 1\\right)}}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 2}\\,1\\,1\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{4 \\, {\\left(4 \\, u^{2} + 1\\right)}}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 2}\\,1\\,2\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 1}} & = & \\frac{4 \\, {\\left(4 \\, u^{2} + 1\\right)}}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 2}\\,2\\,1\\,2}^{\\,2\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{16 \\, u v}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 2}\\,2\\,2\\,1}^{\\,2\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 1}} & = & \\frac{16 \\, u v}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\end{array}\\)" ], "text/latex": [ "$\\displaystyle \\begin{array}{lcl} X_{\\phantom{\\, 1}\\,1\\,1\\,2}^{\\,1\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 2}} & = & \\frac{16 \\, u v}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 1}\\,1\\,2\\,1}^{\\,1\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{16 \\, u v}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 1}\\,2\\,1\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 2}} & = & \\frac{4 \\, {\\left(4 \\, v^{2} + 1\\right)}}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 1}\\,2\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{4 \\, {\\left(4 \\, v^{2} + 1\\right)}}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 2}\\,1\\,1\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{4 \\, {\\left(4 \\, u^{2} + 1\\right)}}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 2}\\,1\\,2\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 1}} & = & \\frac{4 \\, {\\left(4 \\, u^{2} + 1\\right)}}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 2}\\,2\\,1\\,2}^{\\,2\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{16 \\, u v}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\\\ X_{\\phantom{\\, 2}\\,2\\,2\\,1}^{\\,2\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 1}} & = & \\frac{16 \\, u v}{16 \\, u^{4} + 16 \\, v^{4} + 8 \\, {\\left(4 \\, u^{2} + 1\\right)} v^{2} + 8 \\, u^{2} + 1} \\end{array}$" ], "text/plain": [ "X^1_112 = 16*u*v/(16*u^4 + 16*v^4 + 8*(4*u^2 + 1)*v^2 + 8*u^2 + 1) \n", "X^1_121 = -16*u*v/(16*u^4 + 16*v^4 + 8*(4*u^2 + 1)*v^2 + 8*u^2 + 1) \n", "X^1_212 = 4*(4*v^2 + 1)/(16*u^4 + 16*v^4 + 8*(4*u^2 + 1)*v^2 + 8*u^2 + 1) \n", "X^1_221 = -4*(4*v^2 + 1)/(16*u^4 + 16*v^4 + 8*(4*u^2 + 1)*v^2 + 8*u^2 + 1) \n", "X^2_112 = -4*(4*u^2 + 1)/(16*u^4 + 16*v^4 + 8*(4*u^2 + 1)*v^2 + 8*u^2 + 1) \n", "X^2_121 = 4*(4*u^2 + 1)/(16*u^4 + 16*v^4 + 8*(4*u^2 + 1)*v^2 + 8*u^2 + 1) \n", "X^2_212 = -16*u*v/(16*u^4 + 16*v^4 + 8*(4*u^2 + 1)*v^2 + 8*u^2 + 1) \n", "X^2_221 = 16*u*v/(16*u^4 + 16*v^4 + 8*(4*u^2 + 1)*v^2 + 8*u^2 + 1) " ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Riem = nab.riemann(); # curvature (1,3) tensor\n", "Riem.display_comp(coordinate_labels=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "so we decided to simplify each component separately and to introduce a new tensor with simplified components." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\begin{array}{lcl} Riem1_{\\phantom{\\, 1}\\,2\\,1\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 1}} & = & -\\frac{16 \\, u v}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 1}\\,2\\,1\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 2}} & = & \\frac{4 \\, {\\left(4 \\, u^{2} + 1\\right)}}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 1}\\,2\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{4 \\, {\\left(4 \\, v^{2} + 1\\right)}}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 1}\\,2\\,2\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 2}} & = & \\frac{16 \\, u v}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 2}\\,1\\,1\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 1}} & = & \\frac{16 \\, u v}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 2}\\,1\\,1\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{4 \\, {\\left(4 \\, u^{2} + 1\\right)}}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 2}\\,1\\,2\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 1}} & = & \\frac{4 \\, {\\left(4 \\, v^{2} + 1\\right)}}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 2}\\,1\\,2\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 2}} & = & -\\frac{16 \\, u v}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\end{array}\\)" ], "text/latex": [ "$\\displaystyle \\begin{array}{lcl} Riem1_{\\phantom{\\, 1}\\,2\\,1\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 1}} & = & -\\frac{16 \\, u v}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 1}\\,2\\,1\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 1}\\phantom{\\, 2}} & = & \\frac{4 \\, {\\left(4 \\, u^{2} + 1\\right)}}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 1}\\,2\\,2\\,1}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 1}} & = & -\\frac{4 \\, {\\left(4 \\, v^{2} + 1\\right)}}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 1}\\,2\\,2\\,2}^{\\,1\\phantom{\\, 2}\\phantom{\\, 2}\\phantom{\\, 2}} & = & \\frac{16 \\, u v}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 2}\\,1\\,1\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 1}} & = & \\frac{16 \\, u v}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 2}\\,1\\,1\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 1}\\phantom{\\, 2}} & = & -\\frac{4 \\, {\\left(4 \\, u^{2} + 1\\right)}}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 2}\\,1\\,2\\,1}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 1}} & = & \\frac{4 \\, {\\left(4 \\, v^{2} + 1\\right)}}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\\\ Riem1_{\\phantom{\\, 2}\\,1\\,2\\,2}^{\\,2\\phantom{\\, 1}\\phantom{\\, 2}\\phantom{\\, 2}} & = & -\\frac{16 \\, u v}{{\\left(4 \\, u^{2} + 4 \\, v^{2} + 1\\right)}^{2}} \\end{array}$" ], "text/plain": [ "Riem1^1_211 = -16*u*v/(4*u^2 + 4*v^2 + 1)^2 \n", "Riem1^1_212 = 4*(4*u^2 + 1)/(4*u^2 + 4*v^2 + 1)^2 \n", "Riem1^1_221 = -4*(4*v^2 + 1)/(4*u^2 + 4*v^2 + 1)^2 \n", "Riem1^1_222 = 16*u*v/(4*u^2 + 4*v^2 + 1)^2 \n", "Riem1^2_111 = 16*u*v/(4*u^2 + 4*v^2 + 1)^2 \n", "Riem1^2_112 = -4*(4*u^2 + 1)/(4*u^2 + 4*v^2 + 1)^2 \n", "Riem1^2_121 = 4*(4*v^2 + 1)/(4*u^2 + 4*v^2 + 1)^2 \n", "Riem1^2_122 = -16*u*v/(4*u^2 + 4*v^2 + 1)^2 " ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# simplification of components one by one\n", "Riem2 = [[[[Riem[a,b,c,d].factor() for a in [1,2]] \n", " for b in [1,2]] for c in [1,2]] for d in[1,2]];\n", "Riem1 = N.tensor_field(1, 3, name='Riem1') # new tensor (1,3)type\n", "Riem1[c_uv.frame(), :] = Riem2 # with simplified comp.\n", "Riem1.display_comp(coordinate_labels=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "### Extension of curvature map to covariant tensor fields\n", "\n", "
\n", "If we extend the definition $R(X, Y)t ≡ ∇_X ∇_Y t − ∇_Y ∇_X t − ∇_{[X,Y]} t$, to all tensor\n", "fields $t\\in T^{(0,k)}M,$ then one can check that for covariant tensor fields $\\ t,s$, vector fields $\\ X,Y$ and smooth function $f$\n", "\n", "\\begin{equation}\n", "\\begin{matrix}\n", "R(X, Y)(t + s) = R(X, Y)t + R(X, Y)s,\\\\\n", "R(X, Y)( f t) = f R(X, Y)t,\\\\\n", "R(X, Y)(t ⊗ s) = R(X, Y)t ⊗ s + t ⊗ R(X, Y)s .\n", "\\end{matrix}\n", "\\tag{23.3}\n", "\\end{equation}\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first relation follows from\n", "\n", "$$ \\nabla_X\\nabla_Y(t+s)-\\nabla_Y\\nabla_X(t+s)-\\nabla_{[X,Y]}(t+s)\\\\\n", "=\\nabla_X\\nabla_Yt+\\nabla_X\\nabla_Ys-\n", "\\nabla_Y\\nabla_Xt+\\nabla_Y\\nabla_Xs-\\nabla_{[X,Y]}t-\\nabla_{[X,Y]}s,\n", "$$\n", "\n", "the second from\n", "\n", "$$ \n", "\\nabla_X\\nabla_Y(ft)-\\nabla_Y\\nabla_X(ft)-\\nabla_{[X,Y]}(ft)\\\\\n", "=\\nabla_X(f\\nabla_yt+(Yf)t)-\\nabla_Y(f\\nabla_Xt+(Xf)t)\n", "-f\\nabla_{[X,Y]}t-([X,Y]f)t\\\\\n", "=f\\nabla_X\\nabla_Yt+(Xf)\\nabla_Y t +(Yf)\\nabla_Xt+(X(Yf))t\\\\\n", "-f\\nabla_Y\\nabla_Xt-(Yf)\\nabla_Xt-(Xf)\\nabla_Y t-(X(Yf))t\\\\\n", "-f\\nabla_{[X,Y]}t-([X,Y]f)t,\n", "$$\n", "\n", "and the third from\n", "\n", "$$\n", "\\nabla_X\\nabla_Y(t\\otimes s)-\\nabla_Y\\nabla_X(t\\otimes s)-\\nabla_{[X,Y]}(t\\otimes s)\\\\\n", "=\\nabla_X(t\\otimes\\nabla_Ys+(\\nabla_Yt)\\otimes s)\n", "-\\nabla_Y(t\\otimes\\nabla_X s+(\\nabla_X t)\\otimes s)\\\\\n", "-t\\otimes(\\nabla_{[X,Y]}s)-(\\nabla_{[X,Y]}t)\\otimes s\\\\\n", "=t\\otimes\\nabla_X\\nabla_Y s+(\\nabla_Xt)\\otimes(\\nabla_Y s)\n", "+(\\nabla_X\\nabla_Y t)\\otimes s+(\\nabla_Y t)\\otimes(\\nabla_X s)\\\\\n", "-t\\otimes\\nabla_Y\\nabla_Xs-(\\nabla_Y t)\\otimes(\\nabla_X s)\n", "-(\\nabla_Y\\nabla_X t)\\otimes s-(\\nabla_X t)\\otimes(\\nabla_Y s)\\\\\n", "-t\\otimes\\nabla_{[X,Y]}s-(\\nabla_{[X,Y]}t)\\otimes s.\n", "$$\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "### Bianchi identities\n", "\n", "
\n", "\n", "If $T$ is the torsion and $R$ the curvature, then \n", "for $X, Y, Z ∈ \\mathfrak{X}(M)$, the following **first Bianchi identity** holds true.\n", "\n", "\\begin{equation}\n", "\\begin{matrix}\n", "R(X, Y)Z + R(Z, X)Y + R(Y, Z)X\\\\\n", "= ∇_X (T (Y, Z)) + ∇_Y (T (Z, X)) + ∇_Z (T (X, Y))\\\\\n", "+ T (X, [Y, Z]) + T (Y, [Z, X]) + T (Z, [X, Y])\n", "\\end{matrix}\n", "\\tag{23.4}\n", "\\end{equation}\n", "\n", "In fact, from the definition of torsion we have\n", "$$\n", "\\nabla_XY=\\nabla_YX+[X,Y]+T(X,Y),\\\\\n", "\\nabla_ZX=\\nabla_XZ+[Z,X]+T(Z,X),\\\\\n", "\\nabla_YZ=\\nabla_ZY+[Y,Z]+T(Y,Z),\n", "$$\n", "and therefore\n", "$$\n", "R(X, Y)Z + R(Z, X)Y + R(Y, Z)X\\\\\n", "=∇_X ∇_Y Z − ∇_Y ∇_X Z − ∇_{[X,Y]} Z\\\\\n", "+∇_Y ∇_Z X − ∇_Z ∇_Y X − ∇_{[Y,Z]} X\\\\\n", "+∇_Z ∇_X Y − ∇_X ∇_Z Y − ∇_{[Z,X]} Y\\\\\n", "=∇_X(\\nabla_ZY+[Y,Z]+T(Y,Z))− ∇_Y ∇_X Z − ∇_{[X,Y]} Z\\\\\n", "+∇_Y(\\nabla_XZ+[Z,X]+T(Z,X))− ∇_Z ∇_Y X − ∇_{[Y,Z]} X\\\\\n", "+∇_Z(\\nabla_YX+[X,Y]+T(X,Y))− ∇_X ∇_Z Y − ∇_{[Z,X]} Y\n", "$$\n", "\\begin{equation}\n", "\\begin{matrix}\n", "=∇_X([Y,Z]+T(Y,Z)) − ∇_{[X,Y]} Z\\\\\n", "+∇_Y([Z,X]+T(Z,X)) − ∇_{[Y,Z]} X\\\\\n", "+∇_Z([X,Y]+T(X,Y)) − ∇_{[Z,X]} Y.\n", "\\end{matrix}\n", "\\tag{23.5}\n", "\\end{equation}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If we use the definition of torsion in the following form\n", "\n", "$$\n", "T(X,[Y,Z])=\\nabla_X[Y,Z]-\\nabla_{[Y,Z]}X-[X,[Y,Z]],\\\\\n", "T(Y,[Z,X])=\\nabla_Y[Z,X]-\\nabla_{[Z,X]}Y-[Y,[Z,X]],\\\\\n", "T(Z,[X,Y])=\\nabla_Z[X,Y]-\\nabla_{[X,Y]}Z-[Z,[X,Y]],\\\\\n", "$$\n", "\n", "then the subexpressions of (23.5) which do not contain $T$ take the form\n", "\n", "$$\n", "∇_X([Y,Z]− ∇_{[Y,Z]} X = T(X,[Y,Z])+[X,[Y,Z]],\\\\\n", "∇_Y([Z,X]− ∇_{[Z,X]} Y = T(Y,[Z,X])+[Y,[Z,X]],\\\\\n", "∇_Z([X,Y]− ∇_{[X,Y]} Z = T(Z,[X,Y])+[Z,[X,Y]].\\\\\n", "$$\n", "\n", "Using the Jacobi identity (notebook 12) we obtain (23.4)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "The **second Bianchi identity** reads as follows.\n", "\n", "For $X, Y, Z, W ∈ \\mathfrak{X}(M)$\n", "\n", "\\begin{equation}\n", "\\begin{matrix}\n", "∇_X( R(Y, Z)W) + ∇_Y( R(Z, X)W )+ ∇_Z( R(X, Y)W)\\\\\n", "= R(Y, Z)∇_X W + R(Z, X)∇_Y W + R(X, Y)∇_Z W\\\\\n", "+ R([Y, Z], X)W + R([Z, X], Y)W + R([X, Y], Z)W.\n", "\\end{matrix}\n", "\\tag{23.6}\n", "\\end{equation}\n", "\n", "To check the identity let us note that from (23.1) it follows\n", "\n", "\\begin{equation}\n", "\\begin{matrix}\n", "R([X, Y], Z)W+\\nabla_{[[X,Y],Z]}W=\n", "\\nabla_{[X,Y]}\\nabla_ZW-\\nabla_Z\\nabla_{[X,Y]}W,\\\\\n", "R([Y, Z], X)W+\\nabla_{[[Y,Z],X]}W=\n", "\\nabla_{[Y,Z]}\\nabla_XW-\\nabla_X\\nabla_{[Y,Z]}W,\\\\\n", "R([Z, X], Y)W+\\nabla_{[[Z,X],Y]}W=\n", "\\nabla_{[Z,X]}\\nabla_YW-\\nabla_Y\\nabla_{[Z,X]}W,\n", "\\end{matrix}\n", "\\tag{23.7}\n", "\\end{equation}\n", "\n", "therefore (we changed the order in the second column of expressions)\n", "\n", "$$\n", "∇_X( R(Y, Z)W) + ∇_Y( R(Z, X)W )+ ∇_Z( R(X, Y)W)\\\\\n", "=∇_X(\\nabla_Y\\nabla_ZW-\\nabla_Z\\nabla_YW-\\nabla_{[Y,Z]}W)\\\\\n", "+∇_Y(\\nabla_Z\\nabla_XW-\\nabla_X\\nabla_ZW-\\nabla_{[Z,X]}W)\\\\\n", "+∇_Z(\\nabla_X\\nabla_YW-\\nabla_Y\\nabla_XW-\\nabla_{[X,Y]}W)\\\\\n", "=\\nabla_X\\nabla_Y\\nabla_ZW-\\nabla_Y\\nabla_X\\nabla_ZW-\\nabla_X\\nabla_{[Y,Z]}W\\\\\n", "+\\nabla_Y\\nabla_Z\\nabla_XW-\\nabla_Z\\nabla_Y\\nabla_XW-\\nabla_Y\\nabla_{[Z,X]}W\\\\\n", "+\\nabla_Z\\nabla_X\\nabla_YW-\\nabla_X\\nabla_Z\\nabla_YW-\\nabla_Z\\nabla_{[X,Y]}W.\\\\\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In all three rows of the obtained sum we can recognize incomplete curvature tensors computed for $\\nabla_ZW, \\nabla_XW, \\nabla_YW$ respectively. If we subtract and add the lacking terms with covariant derivatives along the corresponding Lie brackets, we obtain the following form of the last sum\n", "\n", "$$\n", "R(X,Y)\\nabla_ZW+\\nabla_{[X,Y]}\\nabla_ZW-\\nabla_X\\nabla_{[Y,Z]}W\\\\\n", "+R(Y,Z)\\nabla_XW+\\nabla_{[Y,Z]}\\nabla_XW-\\nabla_Y\\nabla_{[Z,X]}W\\\\\n", "+R(Z,X)\\nabla_YW+\\nabla_{[Z,X]}\\nabla_YW-\\nabla_Z\\nabla_{[X,Y]}W\\\\\n", "$$\n", "\n", "In all three lines, the last two expressions are equal to the right hand sides of (23.7), therefore the obtained sum is equal\n", "\n", "$$\n", "R(X,Y)\\nabla_ZW+R([X, Y], Z)W+\\nabla_{[[X,Y],Z]}W\\\\\n", "+R(Y,Z)\\nabla_XW+R([Y, Z], X)W+\\nabla_{[[Y,Z],X]}W\\\\\n", "+R(Z,X)\\nabla_YW+R([Z, X], Y)W+\\nabla_{[[Z,X],Y]}W.\n", "$$\n", "\n", "The sum of the last column is zero according to Jacobi identity (notebook 12), so (23.6) is proved." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Bianchi identities will be used in the proof of (24.2) in the [next notebook](https://nbviewer.org/github/sagemanifolds/IntroToManifolds/blob/main/24Manifold_RiemannCurvature.ipynb)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## What's next?\n", "\n", "Take a look at the notebook [Riemannian curvature tensor of type (0,4)](https://nbviewer.org/github/sagemanifolds/IntroToManifolds/blob/main/24Manifold_RiemannCurvature.ipynb)." ] } ], "metadata": { "kernelspec": { "display_name": "SageMath 9.6", "language": "sage", "name": "sagemath" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 4 }