MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

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

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

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

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. 


"Kelly Jones" <kelly.terry.jones at> wrote in
news:ekh7c8$sch$1 at 

> 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.

  • Prev by Date: Graphics--How to plot all functions issued from For loop and color
  • Next by Date: Re: Re: Re: Arithmetic Puzzle (so simple it's hard)
  • Previous by thread: Functional decomposition (solving f[f[x]] = g[x] for given g)
  • Next by thread: RE: Functional decomposition (solving f[f[x]] = g[x] for given g)