tero.co.uk

Covariant Derivative

4 3 2 1 -1 -2 0 1 2 3 4 5 6 males females

So far we've looked at the troubled ordinary tensor differentiation and the reliable Lie derivative. This page looks at another method for bypassing ordinary tensor differentiation's non-tensor-ness - the covariant derivative.

Please note: you'll need a modern HTML5 browser to see the graphs on this page. They are done using SVG. And you'll need Javascript enabled to see the equations which are written in Tex and rendered using MathJax and may take a few seconds to run. This page also has some graphs created using Octave, an open-source mathematical programming package. Click here to see the commands.

Gamma

In theory, the covariant derivative is quite easy to describe. You may recall the main problem with ordinary tensor differentiation. It was the extra \(\partial T\) term introduced because of the chain rule when taking the derivative of \(TV\):

\(\partial (TV) = \partial T V + T \partial V\)

This meant that:

\(\partial (TV) \ne T \partial V \)

Which ruins the tensor-ness of the result. The covariant derivative magics up another term to compensate for the \(\partial T\). Its symbol is usually an upside down triangle called the nabla symbol which comes from the Hebrew word for harp:

\(\nabla V = \partial V + \Gamma V \)

When this gets transformed:

\(\nabla (TV) = \partial (TV) + \Gamma (TV) = \partial T V + T \partial V + \Gamma T V \)

The \(\Gamma\) is simply constructed and chosen to exactly cancel out the nasty \(\partial T\). Of course it's not at all simple and definitely not magic. In fact it has taken me a very long time to fully understand, even more than the Lie derivative or the number 71.

The key to it all is the \(\Gamma\). This is not an inflated lower case Latin r but an upper-case Greek Gamma. It is variously known as an affine connection or Christoffel symbols after Elwin Christoffel who worked on tensors in the 1800s or the Levi-Civita connection after another mathematician in the late 1800s and early 1900s (just one mathematician with a long last name). To fully appreciate what \(\Gamma\) is though, we'll have to review some other concepts first.

Matrix Multiplication

My first tensor page discussed tensor multiplication and contraction but I didn't fully realise all the implications at the time. It is more involved that I thought.

First of all, cast your mind back to normal every day matrix multiplication. This works by multplying and adding (known more formally contracting) the rows (going across) of the first matrix by the columns (going down) of the second matrix. So imagine that matrices K and L get multiplied together to produce matrix R:

\(R = KL = \overrightarrow {\begin{bmatrix}K^{11} & K^{12} \\ K^{21} & K^{22}\end{bmatrix}} \downarrow \begin{bmatrix}L^{11} & L^{12} \\ L^{21} & L^{22}\end{bmatrix} = \begin{bmatrix} K^{11} L^{11} + K^{12} L^{21} & K^{11} L^{12} + K^{12} L^{22} \\ K^{21} L^{11} + K^{22} L^{21} & K^{21} L^{12} + K^{22} L^{22} \end{bmatrix} \)

But what if we wanted to multiply the columns of K by the columns of L. In matrix multiplication, we would have to transpose K to do this, which means swapping the rows and columns of K. In this case we have to swap the bottom left and top right corners of K, like this:

\(R = K^T L = \begin{bmatrix}K^{11} & K^{21} \\ K^{12} & K^{22}\end{bmatrix} \begin{bmatrix}L^{11} & L^{12} \\ L^{21} & L^{22}\end{bmatrix} = \begin{bmatrix} K^{11} L^{11} + K^{21} L^{21} & K^{11} L^{12} + K^{12} L^{22} \\ K^{12} L^{11} + K^{22} L^{21} & K^{21} L^{12} + K^{22} L^{22} \end{bmatrix} \)

There are two other possibilities. Multiplying the columns of K by the rows of L which we can do by transposing or changing the order:

\(R = K^T L^T = LK\)

And multiplying the rows of K by the rows of L:

\(R = K L^T \)

Tensor Multiplication

Tensors avoid this complication by using little letters instead such as \(K^{ab}\). The letters also indicate the rank of the tensor, with raised letters for contravariant parts and lowered letters for covariant parts. \(K^{ab}\) is rank (2,0). We used a K like this to represent kayaking pairs in my first tensor article. So the tensor equivalent of the first equation above would be:

\(R = KL = {R^a}_c = K^{ab} L_{bc} \)

The letters are indexes into the tensor. Here the first index a on K counts the rows and the b counts the columns. Note that the indexes on L are both lowered covariants so L's rank is (0,2). This is because tensor multiplication always (I think) contracts covariant with contravariant. So a lower index always cancels an upper index.

\(K^{ab} = \ \overset{a}\downarrow \overset{b}{\overrightarrow{\begin{bmatrix}K^{a=1\ b=1} & K^{a=1\ b=2} \\ K^{a=2\ b=1} & K^{a=2\ b=2} \end{bmatrix} }} \)

In this notation, taking the transpose of K is the same as swapping the a and b:

\(K^T = K^{ba}\)

And the four different ways of multiplying K and L can be specified just by changing the order of the little letters:

Rows times columns: \({R^a}_c = KL = \ \overset{a}\downarrow \overset{b}{\overrightarrow{K^{ab}}} \ \ \overset{b}\downarrow \overset{c}{\overrightarrow{L_{bc}}} \)

Rows times rows: \({R^a}_c = KL^T = \ \overset{a}\downarrow \overset{b}{\overrightarrow{K^{ab}}} \ \ \overset{c}\downarrow \overset{b}{\overrightarrow{L_{cb}}} \)

Columns times columns: \({R^a}_c = K^TL = \ \overset{b}\downarrow \overset{a}{\overrightarrow{K^{ba}}} \ \ \overset{b}\downarrow \overset{c}{\overrightarrow{L^{bc}}} \)

Columns times rows: \({R^a}_c = K^TL^T = \ \overset{b}\downarrow \overset{a}{\overrightarrow{K^{ba}}} \ \ \overset{c}\downarrow \overset{b}{\overrightarrow{L_{cb}}} \)

With these little letters, the order of the tensors no longer matters. The letters tell you everything you need to know about how to multiply the tensors. For example:

\({R^a}_c = K^{ab} L_{bc} = L_{bc} K^{ab}\)

It is also important to note that the letters are relative. All that matters is that the same letters appear on the left and right side. For example, this equation is exactly the same as the one above. The y gets contracted away and the x and z show up in the result:

\({R^x}_z = K^{xy} L_{yz} \)

And so is this equation, which swaps the a and c on both sides of the equation:

\({R^c}_a = K^{cb} L_{ba} \)

This is all pretty sneaky. It means that you have to pay very close attention to the little letters when computing tensor multiplications.

Gamma Multiplication

And things get even more confusing with \(\Gamma\) because it looks like a three dimensional rank (1,2) tensor. It isn't actually a tensor as it doesn't transform using S and T but it still has the little letters. In its full glory, it looks like this:

\({\Gamma^c}_{ab} = \ \overset{a}\downarrow \underset {c \searrow} {\overset{b}{\overrightarrow{ \begin{bmatrix}{\Gamma^1}_{11} & {\Gamma^1}_{12} \\ {\Gamma^1}_{21} & {\Gamma^1}_{22}\end{bmatrix} }}} _\class{matrix3d}{ \overset{a}\downarrow \overset{b}{\overrightarrow{ \begin{bmatrix}{\Gamma^2}_{11} & {\Gamma^2}_{12} \\ {\Gamma^2}_{21} & {\Gamma^2}_{22}\end{bmatrix}}} } \)

The first letter c indicates the third dimension, and (to be the same as above) the a indexes rows and the b does columns. The smaller greyish matrix on the right is the back half of this 2x2x2 cube of numbers. The front half contains all the entries where c=1 and the back half where c=2.

In computing the covariant derivative, \(\Gamma\) often gets multiplied (aka contracted) with vectors and 2 dimensional tensors. Because it has 3 dimensions and 3 letters, there are actually 6 different ways of arranging the letters. So in theory there are 6x2=12 ways of contracting \(\Gamma\) with a two dimensional tensor (which has 2 ways of arrange its letters). In practice, \(\Gamma\) is chosen in such a way that the two lower covariant indexes, the a and b, are symmetric or interchangeable. In other words:

\({\Gamma^1}_{21} = {\Gamma^1}_{12}\) and \({\Gamma^2}_{21} = {\Gamma^2}_{12}\)

Which means that when you rearrange the letters by doing a three dimensional version of a transpose:

\({\Gamma^c}_{ab} = {\Gamma^c}_{ba}\)

\({\Gamma^a}_{bc} = {\Gamma^b}_{ac}\)

\({\Gamma^b}_{ca} = {\Gamma^a}_{cb}\)

Which ultimately means there are only 3 permutations and so only 6 ways of contracting \(\Gamma\) with a two dimensional tensor, and only three ways of contracting it with a vector. To get a feel for this, let's put some actual numbers into \(\Gamma\). Let's say that:

