[Haskell-cafe] Re: Defaulting to Rational [was: Number overflow]
ok
ok at cs.otago.ac.nz
Thu Jul 12 21:59:27 EDT 2007
On 13 Jul 2007, at 2:58 am, apfelmus wrote:
> What I wanted to do is to capture common patterns
>
> x - y >=3D epsilon
> abs (x - y) <=3D epsilon
>
> for comparing floating point numbers in nice functions
>
> x >> y =3D x - y >=3D epsilon
> x =C5 y =3D abs (x - y) <=3D epsilon
See Knuth, The Art of Computer Programming,
Volume 2, Semi-Numerical algorithms,
for a suitable set of predicates and axioms they satisfy.
However, they depend on epsilon (or APL's []CT, comparison
tolerance). I once implemented the four predicates Knuth
discussed in Quintus Prolog (library(fuzzy)). As far as I
know, nobody ever used it. I had plans for making the
code faster if anybody cared, but no-one did.
I suspect these functions would be no more useful in
Haskell: anyone who knew enough to use them would know enough
not to.
More information about the Haskell-Cafe
mailing list