Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site dartvax.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!harvard!think!mit-eddie!genrad!decvax!dartvax!chuck From: chuck@dartvax.UUCP (Chuck Simmons) Newsgroups: net.puzzle Subject: Re: x to the x to the x ... (maybe SPOILER) Message-ID: <2981@dartvax.UUCP> Date: Sun, 28-Apr-85 08:59:13 EDT Article-I.D.: dartvax.2981 Posted: Sun Apr 28 08:59:13 1985 Date-Received: Tue, 30-Apr-85 03:13:28 EDT References: <748@whuxlm.UUCP> <477@x.UUCP> Distribution: net Organization: Dartmouth College, Hanover, NH Lines: 56 > > x^x^x^x... = 2 > > > Let zeta be x^x^x^x^..., and re-write the left-hand side as > > x^zeta = 2 Note also that x^zeta = zeta, and therefore that > 2 = zeta. Rewrite as > x^2 = 2 > > Simple, no? Not done yet: there are two answers, plus and minus root-2. > > It (seems to me that it) can't be plus root-2, because trying to do the > "series" by hand leads to an unbounded value. So it must be minus root-2. > However, I am not comfortable with that, either, because I don't remember > my complex arithmetic well enough to work out whether or not it works (I > knew it - I've been programming in C too long! I had to look in a FORTRAN > manual just to convince myself that log and exponent operations are OK on > negative quantities. All that math in college has just poured out my ears!). > > Well, I tried. > -- > John Woods, Charles River Data Systems, Framingham MA, (617) 626-1101 You better go back and dust off your math books. First, minus root 2 is not a really nice answer because you have to leave the real numbers and get into the complex numbers. Secondly, "by hand" calculations show that plus root 2 converges to 2 fairly quickly. I wrote a real simple pl1 program to do my by hand calculations for both the positive and negative square roots. (Arn't languages with complex numbers wonderful?) (Oh bummer! I suddenly remember that last summer I found a few bugs in our complex number runtime package exponentiation routines. So I have no "by hand" calculations for negative square roots.) Your by-hand calculations should use the following algorithm: result = root2; do forever; result = root2 ** result; end; Here, 'result' will quickly converge to 2.0. (We should be able to prove we have a monotonic-increasing bounded sequence. Any suggestions?) Possibly your by-hand calculations used the similar algorithm: result = root2; do forever; result = result ** root2; end; Here 'result' rapidly diverges. However, this algorithm solves for ((((...^root2)^root2)^root2)^root2)^root2; which is not what we want. -- Chuck Simmons