How is the scalar product between two vectors defined in general relativity? Since vectors in general relativity are represented as directional derivative operators, it seems to me that the product of two vectors should be a second order derivative operator. However, the product of two vectors is not an operator, but a scalar number just like a scalar product in linear algebra. Why?
 A: Vectors are represented as differential operators like
$$
v = v^\mu \partial_\mu.
$$
These are spanned by a basis of $\partial_\mu$.
In addition to vectors, there is also something called a "1-form."
$$
\omega = \omega_\mu dx^\mu.
$$
These are spanned by a basis of $d x^\mu$.
In particular, these 1-forms can be thought of as a map
$$
\omega : \text{tangent vectors} \to \text{scalars}
$$
For instance,
$$
\omega (v) = \omega_\mu v^\mu.
$$
In particular,
$$
d x^\mu ( \partial_\nu) = \delta^\mu_\nu.
$$
and
$$
dx^\mu (v) = v^\mu.
$$
Now, the metric is made up of a sum of symmetric products of these one-forms. (It is not a "2-form" because it is made of symmetric products, not anti-symmetric products.)
$$
g = g_{\mu \nu} dx^\mu \otimes dx^\nu.
$$
Usually the symbols $\otimes$ is dropped, but whatever. Anyway, the metric is a map
$$
g : \text{two tangent vectors} \to \text{scalars}
$$
and acts as
\begin{align}
g(v, u) &= g_{\mu \nu} dx^\mu \otimes dx^\nu (v, u) \\
&= \frac{1}{2} g_{\mu \nu}(( dx^\mu (v) )( dx^\nu (u) )+( dx^\mu (u) )( dx^\nu (v) )) \\
&= \frac{1}{2} g_{\mu \nu}( v^\mu u^\nu + u^\mu v^\nu) \\
&= g_{\mu \nu} v^\mu u^\nu
\end{align}
so that is really just how everything is defined.
A: In differential geometry, tangent vectors can also be represented by partial derivatives, but nevertheless they are also vectors as traditionally understood. The reason for alternative description by derivative operators is that we can describe tangent vectors intrinsically. However, we can see that tangent vectors are tangent vectors by simply embedding the manifold in a larger Euclidean space. Hence the scalar product is defined as traditionally done and is a scalar.
