Hi,
Kai Henningsen wrote:
[EMAIL PROTECTED] (Robert Dewar) wrote on 07.03.05 in <[EMAIL PROTECTED]>:
Ronny Peine wrote:
Sorry for this, maybe i should sleep :) (It's 2 o'clock here) But as i know of 0^0 is defined as 1 in every lecture i had so far.
Were these math classes, or CS classes.
Let's just say that this didn't happen in any of the German math classes I ever took, school or uni. This is in fact a classic example of this type of behaviour.
Generally when you have a situation like this, where the value of the function is different depending on how you approach the limit, you prefer to simply say that the function is undefined at that point.
And that's how it was always taught to me.
Well yes, in the general case this is the right way. But for some special cases a definition is used to simplify mathematical sentences as it is done for 0^0 = 1 or gcd(0,0,...,0) = 0. See for example:
http://mathworld.wolfram.com/ExponentLaws.html
Even though, gcc returns 1 for pow(0.0,0.0) in version 3.4.3 like many other c-compiler do. The same behaviour would be expected from cpow.
This is, of course, a different question from what a library should implement ... though I must say if I were interested in NaNs at all for a given problem, I'd be disappointed by any such library that didn't return a NaN for 0^0, and of any language standard saying so - I'd certainly consider a result of 1 wrong in the general case.
MfG Kai
cu, Ronny