\({\Gamma^c}_{ab} = {\Gamma^c}_{ba} = \begin{bmatrix}1 & 5 \\ 5 & 2\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}3 & 6 \\ 6 & 4\end{bmatrix}} \)

This is symmetric in a and b because the 5s and 6s match up. The second permutation swaps the second column in the front with the first column in the back:

\({\Gamma^a}_{bc} = {\Gamma^b}_{ac} = \begin{bmatrix}1 & 3 \\ 5 & 6\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}5 & 6 \\ 2 & 4\end{bmatrix}} \)

And the third permutation swaps the second row in the front with the first row in the back:

\({\Gamma^b}_{ca} = {\Gamma^a}_{cb} = \begin{bmatrix}1 & 5 \\ 3 & 6\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}5 & 2 \\ 6 & 4\end{bmatrix}} \)

And now lets look at how it multiplies. We'll invent a vector V for this: \( {R^c}_a = {\Gamma^c}_{ab} V^b = \ \overset{a}\downarrow \underset {c \searrow} {\overset{b}{\overrightarrow{ \begin{bmatrix}1 & 5 \\ 5 & 2\end{bmatrix} }}} _\class{matrix3d}{ \overset{a}\downarrow \overset{b}{\overrightarrow{ \begin{bmatrix}3 & 6 \\ 6 & 4\end{bmatrix}}} } \ \overset{b}\downarrow \begin{bmatrix} 8 \\ 9 \end{bmatrix} = \ \overset{c}\downarrow \overset{a}{\overrightarrow{ \begin{bmatrix}1*8+5*9 & 5*8+2*9 \\ 3*8+6*9 & 6*8+4*9\end{bmatrix}}} = \begin{bmatrix}53 & 58 \\ 78 & 80 \end{bmatrix} \)

This example contracted the rows of \(\Gamma\) with the single column of V. Notice that as we went down in a for \(\Gamma\) we went across in the result. So the second row of \(\Gamma\) which was [5 2] was contracted with the vector [8 9] and the answer was put in the first row, second column of the result. Similarly, the back half of \(\Gamma\), where c=2 gets put into the second row of the result. This is very subtle but shows how the letters get moved around.

Now we'll try the second permutation above. But we won't move \(\Gamma\) around before multiplying. Instead we'll carefully observe which direction the contractions should go: \( {R^c}_a = {\Gamma^a}_{bc} V^b = \ \overset{b}\downarrow \underset {a \searrow} {\overset{c}{\overrightarrow{ \begin{bmatrix}1 & 5 \\ 5 & 2\end{bmatrix} }}} _\class{matrix3d}{ \overset{b}\downarrow \overset{c}{\overrightarrow{ \begin{bmatrix}3 & 6 \\ 6 & 4\end{bmatrix}}} } \ \overset{b}\downarrow \begin{bmatrix} 8 \\ 9 \end{bmatrix} = \ \overset{c}\downarrow \overset{a}{\overrightarrow{ \begin{bmatrix}1*8+5*9 & 3*8+6*9 \\ 5*8+2*9 & 6*8+4*9\end{bmatrix}}} = \begin{bmatrix}53 & 78 \\ 58 & 80 \end{bmatrix} \)

This is very similar to the first result except that the bottom left and top right are switched. This time we multiplied columns in \(\Gamma\) times the vector, and as we went across in \(\Gamma\) we went down in the result. Since the rows and columns of \(\Gamma\) are symmetric, this is the same as going down in \(\Gamma\) while going down in the result.

Now we'll try the third permutation which is quite different: \( {R^c}_a = {\Gamma^b}_{ca} V^b = \ \overset{c}\downarrow \underset {b \searrow} {\overset{a}{\overrightarrow{ \begin{bmatrix}1 & 5 \\ 5 & 2\end{bmatrix} }}} _\class{matrix3d}{ \overset{c}\downarrow \overset{a}{\overrightarrow{ \begin{bmatrix}3 & 6 \\ 6 & 4\end{bmatrix}}} } \ \overset{b}\downarrow \begin{bmatrix} 8 \\ 9 \end{bmatrix} = \ \overset{c}\downarrow \overset{a}{\overrightarrow{ \begin{bmatrix}1*8+3*9 & 5*8+6*9 \\ 5*8+6*9 & 2*8+4*9\end{bmatrix}}} = \begin{bmatrix}35 & 94 \\ 94 & 52 \end{bmatrix} \)

This time the rows and columns of \(\Gamma\) where already organised in the way we want, with c going down and a going across. So for each result we multiply a number from the front half of \(\Gamma\) with the first entry in V and from the back half with the second entry. So the first number in R contracts [1 3] with [8 9]. Because \(\Gamma\) is symmetric in a and b, the result is also symmetric.

Here is a summary of these three permutations. I've called the third dimension of \(\Gamma\) its "depths":

Rows times column, down in \(\Gamma\) goes across in \(R\): \( {R^c}_a = \ \overset{a}\downarrow \underset {c \searrow} {\overset{b}{\overrightarrow{{\Gamma^c}_{ab}}}} \ \overset{b}\downarrow V^b \)

Columns times column, across in \(\Gamma\) goes down in \(R\): \( {R^c}_a = \ \overset{b}\downarrow \underset {a \searrow} {\overset{c}{\overrightarrow{{\Gamma^a}_{bc}}}} \ \overset{b}\downarrow V^b \)

Depths times column: \( {R^c}_a = \ \overset{c}\downarrow \underset {b \searrow} {\overset{a}{\overrightarrow{{\Gamma^b}_{ca}}}} \ \overset{b}\downarrow V^b \)

When multiplying by a two dimensional tensor, the process is similar, just amplified.

Calculating By Indices

Another way to work these problems out is by calculating each index separately. In these contractions there is always at least one index/letter which gets cancelled out, such as the i here (renamed from b to make it look different from the second above):

\( {R^c}_a = {\Gamma^i}_{ca} V^i \)

The i is called the free index. It is the one which gets summed over. The others are fixed. So it is possible to draw up a table of all the fixed indexes and work out the answer element by element. Here we are using the non-rearranged \(\Gamma\) but with the arrows pointing in different directions. This is the same calculation as the third permutation into the depths above:

\( {\Gamma^i}_{ca} = \ \overset{c}\downarrow \underset {i \searrow} {\overset{a}{\overrightarrow{ \begin{bmatrix}1 & 5 \\ 5 & 2\end{bmatrix} }}} _\class{matrix3d}{ \overset{c}\downarrow \overset{a}{\overrightarrow{ \begin{bmatrix}3 & 6 \\ 6 & 4\end{bmatrix}}} } \)

ac\({R^c}_a = {\Gamma^i}_{ca} V^i \)Which part of \(\Gamma\)
11\({R^1}_1 = {\Gamma^i}_{11} V^i = \begin{bmatrix}1 & 3 \end{bmatrix} \begin{bmatrix} 8 \\ 9 \end{bmatrix} = 1*8 + 3*9 = 35\) 1st row and 1st column in front and back halves
12\({R^2}_1 = {\Gamma^i}_{21} V^i = \begin{bmatrix}5 & 6 \end{bmatrix} \begin{bmatrix} 8 \\ 9 \end{bmatrix} = 5*8 + 6*9 = 94\) 1st row and 2nd column in front and back halves
21\({R^1}_2 = {\Gamma^i}_{12} V^i = \begin{bmatrix}5 & 6 \end{bmatrix} \begin{bmatrix} 8 \\ 9 \end{bmatrix} = 5*8 + 6*9 = 94\) 2nd row and 1st column in front and back halves
22\({R^2}_2 = {\Gamma^i}_{22} V^i = \begin{bmatrix}6 & 4 \end{bmatrix} \begin{bmatrix} 8 \\ 9 \end{bmatrix} = 6*8 + 4*9 = 94\) 2nd row and 2nd column in front and back halves

The result is the same as above. This technique does take longer but is less susceptible to mistakes.

Three Directions of Differentiation

The exact location and orders of those little letters is also very important when differentiating. A tensor like L can be differentiated in three different directions:

Differentiated into depths: \( R_{cab} = \ \overset{a}\downarrow \underset {c \searrow} {\overset{b}{\overrightarrow{\delta_c L_{ab} }}} \)

Differentiation goes down: \( R_{cab} = \ \overset{b}\downarrow \underset {a \searrow} {\overset{c}{\overrightarrow{\delta_a L_{bc} }}} \)

Differentiated goes across: \( R_{cab} = \ \overset{c}\downarrow \underset {b \searrow} {\overset{a}{\overrightarrow{\delta_b L_{ca} }}} \)

Each direction can produce different results. Imagine that L is a tensor in the female/male coordinate system:

\( L = \begin{bmatrix}L^{11} & L^{12} \\ L^{21} & L^{22}\end{bmatrix} = \begin{bmatrix}1 & 0 \\ 0 & f\end{bmatrix} \)

