B
Ben Bacarisse
CBFalconer said:No, there are not. xmax is the smallest number we can hand to this
fp-system and have it store it as y, where y == nextafter(x, x+1);
You said "xmax is a value that, when stored in a fp-object, will
produce a value larger than x when read back from that fp-object".
There are many such xmax no matter what you say. I suspected you
wanted to say the least such xmax which is why I went on:
Only if you ignore the multiplication by x or y. Since x < y then
x*(1+EPS) is not equal to y*(1-EPS). Those operations are
performed on the fp-system, so we know that 1+EPS is not 1.0, etc.
We are feeding the system actual real values, and taking what it
gives back.
No, you have omitted the step of passing the value to the fp-system
to store and looking at what it actually stored.
No I have not. If ymin < xmax what happens to those reals between
them? x and y are consecutive floats, and xmax is the smallest real
that gets stored as y so none of the numbers in this gap get stored as
y. Similarly ymin is largest real that gets stored as x so numbers
between ymin and xman don't get stored as x, so what happens if we
feed such a number to the fp-system? Are these numbers not
representable? Not in the "range" of any float? (From below the
answer seems to be "yes".)
xmax is the smallest such real THAT CAN BE expressed in the
fp-system. We can't avoid this leaping from real to fp-system and
back. At least I don't see how.
Oh dear. This is a whole new concept. How do we determine, in your
model, the reals that can be expressed and the reals that can't? In
the conventional view of FP this is simple, but I don't know what you
mean by the term.