Re: Functional decomposition (solving f[f[x]] = g[x] for given g)

*To*: mathgroup at smc.vnet.net*Subject*: [mg71786] Re: Functional decomposition (solving f[f[x]] = g[x] for given g)*From*: "C.S.M. Roddie" <croddie at princeton.edu>*Date*: Wed, 29 Nov 2006 02:56:27 -0500 (EST)*Organization*: Your Company*References*: <ekh7c8$sch$1@smc.vnet.net>

Suppose g is a continuous strictly increasing function on [0,infinity]. Let's try to find the fs with the same properties for which f^2=g. Take an interval I=[a,g(a)) where g(a)>a. g^n(I) is then a disjoint string of intervals whose union is a big interval E. Hopefully E can be the whole of R+ as in your example where the intervals can be [0,1),[1,2),[2,5),[5,26), etc.. If g(a)<a, the following still works but interchange the intervals and inequalities. The idea is that once you have f on I, you have it on the whole of E because f(g^n(x))=g^n(f(x)). Let's construct f on E so that f^2=g. Take f(a) to be any b in (a,g(a)). f(x) has to be bigger than x because otherwise g(x)=f(f(x))<=f(x)<=x because f should be increasing. And less than g(a) because otherwise g(a)=f(f(a))>=f(g(a)). Now take f on [a,b] to be any strictly increasing, continuous function with f(a)=b and f(b)=g(a). Then extend f to [b,g(a)] by f(f(x))=g(x) for x in [a,b].(Noting that f(x) takes values in [b,g(a)] for x in [a,b]. Now that f is defined on the whole of I, define it on E by f(g^n(x))=g^n(f(x)). This works and we've found all the fs that work since everything above is necessary. If E is the whole space (g(x) never crosses x) we are finished. If g(x) crosses x reasonably (finitely many times or at a sequence of points tending to infinity) we can take get the solution by taking various Es and piecing the fs together. If g(x) crosses x in a more complicated way I'm not sure what can be done. For f^n=g, I think it's the same; we can still split the interval I into two parts but instead of f(a)=b it's f^(n-1)(a)=b. I.e. take f on [a,b] to be any strictly increasing and continuous function with f^(n-1)(a)=b and f(b)=g(a), and then extend to [b,g(a)]. Haven't given this much thought though and could be wrong. Charles "Kelly Jones" <kelly.terry.jones at gmail.com> wrote in news:ekh7c8$sch$1 at smc.vnet.net: > Given a function g[x], is there a standard methodology to find a > function f[x] such that: > > f[f[x]] == g[x] > > A "simple" example (that doesn't appear to have a closed form > solution): > > f[f[x]] == x^2+1 > > There are probably several (approximable? power-series-expressible?) > answers, but the most natural answer would be everywhere positive and > monotone increasing for x>0. > > For x^2, there are at least two continuous solutions: x^Sqrt[2] and > x^-Sqrt[2], the former being more "natural". It's somewhat amazing > that x^2+1 is so much harder. > > Of course, the next step would be to find f[x] such that: > > f[f[f[x]]] == g[x] > > for given g[x], and so on. > > Thought: is there any operator that converts functional composition to > multiplication or something similar? That would reduce this problem to > find nth roots and applying the inverse operator? > > Other thought: For some reason, taking the geometric average of the > identity function and g, and then iterating, seems like a good > idea. EG, Sqrt[x*g[x]], Sqrt[x*Sqrt[x*g[x]]], and so on. >