In the first permutation above the front half of the result is L differentiated by females, and the back half is differentiated by males. The differentiation goes into the third depths dimension:

\( R_{cab} = \delta_c L_{ab} = \begin{bmatrix}\frac{\partial}{\partial f}L^{11} & \frac{\partial}{\partial f}L^{12} \\ \frac{\partial}{\partial f}L^{21} & \frac{\partial}{\partial f}L^{22}\end{bmatrix} _\class{matrix3d}{ \begin{bmatrix}\frac{\partial}{\partial m}L^{11} & \frac{\partial}{\partial m}L^{12} \\ \frac{\partial}{\partial m}L^{21} & \frac{\partial}{\partial m}L^{22}\end{bmatrix}} = \begin{bmatrix}0 & 0 \\ 0 & 1\end{bmatrix} _\class{matrix3d}{ \begin{bmatrix}0 & 0 \\ 0 & 0\end{bmatrix}} \)

In the second permutation, the differentation goes down. The four elements of L are listed going across with females differentiated on top and males on the bottom:

\( R_{cab} = \delta_a L_{bc} = \begin{bmatrix}\frac{\partial}{\partial f}L^{11} & \frac{\partial}{\partial f}L^{12} \\ \frac{\partial}{\partial m}L^{11} & \frac{\partial}{\partial m}L^{12}\end{bmatrix} _\class{matrix3d}{ \begin{bmatrix}\frac{\partial}{\partial f}L^{21} & \frac{\partial}{\partial f}L^{22} \\ \frac{\partial}{\partial m}L^{21} & \frac{\partial}{\partial m}L^{22}\end{bmatrix}} = \begin{bmatrix}0 & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{ \begin{bmatrix}0 & 1 \\ 0 & 0\end{bmatrix}} \)

In the third permutation, the differentiation goes across. The four elements of L are listed going down with females differentiated on the left and males on the right:

\( R_{cab} = \delta_b L_{ca} = \begin{bmatrix}\frac{\partial}{\partial f}L^{11} & \frac{\partial}{\partial m}L^{11} \\ \frac{\partial}{\partial f}L^{12} & \frac{\partial}{\partial m}L^{12}\end{bmatrix} _\class{matrix3d}{ \begin{bmatrix}\frac{\partial}{\partial f}L^{21} & \frac{\partial}{\partial m}L^{21} \\ \frac{\partial}{\partial f}L^{22} & \frac{\partial}{\partial m}L^{22}\end{bmatrix}} = \begin{bmatrix}0 & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{ \begin{bmatrix}1 & 0 \\ 0 & 0\end{bmatrix}} \)

This all took me a long time to grasp, and that's why I've spent so long writing it down to clear it up in my own head. The reason for all this care will become clear when you see how \(\Gamma\) is computed below.

Metric Tensors

Metric tensors are special two dimensional covariant tensors of rank (0,2) related to a coordinate system. Among many other useful properties, they help to compute how long a vector is. For example, we can compute the length of the vector V above by multiplying it by itself and taking the square root. This is basically Pythagoras' theorem:

length of \(V\) = \(\sqrt {V_a V^a} = \sqrt {\begin{bmatrix}8 & 9 \end{bmatrix} \begin{bmatrix}8 \\ 9 \end{bmatrix}} = \sqrt {8 * 8 + 9 * 9} = \sqrt {145} = 12.04 \)

This process can be generalised to work in other coordinate systems by using the metric tensor. We'll drop the square root for the rest of this discussion and just deal with the length squared. The metric tensor multiplies V twice:

length of \(V\) squared = \(V^a g_{ab} V^b = \begin{bmatrix}8 \\ 9 \end{bmatrix} \begin{bmatrix}1 & 0 \\ 0 & 1 \end{bmatrix} \begin{bmatrix}8 \\ 9 \end{bmatrix} = 145\)

In flat space the metric tensor g is just the identity matrix, the matrix equivalent of the number 1. If a coordinate system is stretched, the metric tensor would have a different value and the result would be different. For instance, in the tensors article, we defined a transformation matrix S and its inverse T for converting between two coordinate systems:

\(T = \begin{bmatrix}2 & 2 \\ 3 & 4 \end{bmatrix} \)

\(S = \begin{bmatrix}2 & -1 \\ -1.5 & 1 \end{bmatrix} \)

The metric tensor is covariant and so transforms using S. It's like a two dimensional linear function. In the new coordinate system:

\(\tilde g = g S S = \begin{bmatrix}1 & 0 \\ 0 & 1 \end{bmatrix} \begin{bmatrix}2 & -1 \\ -1.5 & 1 \end{bmatrix} \begin{bmatrix}2 & -1 \\ -1.5 & 1 \end{bmatrix} = \begin{bmatrix}6.25 & -3.5 \\ -3.5 & 2 \end{bmatrix} \)

And our vector transforms by T:

\(\tilde V = T V = \begin{bmatrix}2 & 2 \\ 3 & 4 \end{bmatrix} \begin{bmatrix}8 \\ 9 \end{bmatrix} = \begin{bmatrix}34 \\ 60 \end{bmatrix} \)

We can use the transformed metrix tensor \(\tilde g\) to compute the length of the transformed vector \(\tilde V\). In these multiplications the column of \(\tilde V\) contracts with the columns (or rows as it is symmetric) of \(\tilde g\):

length of \(\tilde V\) squared = \( {\tilde V}^a {\tilde g}_{ab} {\tilde V}^b = \begin{bmatrix}34 \\ 60 \end{bmatrix} \begin{bmatrix}6.25 & -3.5 \\ -3.5 & 2 \end{bmatrix} \begin{bmatrix}34 \\ 60 \end{bmatrix} = \begin{bmatrix}2.5 \\ 1 \end{bmatrix} \begin{bmatrix}34 \\ 60 \end{bmatrix} = 145\)

Computing a Simple Gamma

I have so far made a lot of fuss about how to contract tensors using the little letters, and about the metric tensor. The reason for this is that both are heavily involved in the computation of \(\Gamma\). Are you ready? This is a big moment. The formula to compute \(\Gamma\) is:

\({\Gamma^c}_{ab} = \frac12 g^{ck} (\partial_a g_{bk} + \partial_b g_{ak} - \partial_k g_{ab} ) \)

It involves first calculating the metric tensor g, then taking the partial derivative in all three directions, adding/subtracting them together, multiplying by the inverse of the metric tensor and finally halving everything inside.

The two metric tensors we looked at the previous section were both pretty simple. They did not have any female/male variables f or m inside them. This means that their derivatives \(\partial g\) and \(\partial \tilde g\) contained all zeroes, so therefore \(\Gamma = 0\) as well.

So we'll try something a bit more complex. Imagine a slightly sexist coordinate system where every woman embraces every other woman including herself, and the men hug each other:

\(embraces = females * females\)

\(hugs = males * males\)

The Jacobian of this matrix is as follows:

\(T = \frac {\partial\ embraces \ and\ hugs} {\partial\ females\ and\ males} = \begin{bmatrix} \frac {\partial e} {\partial f} & \frac {\partial e} {\partial m} \\ \frac {\partial h} {\partial f} & \frac {\partial h} {\partial m} \end{bmatrix} = \begin{bmatrix} 2f & 0 \\ 0 & 2m \end{bmatrix} \)

But we don't actually need T yet. For this calculation we need the Jacobian in the opposite direction:

\(females = \sqrt {embraces} = {embraces}^{\frac12}\)

\(males = \sqrt {hugs} = {hugs}^{\frac12}\)

\(S = \frac {\partial\ females\ and\ males} {\partial\ embraces\ and\ hugs} = \begin{bmatrix} \frac {\partial f} {\partial e} & \frac {\partial f} {\partial h} \\ \frac {\partial m} {\partial e} & \frac {\partial m} {\partial h} \end{bmatrix} = \begin{bmatrix} \frac12 e^{-\frac12} & 0 \\ 0 & \frac12{h^{-\frac12}} \end{bmatrix} = \begin{bmatrix} \frac1{2\sqrt e} & 0 \\ 0 & \frac1{2\sqrt h} \end{bmatrix} \)

We could have got the same result by taking the inervse of T and then converting into the embraces/hugs coordinate system:

\(S = T^{-1} = {\begin{bmatrix} \frac1{2f} & 0 \\ 0 & \frac1{2m} \end{bmatrix}} ^ {-1} = \begin{bmatrix} \frac1{2\sqrt e} & 0 \\ 0 & \frac1{2\sqrt h} \end{bmatrix} \)

And from that we can calculate the metric tensor of this new coordinate system. The metric tensor of the female/male coordinate system is the flat identity matrix. So we multiply that by S twice:

\(\tilde g = g S S = \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} \begin{bmatrix} \frac1{2\sqrt e} & 0 \\ 0 & \frac1{2\sqrt h} \end{bmatrix} \begin{bmatrix} \frac1{2\sqrt e} & 0 \\ 0 & \frac1{2\sqrt h} \end{bmatrix} = \begin{bmatrix} \frac1{4e} & 0 \\ 0 & \frac1{4h} \end{bmatrix} \)

