On the n-th derivative of the inverse function
D[InverseFunction[f][x], {x, 6}]
Towards the question whether this is computed recursively: I guess so from analyzing the Trace
produced by executing the code:
Table[
Length@Trace[
D[InverseFunction[f][x], {x, k}]
],
{k, 1, 12}]
{6, 7, 7, 10, 13, 18, 25, 36, 51, 73, 103, 145}
In fact, there is a closed-form expression for the derivatives of an inverse function, if one is willing to use the (partial) Bell polynomials (implemented in Mathematica as BellY[]
). This is related to the Lagrangian inversion formula (and see also the discussion in Charalambides).
inverseD[ff_, x_] := inverseD[ff, {x, 1}]
inverseD[ff_, {x_, k_Integer?NonNegative}] := With[{f = Function[x, ff]},
If[k == 0, Return[InverseFunction[f][x]]];
If[k == 1, Return[1/f'[InverseFunction[f][x]]]];
With[{ifun = InverseFunction[f][x]},
BellY[Table[{(k + j - 2)!, -Derivative[j][f][ifun]/f'[ifun]/j},
{j, 2, k}]]/((k - 1)! f'[ifun]^k)]]
For example:
(inverseD[g[t], {t, 4}] == D[InverseFunction[g][t], {t, 4}] /. Function[t, g[t]] -> g) // Simplify