2026/02/23

Newest at the top

2026-02-23 21:51:11 +0100 <EvanR> I have to preface everything I say about floats with "assuming no NaNs"
2026-02-23 21:51:04 +0100 <lambdabot> NaN
2026-02-23 21:51:02 +0100 <tomsmeding> > (1 / 0) + (-1 / 0)
2026-02-23 21:50:32 +0100 <tomsmeding> NaN, however, breaks everything it touches; EvanR perhaps this influences what you observe
2026-02-23 21:50:28 +0100 <EvanR> I approve
2026-02-23 21:50:09 +0100 <lambdabot> True
2026-02-23 21:50:07 +0100 <tomsmeding> > (1 / 0) * 2 > 3
2026-02-23 21:49:44 +0100 <lambdabot> 1.5707963267948966
2026-02-23 21:49:43 +0100 <tomsmeding> > atan (1 / 0)
2026-02-23 21:49:35 +0100 <haskellbridge> <ijouw> atan (1/0)
2026-02-23 21:49:23 +0100 <tomsmeding> infinity actually behaves kind of okay under certain floating point operations
2026-02-23 21:49:23 +0100 <haskellbridge> <ijouw> I don't remember where it comes up and a value is more reasonable
2026-02-23 21:46:47 +0100peutri(~peutri@bobo.desast.re) peutri
2026-02-23 21:46:12 +0100LUCKY_NOOB(~LUCKY_NOO@user/LUCKY-NOOB:44374) LUCKY_NOOB
2026-02-23 21:45:53 +0100LUCKY_NOOB(~LUCKY_NOO@user/LUCKY-NOOB:44374) (Quit: leaving)
2026-02-23 21:45:09 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds)
2026-02-23 21:45:08 +0100marinelli(~weechat@gateway/tor-sasl/marinelli) marinelli
2026-02-23 21:44:52 +0100peutri(~peutri@bobo.desast.re) (Ping timeout: 246 seconds)
2026-02-23 21:44:46 +0100marinelli(~weechat@gateway/tor-sasl/marinelli) (Remote host closed the connection)
2026-02-23 21:43:41 +0100 <EvanR> so annoying
2026-02-23 21:43:31 +0100 <EvanR> also anybody get the feeling NaN comes up much more often than infinity for some reason
2026-02-23 21:42:54 +0100machined1od(~machinedg@d172-219-48-230.abhsia.telus.net) (Ping timeout: 255 seconds)
2026-02-23 21:41:35 +0100 <humasect> div by zero feels more like inifnity
2026-02-23 21:41:31 +0100 <EvanR> infinite == -infinite ok but infinite == zero might require some more coffee
2026-02-23 21:41:17 +0100 <haskellbridge> <loonycyborg> in most cases infinity leads to exception
2026-02-23 21:41:03 +0100 <humasect> ah well ... i would put infinity and zero in the same place. negative...
2026-02-23 21:40:58 +0100 <haskellbridge> <loonycyborg> the answer is moo :P
2026-02-23 21:40:20 +0100 <haskellbridge> <ijouw> infinity == -infinity ?
2026-02-23 21:39:44 +0100 <haskellbridge> <loonycyborg> ye but it's still infinity
2026-02-23 21:38:23 +0100 <lambdabot> (Infinity,-Infinity)
2026-02-23 21:38:21 +0100 <EvanR> > (1 / tan 0.0, 1 / tan (-0.0))
2026-02-23 21:38:13 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-02-23 21:35:30 +0100 <lambdabot> Variable not in scope: cot :: t0 -> t1 -> t
2026-02-23 21:35:28 +0100 <EvanR> > cot 0.0 (-1e-400) -- or even normal trig
2026-02-23 21:34:46 +0100 <EvanR> and weeds upon weeds, the inverse trig functions care about the negative zero I think
2026-02-23 21:33:37 +0100 <EvanR> it doesn't complain if everything ends up equal
2026-02-23 21:33:16 +0100 <EvanR> that behavior wouldn't be problematic for x==y => f(x)==f(y)
2026-02-23 21:32:12 +0100 <haskellbridge> <loonycyborg> like if we add negative or positive zero to something then we'll get exactly the same number
2026-02-23 21:31:26 +0100 <EvanR> in the case of float it's kind of murky, what's the number itself, what's the representation (relevant to this law, and are reals even supposed to be like standard reals). Which I guess is food for thought when thinking about any other situation we are implementing
2026-02-23 21:31:08 +0100 <haskellbridge> <loonycyborg> at least as needed in practice
2026-02-23 21:30:46 +0100 <haskellbridge> <loonycyborg> positive and negative zero have different representations but represent same number
2026-02-23 21:30:00 +0100 <haskellbridge> <loonycyborg> the number itself and its representation are distinct things
2026-02-23 21:28:22 +0100 <tomsmeding> I'll leave the proofs as an exercise to the reader though
2026-02-23 21:28:03 +0100Anarchos(~Anarchos@91-161-254-16.subs.proxad.net) Anarchos
2026-02-23 21:28:02 +0100 <tomsmeding> I guess the conclusion is that we should prove more things
2026-02-23 21:27:02 +0100 <tomsmeding> clearly isNegativeZero isn't
2026-02-23 21:26:55 +0100 <tomsmeding> an Eq instance defines / ought to define an equivalence relation, but functions are not necessarily representative-independent
2026-02-23 21:26:13 +0100 <tomsmeding> when I was studying maths, we continually had to prove stuff independent of the choice of representative, to make things work on equivalence classes
2026-02-23 21:25:28 +0100mehbark(~mehbark@user/mehbark) mehbark
2026-02-23 21:25:28 +0100mehbark(~mehbark@joey.luug.ece.vt.edu) (Changing host)