I think R is doing just what it should do, and the TI has been hacked to make HS teachers happy :-)
> log(as.complex(-2))/5 [1] 0.1386294+0.6283185i > a <- log(as.complex(-2))/5 > exp(a)^5 [1] -2-0i > exp(a) [1] 0.9293165+0.675188i > (as.complex(-2))^(1/5) [1] 0.9293165+0.675188i > 2^(1/5)*cos(pi/5) [1] 0.9293165 > 2^(1/5)*sin(pi/5) [1] 0.675188 albyn On Tue, May 17, 2016 at 8:10 AM, Richard M. Heiberger <[email protected]> wrote: > This problem is an example of FAQ 7.31. Floating point numbers > inside the computer can not represent odd fractions exactly. > > > seq(1, 15, 2) > [1] 1 3 5 7 9 11 13 15 > > 1/seq(1, 15, 2) > [1] 1.00000000 0.33333333 0.20000000 0.14285714 0.11111111 0.09090909 > 0.07692308 > [8] 0.06666667 > > print(1/seq(1, 15, 2), digits=18) > [1] 1.0000000000000000000 0.3333333333333333148 0.2000000000000000111 > [4] 0.1428571428571428492 0.1111111111111111049 0.0909090909090909116 > [7] 0.0769230769230769273 0.0666666666666666657 > > ## except for 1, none of these odd fractions is exactly represented > inside the computer. > > ## therefore the power requested is not the exact fraction, and the > result is not capable of calculation > > (-2)^(1/seq(1, 15, 2)) > [1] -2 NaN NaN NaN NaN NaN NaN NaN > > > > Rich > > On Tue, May 17, 2016 at 10:23 AM, [email protected] <[email protected]> > wrote: > > Forwarded message: > >> > > >> > > System is working correctly. A negative number cannot be raised to a > >> > > fractional power: > >> > > > >> > > > (-2)^(1/5) > >> > > [1] NaN > > > > Well, maybe we should say that _R_ can't raise a negative number to a > > fractional power. Neither I nor the TI calculators have any trouble > > doing it;-) I'd say R is funtioning as designed, but it was designed > > to respond INcorrectly;-) > > > > This R exchange > > > >> (-2)^5 > > [1] -32 > > > > shows that -2 is a fifth root of -32 while this exchange > > > >> (-32)^(1/5) > > [1] NaN > > > > shows that R cannot find that root. The various suggestions for > > dealing with this amount to asking R a different question which we > > know has the same answer as the intended question (which R won't > > answer). > > > > On one level you could view this as a coding/implementation issue. I > > have not looked at R's code, but the usual computer way to handle > > exponents involves taking the log of the argument. This does not > > return the correct answer when the argument is negative. That's > > annoying. The TI graphing calculators were developed with an > > incredible amount of input from secondary math. teachers. They > > complained loudly about calculators returning wrong answers or > > non-answers to problems to which students knew the right answers. TI > > did a LOT of work on this. I wish R (and lots of scientific software) > > would do likewise. > > > > On another level, involving exponentiation is not entirely avoidable. > > For rational numbers like 1/5 we can (and usually do) interpret > > (-32)^(1/5) as a name for a real number that when raised to the fifth > > power gives -32. Another name for one such number is -2. But if we want > > to use an irrational exponent, say (-32)^pi we can't interpret it that > > way. (How do we multiply pi numbers together?) So eventually we have > > to either exponentiate or have a funciton that is undefined at many > > points. At lesat in theory. As far as computers and calculators are > > concerned, they cannot represent irrational numbers anyway -- > > eveything is a rational approximation. > > > > So I think the defect is in R, not in the original posted question. > > > > -------> First-time AP Stats. teacher? Help is on the way! See > > > http://courses.ncssm.edu/math/Stat_Inst/Stats2007/Bob%20Hayden/Relief.html > > _ > > | | Robert W. Hayden > > | | 614 Nashua Street #119 > > / | Milford, New Hampshire 03055 USA > > | | > > | | email: bob@ the site below > > / x | website: http://statland.org > > | / > > '''''' > > > > _______________________________________________ > > [email protected] mailing list > > https://stat.ethz.ch/mailman/listinfo/r-sig-teaching > > _______________________________________________ > [email protected] mailing list > https://stat.ethz.ch/mailman/listinfo/r-sig-teaching > [[alternative HTML version deleted]] _______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-teaching
