amarao: (Default)
amarao ([personal profile] amarao) wrote2025-05-22 08:45 am

Л - не логика, а lua

> nan
nil
> a=0/0
> a
-nan
> a==nill
false
> a==nan
false
> a==-nan
stdin:1: attempt to perform arithmetic on a nil value (global 'nan')
stack traceback:
    stdin:1: in main chunk
    [C]: in ?

После присматривания к результатам... в целом, претензия только к выводу nan как nil.

yurikhan: (Default)

[personal profile] yurikhan 2025-06-02 09:27 am (UTC)(link)

В плавучей арифметике сложение и умножение в общем случае не ассоциативно и без всяких NaN’ов, чисто за счёт ограниченной битности мантиссы. Примерно в духе (2^N + 1) + 1 = 2^N + 1 = 2^N, но 2^N + (1 + 1) = 2^N + 2.

juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-06-02 12:35 pm (UTC)(link)
Да, есть такая проблема; для борьбы с этим есть всякие трюки в вычислительной математики.

Короче да, это не математика, а ближе к химии.
juan_gandhi: (Default)

[personal profile] juan_gandhi 2025-06-02 06:44 pm (UTC)(link)
Я в вычислительной математике не силён.