Стандарт IEEE 754 определяет квадратный корень отрицательного нуля как отрицательный ноль. Этот выбор достаточно прост для рационализации, но другие варианты, такие как определение sqrt(-0.0)
как NaN
, также могут быть рационализированы и проще реализовать на оборудовании. Если бы страх заключался в том, что программисты напишут if (x >= 0.0) then sqrt(x) else 0.0
и будут укушены этим выражением, оценивающим NaN
, когда x
- -0.0
, то sqrt(-0.0)
может быть определено как +0.0
(фактически для этого конкретного выражения результаты будут еще более согласованными).Какой численный алгоритм упрощается, определяя sqrt (-0.0) как -0.0?
Существует ли численный алгоритм, в котором где sqrt(-0.0)
, определяемый как -0.0
, упрощает логику самого алгоритма?
[Статья в Википедии] (http://en.wikipedia.org/wiki/Negative_zero) является достойной. Вероятно, вы должны спросить об этом по адресу math.se –