And its inverse, which will be used as the \(g^{ck}\) in the forumla:

\({\tilde g}^{-1} = \begin{bmatrix} 4e & 0 \\ 0 & 4h \end{bmatrix} \)

Now we can plug these into the formula. We'll do all this in terms of the variables in the new cuddles/hugs coordinate system. If we wanted to do it in terms of females/males we would actually be computing \(\partial \tilde g \) instead of \(\tilde \partial \tilde g\) and so we would have to multiply the result by S to convert it. So to be clear, what we're actually calculating is:

\({{\tilde \Gamma}^c}_{ab} = \frac12 {\tilde g}^{ck} ({\tilde \partial}_a {\tilde g}_{bk} + {\tilde \partial}_b {\tilde g}_{ak} - {\tilde \partial}_k {\tilde g}_{ab} ) \)

Only two of these metric tensor's partial deriviates will be non-zero:

\(\frac {\tilde \partial} {\tilde \partial e} \frac1{4e} = \frac {\tilde \partial} {\tilde \partial e} \frac14 e^{-1} = -\frac14 e^{-2} = - \frac1{4e^2}\)

\(\frac {\tilde \partial} {\tilde \partial h} \frac1{4h} = - \frac1{4h^2}\)

The metric tensor \(\tilde g\) gets differentiated in all three directions. As above \(\partial a\) differentiates going down, \(\partial b\) going across and \( \partial k\) into the depths. But happily, all three lead to the same result, which is all zeros except for the front top left corner and back bottom right:

\({{\tilde \Gamma}^c}_{ab} = \frac12 \begin{bmatrix} 4e & 0 \\ 0 & 4h \end{bmatrix} ( \begin{bmatrix} - \frac1{4e^2} & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & - \frac1{4h^2} \end{bmatrix}} + \begin{bmatrix} - \frac1{4e^2} & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & - \frac1{4h^2} \end{bmatrix}} - \begin{bmatrix} - \frac1{4e^2} & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & - \frac1{4h^2} \end{bmatrix}} ) \)

\({{\tilde \Gamma}^c}_{ab} = \frac12 \begin{bmatrix} 4e & 0 \\ 0 & 4h \end{bmatrix} \begin{bmatrix} - \frac1{4e^2} & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & - \frac1{4h^2} \end{bmatrix}} \)

And now the k in \({\tilde g}^{ck}\) contracts with the k going into the depths of the thing on the right. The front half of the answer is the left column of \({\tilde g}^{ck}\) multiplied by the 4 depths of the right hand side (top left, top right, bottom left, bottom right). And the back half is the second column multiplied by the four depths:

\({{\tilde \Gamma}^c}_{ab} = \begin{bmatrix} - \frac1{2e} & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & - \frac1{2h} \end{bmatrix}} \)

Gamma for Polar Coordinates

In case you still have some mental energy left, we'll do one more by indexes. This one is very popular. It's the \(\Gamma\) for polar coordinates. Because why shouldn't we tranform our female/male vectors into polar coordinates? The equations are:

\(r = \sqrt {f^2 + m^2} \)

\(\theta = \arctan \frac {m}{f} \)

\(f = r \cos \theta\)

\(m = r \sin \theta\)

Polar coordinates measure a distance r and angle \(\theta\). The conversions are described in a very friendly way at Maths Is Fun.

S is the Jacobian of the third and fourth equations above, converting from polar back into females/males. You'll need to know some trigonometry to follow this in detail:

\(S = \frac {\partial\ females\ and\ males} {\partial\ r\ and\ theta} = \begin{bmatrix} \frac {\partial f} {\partial r} & \frac {\partial f} {\partial \theta} \\ \frac {\partial m} {\partial r} & \frac {\partial m} {\partial \theta} \end{bmatrix} = \begin{bmatrix} \cos\theta & -r\sin\theta \\ \sin\theta & r\cos\theta \end{bmatrix} \)

The metric tensor for this coordinate system is:

\(\tilde g = g S S = \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} \begin{bmatrix} \cos\theta & -r\sin\theta \\ \sin\theta & r\cos\theta \end{bmatrix} \begin{bmatrix} \cos\theta & -r\sin\theta \\ \sin\theta & r\cos\theta \end{bmatrix} = \begin{bmatrix} \cos ^2 \theta + \sin ^ 2 \theta & 0 \\ 0 & r^2 \sin^2 \theta + r^2 \cos^2 \theta \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ 0 & r^2 \end{bmatrix} \)

The inverse of this metric tensor is pretty easy:

\({\tilde g}^{-1} = \begin{bmatrix} 1 & 0 \\ 0 & r^{-2} \end{bmatrix} \)

And now we'll compute \(\Gamma\) using a table of indexes. The free index is k so whenever it appears we grab a whole row or column (or both partial derivatives of single entry) from the metric tensor:

cab \(\frac12 {\tilde g}^{ck} ({\tilde \partial}_a {\tilde g}_{bk} + {\tilde \partial}_b {\tilde g}_{ak} - {\tilde \partial}_k {\tilde g}_{ab} ) \) Result
111 \(\frac12 {\tilde g}^{1k} ({\tilde \partial}_1 {\tilde g}_{1k} + {\tilde \partial}_1 {\tilde g}_{1k} - {\tilde \partial}_k {\tilde g}_{11} ) \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} ( {\tilde \partial}_1 \begin{bmatrix} 1 & 0 \end{bmatrix} + {\tilde \partial}_1 \begin{bmatrix} 1 & 0 \end{bmatrix} - {\tilde \partial}_k \begin{bmatrix} 1 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} ( \begin{bmatrix} 0 & 0 \end{bmatrix} + \begin{bmatrix} 0 & 0 \end{bmatrix} - \begin{bmatrix} 0 & 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} \begin{bmatrix} 0 & 0 \end{bmatrix} = 0 \)

0
112 \(\frac12 {\tilde g}^{1k} ({\tilde \partial}_1 {\tilde g}_{2k} + {\tilde \partial}_2 {\tilde g}_{1k} - {\tilde \partial}_k {\tilde g}_{12} ) \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} ( {\tilde \partial}_1 \begin{bmatrix} 0 & r^2 \end{bmatrix} + {\tilde \partial}_2 \begin{bmatrix} 1 & 0 \end{bmatrix} - {\tilde \partial}_k \begin{bmatrix} 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} ( \begin{bmatrix} 0 & 2r \end{bmatrix} + \begin{bmatrix} 0 & 0 \end{bmatrix} - \begin{bmatrix} 0 & 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} \begin{bmatrix} 0 & 2r \end{bmatrix} = 0 \)

0
121 \(\frac12 {\tilde g}^{1k} ({\tilde \partial}_2 {\tilde g}_{1k} + {\tilde \partial}_1 {\tilde g}_{2k} - {\tilde \partial}_k {\tilde g}_{21} ) \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} ( {\tilde \partial}_2 \begin{bmatrix} 1 & 0 \end{bmatrix} + {\tilde \partial}_1 \begin{bmatrix} 0 & r^2 \end{bmatrix} - {\tilde \partial}_k \begin{bmatrix} 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} ( \begin{bmatrix} 0 & 0 \end{bmatrix} + \begin{bmatrix} 0 & 2r \end{bmatrix} - \begin{bmatrix} 0 & 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} \begin{bmatrix} 0 & 2r \end{bmatrix} = 0 \)

0
122 \(\frac12 {\tilde g}^{1k} ({\tilde \partial}_2 {\tilde g}_{2k} + {\tilde \partial}_2 {\tilde g}_{2k} - {\tilde \partial}_k {\tilde g}_{22} ) \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} ( {\tilde \partial}_2 \begin{bmatrix} 0 & r^2 \end{bmatrix} + {\tilde \partial}_2 \begin{bmatrix} 0 & r^2 \end{bmatrix} - {\tilde \partial}_k \begin{bmatrix} r^2 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} ( \begin{bmatrix} 0 & 0 \end{bmatrix} + \begin{bmatrix} 0 & 0 \end{bmatrix} - \begin{bmatrix} 2r & 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 1 & 0 \end{bmatrix} \begin{bmatrix} -2r & 0 \end{bmatrix} = \frac12 (-2r) = -r \)

\(-r\)
211 \(\frac12 {\tilde g}^{2k} ({\tilde \partial}_1 {\tilde g}_{1k} + {\tilde \partial}_1 {\tilde g}_{1k} - {\tilde \partial}_k {\tilde g}_{11} ) \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} ( {\tilde \partial}_1 \begin{bmatrix} 1 & 0 \end{bmatrix} + {\tilde \partial}_1 \begin{bmatrix} 1 & 0 \end{bmatrix} - {\tilde \partial}_k \begin{bmatrix} 1 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} ( \begin{bmatrix} 0 & 0 \end{bmatrix} + \begin{bmatrix} 0 & 0 \end{bmatrix} - \begin{bmatrix} 0 & 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} \begin{bmatrix} 0 & 0 \end{bmatrix} = 0 \)

