1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Creating and computing functions

  1. May 14, 2009 #1
    for example:

    f(x) = x^(x^x)

    Firstly, is there already an inverse of this function that can be expressed in functions that exist?

    And if there isn't, how would I go about computing it in code? Is there a better way than trial and error?
  2. jcsd
  3. May 14, 2009 #2
    So you're looking for a function g such that g(x^(x^x)) = x?

    y = x^(x^x)
    ln y = x^x ln x

    ln ln y = ln (x^x ln x) = x ln x ln ln x.

    Call me crazy, but I don't know whether there exists an explicit expression for x in terms of elementary functions.

    To approximate the function in code, several options exist. All of them will boil down to iteratively building up a solution, though. Newton's method could probably be used, or, more simply, just start with 0000000000.00000000000 and, starting at the left, increase a 10's place digit until the x^x^x gets too big, go back to the previous version, and go to a lower power of 10, and continue until you have as much precision as you want. Since x^x^x will grow pretty insanely quickly, you shouldn't have to check much higher than 10.
  4. May 14, 2009 #3
    That is what I thought

    What is Newton's method? A quick Google search hasn't given me anything. A link would be good.
  5. May 14, 2009 #4
    Ahh, found the Wikipedia page. I didn't know it was actually called "newtons method"!

    I thought that was just what you called it as a general name.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook