Соответствуют ли правила C и С++ математические операции в math.h
для плавающих точек (т.е. sqrt
, exp
, log
, sin
,...) для возврата наилучшего наилучшего решения?
Для заданного (точного и достоверного) ввода, очевидно, в общем случае не может быть точным выходом с плавающей запятой из этих функций. Но должен ли быть вывод, являющийся представимым значением, ближайшим к математически точному?
Если нет, существуют ли какие-либо требования к точности (возможно, для платформы/в других стандартах?), так что я могу сделать худшие оценки ошибок вычисления в моем коде? Каковы типичные ограничения на числовые ошибки современных реализаций?