0
212 \(\frac12 {\tilde g}^{2k} ({\tilde \partial}_1 {\tilde g}_{2k} + {\tilde \partial}_2 {\tilde g}_{1k} - {\tilde \partial}_k {\tilde g}_{12} ) \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} ( {\tilde \partial}_1 \begin{bmatrix} 0 & r^2 \end{bmatrix} + {\tilde \partial}_2 \begin{bmatrix} 1 & 0 \end{bmatrix} - {\tilde \partial}_k \begin{bmatrix} 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} ( \begin{bmatrix} 0 & 2r \end{bmatrix} + \begin{bmatrix} 0 & 0 \end{bmatrix} - \begin{bmatrix} 0 & 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} \begin{bmatrix} 0 & 2r \end{bmatrix} = \frac12 \frac1{r^2}2r = \frac1r \)

\(\frac1r\)
221 \(\frac12 {\tilde g}^{2k} ({\tilde \partial}_2 {\tilde g}_{1k} + {\tilde \partial}_1 {\tilde g}_{2k} - {\tilde \partial}_k {\tilde g}_{21} ) \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} ( {\tilde \partial}_2 \begin{bmatrix} 1 & 0 \end{bmatrix} + {\tilde \partial}_1 \begin{bmatrix} 0 & r^2 \end{bmatrix} - {\tilde \partial}_k \begin{bmatrix} 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} ( \begin{bmatrix} 0 & 0 \end{bmatrix} + \begin{bmatrix} 0 & 2r \end{bmatrix} - \begin{bmatrix} 0 & 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} \begin{bmatrix} 0 & 2r \end{bmatrix} = \frac12 \frac1{r^2}2r = \frac1r \)

\(\frac1r\)
222 \(\frac12 {\tilde g}^{2k} ({\tilde \partial}_2 {\tilde g}_{2k} + {\tilde \partial}_2 {\tilde g}_{2k} - {\tilde \partial}_k {\tilde g}_{22} ) \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} ( {\tilde \partial}_2 \begin{bmatrix} 0 & r^2 \end{bmatrix} + {\tilde \partial}_2 \begin{bmatrix} 0 & r^2 \end{bmatrix} - {\tilde \partial}_k \begin{bmatrix} r^2 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} ( \begin{bmatrix} 0 & 0 \end{bmatrix} + \begin{bmatrix} 0 & 0 \end{bmatrix} - \begin{bmatrix} 2r & 0 \end{bmatrix} ) = \)

\(\frac12 \begin{bmatrix} 0 & r^{-2} \end{bmatrix} \begin{bmatrix} -2r & 0 \end{bmatrix} = 0 \)

0

This took a while for me to do, but not as long as it may look, as I copied and pasted quite a bit of it. In any case the final result is:

\({{\tilde \Gamma}^c}_{ab} = \begin{bmatrix} 0 & 0 \\ 0 & -r\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & \frac1r \\ \frac1r & 0 \end{bmatrix}} \)

Notice the symmetry in \(\Gamma\). It is caused by the \({\Gamma^1}_{12}\) and \({\Gamma^1}_{21}\) being exactly the same calculation, just with the \(\tilde \partial_1\) and \(\tilde \partial_2\) in oppositve positions.

More Compilcated Gamma

And for the grand finale I will attempt to compute the \(\Gamma\) for a more complex transformation. You'll see that this gets very complicated very quickly and then suddently simplifies itself at the end:

\(women = females \)

\(couples = females * males\)

\(females = women \)

\(males = \frac {couples} {women} \)

This transformation doesn't affect the females, they just become women. But it includes all the heterosexual couple combinations which causes a surprising amount of complexity. From the last two equations we can work out the Jacobian S:

\(S = \begin{bmatrix} 1 & 0 \\ - \frac {c} {w^2} & \frac1w \end{bmatrix} \)

And then the metric tensor:

\(\tilde g = g S S = \begin{bmatrix} 1 + \frac{c^2}{w^4} & -\frac{c}{w^3} \\ -\frac{c}{w^3} & \frac1{w^2} \end{bmatrix} \)

And then the inverse metric tensor using an equation to find the inverse:

\({\tilde g}^{-1} = \frac1{\frac1{w^2}+\frac{c^2}{w^6} - \frac{c^2}{w^6}} \begin{bmatrix} \frac1{w^2} & \frac{c}{w^3} \\ \frac{c}{w^3} & 1 + \frac{c^2}{w^4} \end{bmatrix} = w^2 \begin{bmatrix} \frac1{w^2} & \frac{c}{w} \\ \frac{c}{w} & 1 + \frac{c^2}{w^4} \end{bmatrix} = \begin{bmatrix} 1 & \frac{c}{w} \\ \frac{c}{w} & w^2 + \frac{c^2}{w^2} \end{bmatrix} \)

And now we can compute \(\Gamma\) by taking the derivative in the three different directions:

\({{\tilde \Gamma}^c}_{ab} = \frac12 \tilde g^{ck} (\begin{bmatrix} -\frac{4c^2}{w^5} & \frac{3c}{w^4} \\ \frac{2c}{w^4} & -\frac1{w^3} \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} \frac{3c}{w^4} & -\frac2{w^3} \\ -\frac1{w^3} & 0 \end{bmatrix}} + \begin{bmatrix} -\frac{4c^2}{w^5} & \frac{2c}{w^4} \\ \frac{3c}{w^4} & -\frac1{w^3} \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} \frac{3c}{w^4} & -\frac1{w^3} \\ -\frac2{w^3} & 0 \end{bmatrix}} - \begin{bmatrix} -\frac{4c^2}{w^5} & \frac{3c}{w^4} \\ \frac{3c}{w^4} & -\frac2{w^3} \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} \frac{2c}{w^4} & -\frac1{w^3} \\ -\frac1{w^3} & 0 \end{bmatrix}}) = \)

\( \frac12 \begin{bmatrix} 1 & \frac{c}{w} \\ \frac{c}{w} & w^2 + \frac{c^2}{w^2} \end{bmatrix} \begin{bmatrix} -\frac{4c^2}{w^5} & \frac{2c}{w^4} \\ \frac{2c}{w^4} & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} \frac{4c}{w^4} & -\frac2{w^3} \\ -\frac2{w^3} & 0 \end{bmatrix}} = \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} \frac{2c}{w^2} & -\frac1{w} \\ -\frac1{w} & 0 \end{bmatrix}} \)

The algebra for that got very involved even though the result is quite simple really with the whole front half magically cancelling out to leave all zeroes.

Transforming the Covariant Derivative

Now we know all about how \(\Gamma\) is computed, we can look at the covariant derivative definition again. For the covariant derivative to be considered a tensor, then the following relationship must hold. Taking the covariant derivative of a vector and then transforming it must give the same result as transforming and then deriving.

First let's look at the equation again. I'm dropping the boxes around the T temporarily to make it easier to read. And I've put in the indexes this time. I started with the \({\Gamma^c}_{ab}\) and then contracted that with \(V\). Since \(V\) is contravariant, it contracts with either the a or b. I chose the a, and then put the b next to the \(\nabla\) and the \(\partial\) so that the letters on the left and right would match up. So in this equation b and c are the fixed indexes and a is free:

\(\nabla_b V^c = \partial_b V^c + {\Gamma^c}_{ab} V^a \)

This is what it looks like when we take the derivative and then transform. We start with the covariant derivative in the female/male coordinate system:

\(\nabla_b V^c\)

Once transformed into the embraces/hugs or women/couples coordinates, it earns a squiggle ~:

\({\tilde \nabla}_b {\tilde V}^c\)

If \(\nabla V\) were a tensor, then it should transform by multiplying with T and S like below. This introduces two new indexes d and e which each get contracted away into nothingness leaving just the b and c on both sides of the equation:

\( {\tilde \nabla}_b {\tilde V}^c = {T^c}_d (\nabla_e V^d) {S^e}_b \)

Putting in the formula for the covariant derivative gives:

\( {\tilde \nabla}_b {\tilde V}^c = {T^c}_d \partial_e V^d {S^e}_b + {T^c}_d {\Gamma^d}_{ae} V^a {S^e}_b \)

That's one way of getting there. The other is to transform and then differentiate:

\( {\tilde \nabla}_b {\tilde V}^c = {\tilde \partial}_b {\tilde V}^c + {{\tilde \Gamma}^c}_{ab} {\tilde V}^a \)

Now we have to get rid of all those ~. The \(\tilde V\)s are just transformed \(V\)s and I've introduced d again to show how they contract:

\( {\tilde \nabla}_b {\tilde V}^c = {\tilde \partial}_b ({T^c}_d V^d) + {{\tilde \Gamma}^c}_{ab} {T^a}_d V^d \)

