asin returns nan.0

Adrian Kubala kubalaa@bigfoot.com
Fri, 31 May 2002 18:37:10 +0200


Alastair Reid (reid@cs.utah.edu) wrote:
> Are you reporting a bug in Hugs or asking us to debug your code?

Sorry, I should have been more clear. I think it's a bug.

Main> :version
-- Hugs Version February 2001
Main> asin (-2 / 2.0)
-1.5708
Main> norm (b, a) * norm (b, c)
2.0
Main> asin (-2 / (norm (b, a) * norm (b, c)))
nan.0

where	a = (1,0); b = (0,1); c = (1,2)
	norm ((x1, y1), (x2, y2)) = sqrt ((x1 - x2)^2 + (y1 - y2)^2)

It /looks/ like a bug to me, but there may be some mysterious deep
number magic I missed which explains this behaviour.

-Adrian