Hi,
xAct does not have special functionality for this type of expansion, but we could do the following, without entering the discussion of what the expansion (in particular the vector x[a]) means if your manifold is curved.
Define the manifold:
<< xAct`xTensor`
$PrePrint = ScreenDollarIndices;
DefManifold[M, 4, {a, b, c, d, e}]
Define the vector x and two scalar functions F and G:
DefTensor[x[a], M]
DefScalarFunction[{F, G}]
Now we define the coefficients f[...] and g[...] of the expansions:
DefTensor[f[AnyIndices[TangentM]], {}]
DefTensor[g[AnyIndices[TangentM]], {}]
where AnyIndices[...] indicates that these f, g can take any number of indices. Define the action of "partial derivative" PD:
f /: PD[_][_f] := 0;
g /: PD[_][_g] := 0;
x /: PD[a_][x[b_]] := delta[a, b]
Finally construct this function to expand a scalar function up to some order:
series[f_, x_, n_] := Sum[With[{inds = Table[DummyIn[TangentM], i]}, Times[f @@ Minus[inds], Times @@ Map[x, inds]]]/i!, {i, 0, n}]
Now you can do something like this:
series[f, x, 3] series[g, x, 3] // Expand
PD[-a][%] // Expand
Is this the type of expansion you want?
Cheers,
Jose.