The \(\tilde \partial\) is a derivative in the transformed women/couple coordinates. To make this in terms of the original female/male coordinates, we have to multiply it by S, which involves another index e. This equation now has three free indexes a, d and e:

\( {\tilde \nabla}_b {\tilde V}^c = \partial_e ({T^c}_d V^d) {S^e}_b + {{\tilde \Gamma}^c}_{ab} {T^a}_d V^d \)

And now we need to apply the chain rule for derivatives. Notice that there are three directions in which T can be differentiated in this equation. Because it's the b (after the e has contracted out) it corresponds to deriving across. The derivative is a new column. This is subtle but will become very important:

\( {\tilde \nabla}_b {\tilde V}^c = (\partial_e {T^c}_d) V^d {S^e}_b + {T^c}_d (\partial_e V^d) {S^e}_b + {{\tilde \Gamma}^c}_{ab} {T^a}_d V^d \)

Transforming Gamma

Now we have two equations for \(\tilde \nabla \tilde V \), one which uses \(\Gamma\) and the other \(\tilde \Gamma\). We can set them equal to each other and find out how \(\Gamma\) is supposed to transform:

\( {\tilde \nabla}_b {\tilde V}^c = {T^c}_d \partial_e V^d {S^e}_b + {T^c}_d {\Gamma^d}_{ae} V^a {S^e}_b = (\partial_e {T^c}_d) V^d {S^e}_b + {T^c}_d (\partial_e V^d) {S^e}_b + {{\tilde \Gamma}^c}_{ab} {T^a}_d V^d \)

The derivative of \(\partial_e V^d\) cancels out and we are left with:

\( {T^c}_d {\Gamma^d}_{ae} V^a {S^e}_b = (\partial_e {T^c}_d) V^d {S^e}_b + {{\tilde \Gamma}^c}_{ab} {T^a}_d V^d \)

In all those terms, when the free indexes are contracted we are still left with c up high and b down low. The vector V appears in all three terms, and we would like to cancel it out. So first we'll replace the free index d in the left term with something new f and the a with d. This is okay to do because all those indexes still refer to the same placeholder (the first covariant index on the bottom):

\( {T^c}_f {\Gamma^f}_{de} V^d {S^e}_b = (\partial_e {T^c}_d) V^d {S^e}_b + {{\tilde \Gamma}^c}_{ab} {T^a}_d V^d \)

Then we can divide out \(V^d\) from all terms. This means that after contractions all terms now have c up high and d and b below:

\( {T^c}_f {\Gamma^f}_{de} {S^e}_b = (\partial_e {T^c}_d) {S^e}_b + {{\tilde \Gamma}^c}_{ab} {T^a}_d \)

Now we'll rearrange to get \(\tilde \Gamma\) on the left:

\({{\tilde \Gamma}^c}_{ab} {T^a}_d = {T^c}_f {\Gamma^f}_{de} {S^e}_b - (\partial_e {T^c}_d) {S^e}_b \)

To cancel the \({T^a}_d\) on the left, we have to multiply it (and the other terms) by its inverse \({S^d}_g\). This means that the rows labelled d in T contract with the columns labelled d in S, leaving a new index g. So now after all contractions we have c on top and g and b below:

\({{\tilde \Gamma}^c}_{ab} {T^a}_d {S^d}_g = {T^c}_f {\Gamma^f}_{de} {S^e}_b {S^d}_g - (\partial_e {T^c}_d) {S^e}_b {S^d}_g \)

Multiplying a matrix by its inverse yields the identity matrix, the matrix equivalent of the number 1. So we finally have \(\tilde \Gamma\) in terms of \(\Gamma\):

\({{\tilde \Gamma}^c}_{gb} = {T^c}_f {\Gamma^f}_{de} {S^e}_b {S^d}_g - (\partial_e {T^c}_d) {S^e}_b {S^d}_g \)

Now I'm going to change the index g back into a so that the result is in terms of c, a and b:

\({{\tilde \Gamma}^c}_{ab} = {T^c}_f {\Gamma^f}_{de} {S^e}_b {S^d}_a - (\partial_e {T^c}_d) {S^e}_b {S^d}_a \)

This is a big result, it says that \(\Gamma\) transforms roughly like this (without indexes for clarity):

\({\tilde \Gamma} = T \Gamma S S - \partial T S S \)

If \(\Gamma\) itself were a tensor it would only transform according T, S and S but it has the extra term on the right, which is there to compensate for the derivative of T which caused all the problems for ordinary tensor differentiation. So \(\Gamma\) is not a tensor. And it so happens that the equation above can be derived from:

\({\Gamma^c}_{ab} = \frac12 g^{ck} (\partial_a g_{bk} + \partial_b g_{ak} - \partial_k g_{ab} ) \)

Which is a very complicated process. Much more complex than the one above if you can believe it. But it does tie things all up nicely. Although I won't derive the equation, we will test it out on our example \(\Gamma\)s from the previous sections.

There is one other equation which can be calculated. The process above should also work in the other direction. So we can take the same equation, swap \(\Gamma\) and \(\tilde \Gamma\), switch the Ts and Ss and it should still work.

\({\Gamma^c}_{ab} = {S^c}_f {{\tilde \Gamma}^f}_{de} {T^e}_b {T^d}_a - (\tilde \partial_e {S^c}_d) {T^e}_b {T^d}_a \)

As above, we can multiply by the inverses to get \(\tilde \Gamma\) by itself. The inverse of S contracts with the rows of the T:

\({T^h}_c {\Gamma^c}_{ab} {S^b}_i {S^a}_j = {T^h}_c {S^c}_f {{\tilde \Gamma}^f}_{de} {T^e}_b {S^b}_i {T^d}_a {S^a}_j - {T^h}_c (\tilde \partial_e {S^c}_d) {T^e}_b {S^b}_i {T^d}_a {S^a}_j \)

Which yields the following when all inverses have annihalated each other:

\({T^h}_c {\Gamma^c}_{ab} {S^b}_i {S^a}_j = {{\tilde \Gamma}^f}_{de} - {T^h}_c (\tilde \partial_e {S^c}_d) \)

And then we can move stuff around:

\( {{\tilde \Gamma}^f}_{de} = {T^h}_c {\Gamma^c}_{ab} {S^b}_i {S^a}_j + {T^h}_c (\tilde \partial_e {S^c}_d) \)

Now the indexes are all over the place so we have to relabel them. For example the e on the right originally was contracted with \({T^e}_b\) so it can go back to being a b. Same with the others until we are left with:

\( {{\tilde \Gamma}^c}_{ab} = {T^c}_k {\Gamma^k}_{lm} {S^m}_b {S^l}_a + {T^c}_k (\tilde \partial_b {S^k}_a) \)

Note that this equation has \(\tilde \partial\) meaning that S is differentiated with respect to the transformed coordinates. Whereas the first equation just has \(\partial\) so it gets differentiated with respect to the female/male coordinates.

For clarity without indexes:

\({\tilde \Gamma} = T \Gamma S S + T \tilde \partial S \)

Testing Gamma

Now we will test if the \(\Gamma\)s we have computed above for embraces/hugs, polar and women/couples actually work with the cases above. In all cases we started from the female/male coordinate system which had a metric tensor equal to the identity matrix and a \(\Gamma\) of zero. So we can take the two mega equations above and remove the first term. Our \(\tilde \Gamma\)s should satisfy:

\({{\tilde \Gamma}^c}_{ab} = 0 - (\partial_e {T^c}_d) {S^e}_b {S^d}_a \)

\({{\tilde \Gamma}^c}_{ab} = 0 + {T^c}_k (\tilde \partial_b {S^k}_a) \)

Let's start with the embraces/hugs We have:

\(T = \begin{bmatrix} 2f & 0 \\ 0 & 2m \end{bmatrix} = \begin{bmatrix} 2\sqrt e & 0 \\ 0 & 2\sqrt h \end{bmatrix} = \begin{bmatrix} 2e^{\frac12} & 0 \\ 0 & 2h^{\frac12} \end{bmatrix} \)

\(S = \begin{bmatrix} \frac1{2f} & 0 \\ 0 & \frac1{2m} \end{bmatrix} = \begin{bmatrix} \frac1{2\sqrt e} & 0 \\ 0 & \frac1{2\sqrt h} \end{bmatrix} = \begin{bmatrix} \frac12 e^{-\frac12} & 0 \\ 0 & \frac12 h^{-\frac12} \end{bmatrix}\)

When we can compute the first equation, we do it in terms of females/males because there is no ~ on the \(\partial\). Then I'll swap the variables at the end to show it's the same answer for \(\Gamma\) as above. The derivative of T goes across and it is multiplied by S going across and then going down:

