Обсуждение: Катастрофическая отмена


[bs 2021-02-03: но: при вычислениях с плавающей запятой на современных компьютерах значения, взятые из десятичного представления, имеют неявные отклонения, возникающие в результате десятичного -> двоичного преобразования до! -/+ 0,5 ULP (единица на последнем месте), за каждый операнд!

(отклонений быть не должно, но у большинства значений они есть, (0,0, 0,5 и 1,0 «чистые», 0,1, 0,2, 0,3 0,4, 0,6, 0,7, 0,8 и 0,9 нет, менее 0,2 процента от значения с 4 знаками после запятой могут быть представлены с точностью до двоичного числа) отклонения могут также - частично - уравновешиваться при расчете, это вопрос удачи, но в худшем случае два максимальных отклонения складываются),

при вычитании одинаковых больших значений старшие биты операндов уравновешиваются, а биты, остающиеся как значение результата, состоят в определенной степени из отклонений округления, которые теперь играют - по отношению к результату - большую роль,

абсолютная ошибка не больше, чем сумма отклонений операндов от «действительных» значений, но относительная ошибка может доминировать в результате (например, если из значения, последний бит которого «только что округлен в большую сторону», вычитается значение, чье последний бит был "просто не" округлен, и если из-за схожести значений и отмены в результате остается только этот последний бит, следовательно, "катастрофический". (пожалуйста, извините и / или улучшите мой "плохой английский")] 77.1.203.101 ( разговор ) 11:52, 3 февраля 2021 г. (UTC)Отвечать[ ответить ]

моя «проблема» заключается в том, что утверждение «нет ошибки округления, вносимой операцией вычитания с плавающей запятой» справедливо для чистой — теоретической — fp-математики при особых условиях, но читатели оценят его с точки зрения «практической» математики как выполняется их ПК, и это страдает от двух влияний: 1. большинство программ не используют субнормальные значения, и при нормализации субнормальных результатов леммы стербенца существующие неточности «раздуваются», 2. лемма стербенца работает для чистых двоичных значений, но большинство значений, вычисляемых людьми с их компьютерами сегодня, преобразуются в десятичные числа, и для них процент точности уменьшается в 0,2 раза для точности каждого десятичного знака, исходные значения были даны (20% от xy,0 .. xy,9 - 4 % от xy,00 .. xy,99 - 0,8 % от xy,000 .. xy,999 и т. д.),таким образом, лемма Стербенца — хорошая теория, но она уведет пользователей по ложному пути, которые ищут практическую информацию, не могли бы вы добавить соответствующую информацию об этом? 77.0.112.186 ( разговор ) 21:52, 4 февраля 2021 г. (UTC)Отвечать[ ответить ]

Статья восстановлению не подлежит. Учитывая, что единственный пример LOS, который приводят люди, происходит с CC, и как статья CC на самом деле лучше показывает, как это применимо к fp (binary64), эта статья вообще бесполезна. Артурия 2e5 🌉 13:56, 30 марта 2021 г. (UTC)Отвечать[ ответить ]