# What function smoothly interpolates between the identity and exponential (or log and identity) functions? [closed]

Or rather, what function can be parametrized with some value t in [0,1] such that f(x, t= 0) = x, f(x, t = 1) = e^x, and f(x, 0 < t < 1) is a principled interpolation between those two, kind of like the gamma function is a principled interpolation for the discrete factorial.

Obviously, many functions fit the bill, like f(x,t) = x^(1 + t*(x/ln(x)-1) ), but that seems kind of arbitrary.

What mathematically useful/elegant function exists?

-

## closed as not a real question by Igor Rivin, Steve Huntsman, Gerry Myerson, Todd Trimble♦, fedjaMay 27 '11 at 19:17

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center. If this question can be reworded to fit the rules in the help center, please edit the question.

Why would you expect there to be such a 'natural' function? And how would you define useful? Since $\mathbb{R}$ is contractible, there is a (quite large) contractible space of smooth functions interpolating between $id_\mathbb{R}$ and $exp$. –  David Roberts May 27 '11 at 3:10
I don't expect there to be just one, but perhaps there is a particular one that is particularly useful. The Gamma function is not the only function interpolating between factorials, but it is by far the most used, and in many senses that "natural" one. –  DoubleJay May 27 '11 at 3:11
A convex combination looks good to me: $(1-t)x + t \exp(x).$ –  Igor Rivin May 27 '11 at 3:23
I don't know where you are coming from, but it sounds like the intended end application for this interpolation may be important. If so, maybe thinking about what properties of the interpolation would be useful in the application might help you to formulate a more focussed question? Hope this helps - Rod –  WetSavannaAnimal aka Rod Vance May 27 '11 at 3:42
... or you could take the multiplicative version of linear interpolation. That is $x^{1-t}\exp(tx)$. –  Bruce Westbury May 27 '11 at 5:32

Igor's answer is probably better but I'll observe that we want to interpolate between $e^{\ln{x}}$ at $t=0$ and $e^x$ at $t=1.$ Furthermore $\int x^{-1}dx=\ln(x)+C$ and $\int x^0 dx=x+C.$

Rearranging a bit, since $\displaystyle \lim_{t \rightarrow 0^{+}}\frac{x^t-1}{t}=\ln{x},$ I am tempted by $$e^{\frac{x^t-1}{t}}=\sqrt[t]{e^{x^t-1}}.$$ That does not quite work at $t=1$ since it becomes $e^{x-1}.$ However it is also true that $\ \displaystyle \lim_{t \rightarrow 0^{+}}\frac{(x+t)^t-1}{t}=\ln{x}$ and that works at both ends as do $\frac{x^t-1+t^2}{t}\$ and $\frac{x^t-1+t^{2-t}}{t}.$

-

A not-so-arbitrary solution is the following, which is in fact a polynomial approximation whose maximal possible order depends on the resources of your favorite software and computer-memory.

The idea is to use a matrixoperator/"Carleman-matrix" B for the generation of a powerseries (in fact a truncated one, so only a polynomial) for the exponential-function and then by the zero'th power B^0 have the coefficients of the ID-function $f(x)=x$ , by the first power get the coefficients for $f(x)=exp(x)$, by the second power the coefficients of $f(x)=exp(exp(x))$ and so on. One may speak of iteration and iteration-height h here, where h is in the exponent of the matrix: B^h and in the iteration-parameter $f(x,h)=exp^{[h]}(x)$ . $h=0$ gives then the id-function, $h=1$ the exponential function.

Fractional powers of B for fractional iteration can then be approximated by fractional powers of B. Such fractional powers can be computed by matrix-diagonalization:
$\qquad \qquad B = W*D*W^{-1}$ and $\qquad \qquad B^h = W*D^h*W^{-1}$ where th diagonal-matrix D can raised to any power since we need only the h'th power of the scalar diagonal-entries.

So if you define the matrix B by $B = \operatorname{matrix}_{(r=0 ... n-1),(c=0...n-1)}( c^r/r!)$ for some finite dimension n, say 16 or 32, then you get order 16 or -32 polynomials in two variables: $f_n(x,h)\approx \exp^{[h]}(x)$.

An implementation in Pari/GP is simple; however the required float precision is huge already for small n. Using n=16 I get away with float-precision of 200 decimal digits, for n=32 I need already 1200 or 1600 digits, n=64 (which is usually my default order for such problems) was unreachable so far:

n=16
B = matrix(n,n,r,c,(c-1)^(r-1)/(r-1)!)
W = mateigen(B)
WI = W^-1
D = diag( WI * B * W  )  \\ diag extracts the diagonal into a column-vector
bpow(h) = W * matdiagonal (vector(n,r,D[r]^h)) * WI
f(x,h) = Bh = bpow(h); return( sum(r=1,n, x^(r-1)*Bh[r,2]) )


Clearly, this code can/should be optimized. With n=32 you get quite reasonable approximations for some range for, say $-0.5<h<2.5$, so you even get $f(x,h+1) \approx exp(f(x,h))$ to precision of 10 or so digits.

-
This is a neat answer. In its current form it is waaaay too complicated for my application, but the idea of using power series approximation is a good one. Thanks! –  DoubleJay May 27 '11 at 15:49