\({{\tilde \Gamma}^c}_{ab} = - (\partial_e {T^c}_d) {S^e}_b {S^d}_a = - \begin{bmatrix} 2 & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & 0 \\ 0 & 2 \end{bmatrix}} \begin{bmatrix} \frac1{2f} & 0 \\ 0 & \frac1{2m} \end{bmatrix} \begin{bmatrix} \frac1{2f} & 0 \\ 0 & \frac1{2m} \end{bmatrix} =\) \( - \begin{bmatrix} \frac1{2f^2} & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & 0 \\ 0 & \frac1{2m^2} \end{bmatrix}} = \begin{bmatrix} - \frac1{2e} & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & 0 \\ 0 & -\frac1{2h} \end{bmatrix}} \)

And now according to the other equation which is done in the embraces/hugs system:

\({{\tilde \Gamma}^c}_{ab} = {T^c}_k (\tilde \partial_b {S^k}_a) = \begin{bmatrix} 2e^{\frac12} & 0 \\ 0 & 2h^{\frac12} \end{bmatrix} \begin{bmatrix} -\frac14 e^{-\frac32} & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & 0 \\ 0 & -\frac14 h^{-\frac32} \end{bmatrix}} = \begin{bmatrix} -\frac1{2e} & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & 0 \\ 0 & -\frac1{2h} \end{bmatrix}} \)

They both work!! Yippee! I am so pleased by that. It has taken me ages to figure out exactly how to work out these equations to get them to work out. Now to check up on polar coordinates. I'll only do this in the \((r, \theta)\) coordinates using the second \(\tilde \partial\) equation above. We can comute T directly from S. It's very similar and much helped by the relation \(\cos^2\theta + \sin^2\theta = 1\):

\(S = \begin{bmatrix} \cos\theta & -r\sin\theta \\ \sin\theta & r\cos\theta \end{bmatrix} \)

\(T = S^{-1} = \begin{bmatrix} \cos\theta & \sin\theta \\ -\frac{\sin\theta}{r} & \frac{\cos\theta}{r} \end{bmatrix} \)

Now we'll use the derivative of S (going across) to compute \(\Gamma\). We contract the T going across (the k is the lower index) by the S going into the depths (the k is the top index):

\({{\tilde \Gamma}^c}_{ab} = {T^c}_k (\tilde \partial_b {S^k}_a) = \begin{bmatrix} \cos\theta & \sin\theta \\ -\frac{\sin\theta}{r} & \frac{\cos\theta}{r} \end{bmatrix} \begin{bmatrix} 0 & -\sin \theta \\ -\sin \theta & -r \cos \theta \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & \cos \theta \\ \cos \theta & -r \sin \theta \end{bmatrix}} = \) \( \begin{bmatrix} \cos \theta * 0 + \sin \theta * 0 & \cos \theta * (- \sin \theta) + \sin \theta * \cos \theta \\ \cos \theta * (- \sin \theta) + \sin \theta * \cos \theta & \cos \theta * (-r \cos \theta) + \sin \theta * (-r \sin \theta) \end{bmatrix} \) \( _\class{matrix3d}{\begin{bmatrix} -\frac{\sin \theta}{r} * 0 + \frac{\cos \theta}{r} * 0 & -\frac{\sin \theta}{r} * (- \sin \theta) + \frac{\cos \theta}{r} * \cos \theta \\ -\frac{\sin \theta}{r} * (- \sin \theta) + \frac{\cos \theta}{r} * \cos \theta & -\frac{\sin \theta}{r} * (-r \cos \theta) + \frac{\cos \theta}{r} * (-r \sin \theta) \end{bmatrix}} = \) \( \begin{bmatrix} 0 & 0 \\ 0 & -r \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & \frac1r \\ \frac1r & 0 \end{bmatrix}} \)

That one works too! And now for the grand finale with women and couples:

\(S = \begin{bmatrix} 1 & 0 \\ - \frac {c} {w^2} & \frac1w \end{bmatrix} \)

\(T = S^{-1} \begin{bmatrix} 1 & 0 \\ - \frac {c} {w} & w \end{bmatrix} \)

\({{\tilde \Gamma}^c}_{ab} = {T^c}_k (\tilde \partial_b {S^k}_a) = \begin{bmatrix} 1 & 0 \\ -\frac{c}{w} & w \end{bmatrix} \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} \frac{2c}{w^3} & -\frac1{w^2} \\ -\frac1{w^2} & 0 \end{bmatrix}} = \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} \frac{2c}{w^2} & -\frac1{w} \\ -\frac1{w} & 0 \end{bmatrix}} \)

What is Gamma?

Having gone through all these complex complications, I still haven't really said what \(\Gamma\) actually is. That's because I'm not entirely sure myself. Most descriptions focus on what it does for vector and coordinate systems. The label I like best is that it is an affine connection between a stretched non-linear coordinate system and a flat non-stretched coordinate system. I hope to fully understand what "affine" means at some point (it's about things that preserve parallel relationships but I want to understand it wholly). In the mean time, I imagine that \(\Gamma\) provides lots of little strings making a connection.

Below is the unadorned female/male coordinate system on the left. On the right is the embraces/hugs coordinates with the stretched out female/male coordinates overlayed in green. For example, we know that \(e=f^2\) and so the line \(e=4\) corresponds to \(f=2\). It's like some giant has grabbed the coordinates on the left, stretched them, and overlayed them on the right.

But the \(\Gamma\) still connects the stretched green lines to their original formation on the left. So I've drawn blue connecting arrows from the line \(e=4\) to \(f=2\) and from \(h=4\) to \(m=1\). You could imagine millions of these arrows, binding the green female/male gird to the grey embraces/hugs grid. And these arrows roughly represent the inverse of the parts of \(\Gamma\). They are proportional to \(e\) and \(h\), which appear in the corners of \(\Gamma\):

males females female/male coordinates hugs embraces embraces/hugs with female/male m=2 m=1 f=1 f=2

This is the closest I can get to an intuitive feeling of what \(\Gamma\) represents. It connects a stretched coordinate system to a non-stretched one.

Multi-Dimensional Covariant Derivatives

There's something I need to get off my chest, and now is as good a time as any. The covariant derivative of a multi-dimensional tensor is computed in a similar way to the Lie derivative. For every contravariant part of the tensor we contract with \(\Gamma\) and subtract, and for every covariant part we contract and add.

This is what the Lie deriviatve looks like for a mixed rank tensor called T:

\(L_X {T^c}_b = \partial_a {T^c}_b X^a - \partial_c X^a {T^c}_b + {T^c}_b \partial_a X^b \)

Remember that the contravariant part of T has the index c and appears up top. It gets contracted and subtracted. The covariant index b appears below. It gets contracted and added.

And this is the covariant derivative for the same T following very similar rules:

\(\nabla_a {T^c}_b = \partial_a {T^c}_b - {\Gamma^c}_{ad} {T^d}_b + {\Gamma^e}_{ab} {T^c}_e \)

Properties of Gamma

The \(\Gamma\) computed this way has a couple very useful properties. Admittedly I have yet to understand why these properties are useful, but various books and web pages do harp on about it quite a bit, so they must be.

Firstly they are symmetric in their rows and columns (the a and b). Indeed all the \(\Gamma\)s we computed above have this property.

Secondly the covariant derviative of the metric tensor is 0:

\(\nabla g = 0\)

Since g is a rank (0,2) tensor with two covariant parts, its covariant deriviative will involve adding two contractions with \(\Gamma\):

\(\nabla_d g_{ab} = \partial_d g_{ab} + {\Gamma^c}_{ab} g_{ac} + {\Gamma^c}_{ab} g_{cb} = 0\)

Since both g and \(\Gamma\) are symmetric downstairs, the two additions are the same and we can simplify this to:

\(\nabla g = \partial \begin{bmatrix} \frac1{4e} & 0 \\ 0 & \frac1{4h} \end{bmatrix} + 2 \begin{bmatrix} - \frac1{2e} & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & - \frac1{2h} \end{bmatrix}} \begin{bmatrix} \frac1{4e} & 0 \\ 0 & \frac1{4h} \end{bmatrix} = \) \(\begin{bmatrix} \frac1{4e^2} & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & \frac1{4h^2} \end{bmatrix}} + 2 \begin{bmatrix} - \frac1{8e^2} & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & -\frac1{8h^2} \end{bmatrix}} = \begin{bmatrix} 0 & 0 \\ 0 & 0\end{bmatrix} _\class{matrix3d}{\begin{bmatrix}0 & 0 \\ 0 & 0 \end{bmatrix}} = 0\)

It worked! But that's hardly suprising, because the formula for computed \(\Gamma\) is derived, starting with the assumption that the covariant derivative of the metric tensor should be zero. Even though it's not surprising, it did take me an awfully long time to make sure all the indices matched up correctly so that it would work.

Covariant Derivative Example

For the grand finale, we'll check this actually works. We'll use the trusty V from the Lie derivative examples and the most complicated coordinate system we've done so far for women/couples. First lets compute a bunch of stuff in both coordinate systems:

\(V = \begin{bmatrix} f+m \\ 1 \end{bmatrix} = \begin{bmatrix} w+\frac{c}{w} \\ 1 \end{bmatrix} \)

\(\partial V = \begin{bmatrix} 1 & 1 \\ 0 & 0 \end{bmatrix} \)

\(\tilde \partial V = \begin{bmatrix} 1 - \frac{c}{w^2} & \frac1{w} \\ 0 & 0 \end{bmatrix} = \partial V S \)

\(T = \begin{bmatrix} 1 & 0 \\ m & f \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ \frac{c}{w} & w \end{bmatrix} \)

\(\tilde V = TV = \begin{bmatrix} f+m \\ fm+m^2 + f \end{bmatrix} = \begin{bmatrix} w+\frac{c}{w} \\ c + \frac{c^2}{w^2} + w \end{bmatrix} \)

\(S = \begin{bmatrix} 1 & 0 \\ - \frac {c} {w^2} & \frac1w \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ - \frac {m}{f} & \frac1f \end{bmatrix} \)

It's important to note which vectors belong to which coordinate system. \(V\) is in the female/male coordinate system and \(\tilde V = TV\) in embraces/hugs. This can be very confusing because female/males and embraces/hugs are related via algebraic equations, so both \(V\) and \(\tilde V\) can be defined in terms of females/males and embraces/hugs. But \(\partial\) always differentiates female/male and \(\tilde \partial\) always differentiates embraces/hugs and therefore \(\partial V \ne \tilde \partial V\) because in fact \(\partial V S = \tilde \partial V\).

First we'll transform the covariant derivative of V in its original female/male coordinate system where \(\Gamma=0\):

\( \tilde \nabla \tilde V = T \nabla V S = T (\partial V + \Gamma V) S = \begin{bmatrix} 1 & 0 \\ m & f \end{bmatrix} (\begin{bmatrix} 1 & 1 \\ 0 & 0 \end{bmatrix} + 0) \begin{bmatrix} 1 & 0 \\ - \frac {m}{f} & \frac1f \end{bmatrix} = \) \(\begin{bmatrix} 1 & 1 \\ m & m \end{bmatrix} \begin{bmatrix} 1 & 0 \\ - \frac {m}{f} & \frac1f \end{bmatrix} = \begin{bmatrix} 1-\frac{m}{f} & \frac1{f} \\ m - \frac{m^2}{f} & \frac{m}{f} \end{bmatrix} \)

That was relatively painless. The next one isn't. This is done in terms of women/couples:

\( \tilde \nabla \tilde V = \tilde \partial (TV) + \tilde \Gamma (TV) = \tilde \partial \begin{bmatrix} w+\frac{c}{w} \\ c + \frac{c^2}{w^2} + w \end{bmatrix} + \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} \frac{2c}{w^2} & -\frac1{w} \\ -\frac1{w} & 0 \end{bmatrix}} \begin{bmatrix} w+\frac{c}{w} \\ c + \frac{c^2}{w^2} + w \end{bmatrix} =\) \( \begin{bmatrix} 1 - \frac{c}{w^2} & \frac1{w} \\ -2 \frac{c^2}{w^3} + 1 & 1 + 2\frac{c}{w^2} \end{bmatrix} \begin{bmatrix} 0 & 0 \\ \frac{2c}{w} + \frac{2c^2}{w^3} - \frac{c}{w} - \frac{c^2}{w^3} - 1 & -1 - \frac{c}{w^2} \end{bmatrix} =\) \( \begin{bmatrix} 1 - \frac{c}{w^2} & \frac1{w} \\ \frac{c}{w} - \frac{c^2}{w^3} & \frac{c}{w^2} \end{bmatrix} \)

Which ends up with the same result as above if we convert it algebraically back into female/male!

Covariant Cyland

Okay, so that wasn't the grand finale after all. I'm returning to this after a few months (28 September 2015) to bring peace and certainty to the people of Cyland. Recall that they live in cylinder in space:

The habitable cylinder Cyland

Ordinary tensor differentiation has failed them but the Lie derivative helped. Let's compute their Gamma and see what the covariant derivative can do for them. First of all we need g and its inverse. We can compute those from T and S. We worked out that T was:

\(T = \begin{bmatrix} 1 & 0 \\ 0 & \sqrt {1 - u^2} \end{bmatrix} \)

S is the inverse of this:

\(S = T^{-1} = \begin{bmatrix} 1 & 0 \\ 0 & \frac1 {\sqrt {1 - u^2}} \end{bmatrix} \)

We can compute g and its inverse from S:

\(\tilde g = g S S = \begin{bmatrix}1 & 0 \\ 0 & 1 \end{bmatrix} = \begin{bmatrix}1 & 0 \\ 0 & \frac1 {1-u^2} \end{bmatrix} \)

\(\tilde g^{-1} = \begin{bmatrix}1 & 0 \\ 0 & 1-u^2 \end{bmatrix} \)

Cyland's \(\Gamma\) will only have one non-zero entry for \({{\tilde \Gamma}^2}_{22} \) because all the other ones will involve a multiplication by zero:

\({{\tilde \Gamma}^2}_{22} = \frac12 {\tilde g}^{2k} ({\tilde \partial}_2 {\tilde g}_{2k} + {\tilde \partial}_2 {\tilde g}_{2k} - {\tilde \partial}_k {\tilde g}_{22} ) = \) \(\frac12 \begin{bmatrix} 0 & 1-u^2 \end{bmatrix} ( \begin{bmatrix} 0 & \frac {2u}{ (1-u^2)^2 } \end{bmatrix} + \begin{bmatrix} 0 & \frac {2u}{ (1-u^2)^2 } \end{bmatrix} - \begin{bmatrix} 0 & \frac {2u}{ (1-u^2)^2 } \end{bmatrix} = \) \( \frac12 \begin{bmatrix} 0 & 1-u^2 \end{bmatrix} \begin{bmatrix} 0 & \frac {2u}{ (1-u^2)^2 } \end{bmatrix} = \begin{bmatrix} 0 & \frac {u}{1-u^2} \end{bmatrix} \)

Then the full \(\Gamma\) is:

\({{\tilde \Gamma}^c}_{ab} = \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & 0 \\ 0 & \frac {u}{1-u^2} \end{bmatrix}} \)

We can now take our vector field V and compute the covariant derivative:

\(\tilde V = TV = \begin{bmatrix} 0.2 \\ 0.2 \end{bmatrix} \begin{bmatrix} 1 & 0 \\ 0 & \sqrt {1 - u^2} \end{bmatrix} = \begin{bmatrix} 0.2 \\ 0.2 \sqrt {1 - u^2} \end{bmatrix} \)

And now to compute the covariant derivative:

\( \tilde \nabla \tilde V = \tilde \partial (TV) + \tilde \Gamma (TV) = \begin{bmatrix} 0 & 0 \\ 0 & \frac{-0.4u} {\sqrt {1 - u^2}} \end{bmatrix} + \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} _\class{matrix3d}{\begin{bmatrix} 0 & 0 \\ 0 & \frac {u}{1-u^2} \end{bmatrix}} \begin{bmatrix} 0.2 \\ 0.2 \sqrt {1 - u^2} \end{bmatrix} = \) \(\begin{bmatrix} 0 & 0 \\ 0 & \frac{-0.2u} {\sqrt {1 - u^2}} \end{bmatrix} + \begin{bmatrix} 0 & 0 \\ 0 & \frac{0.2u} {\sqrt {1 - u^2}} \end{bmatrix} = \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} \)

The \(\Gamma\) part perfectly cancels out the derivative of TV and the result it 0! So whether viewed from land or space, the derivative of the constant wind V is consistently zero. The covariant derivative has come through for the people of Cyland.

Why is it Covariant?

In a previous article I mentioned that ordinary tensor differentiation seems covariant. It isn't really because it is not tensorial. But the covariant derivative is tensorial and it transforms by introducing a lower covariant index. That's why it's called the covariant derivative. It is the thing that ordinary tensor differentiation aspires to be. But it just didn't quite make the grade unfortunately.

Conclusion

Understanding all this has been one the most difficult intellectual exercises I've ever undertaken in my entire life. It only covered about 2 pages in my text book, which I'm starting to think is not very well written. Surely it shouldn't take that long? However much of a novice I am.

About a month ago (May 2015) I was on the train to London. It was delayed and had stopped completely. I was standing up, so I got out my notebook and started scribbling equations much like the ones above. The woman standing next to me asked what I was doing. I told her I was doing physics, trying to understand the theory of general relatively. She asked me if I was studying physics at University. I said no, I'm doing it "for fun". At that point, another person sitting down turned at exclaimed "For fun?!". She was a student, and clearly not in tune with the idea of studying stuff, especially physics, for fun. It led to a very pleasant conversation about studying, physics, work, etc. But maybe it gives you some idea as to my state of mind and commitment to this topic.

Next up is parallel transport and geodesics.