W3C home > Mailing lists > Public > public-owl-wg@w3.org > February 2009

Re: Alan Ruttenberg: Re: notes from OWL and RIF datatype coordination meeting

From: Alan Ruttenberg <alanruttenberg@gmail.com>
Date: Tue, 17 Feb 2009 23:45:41 -0500
Message-ID: <29af5e2d0902172045s1eea9719r993c88b361d9239b@mail.gmail.com>
To: Chris Welty <cawelty@gmail.com>
Cc: Sandro Hawke <sandro@w3.org>, public-rif-wg@w3.org, Boris Motik <boris.motik@comlab.ox.ac.uk>, W3C OWL Working Group <public-owl-wg@w3.org>
On Tue, Feb 17, 2009 at 11:05 PM, Chris Welty <cawelty@gmail.com> wrote:
>
> Alan,
>
> As I mention on our call, there are plenty of scientists and engineers who
> will dispute your abstract notion of  "mathematical properties of numbers".
>  Floats and decimals *are* different, and represent different things. For
> example, when a float represents a measurement taken with a certain
> precision, then it is simply *not the case* that 1.0000^^xs:float ==
> 1^^xs:decimal.  They really are not the same.

Hello Chris,

Jos and I had an extended discussion of this particular issue - about
"Imprecise" numbers and I believe that  he agreed this to be a
misnomer. What you say is equally true of decimal numbers - if an
number represents an approximate measure then using it as a precise
number is wrong. Imprecisions arise from different situations and are
not a property of the numbers themselves. The specification of
floating point numbers does not say that each represent a range of
numbers, or an approximate number. Both the float and decimal
specification say that each series of bits represent an exact number.

It is in the movement to the real world to these numbers, such as in
measurement, or in some types of operations on the numbers, that
imprecision is introduced. For example the specification of decimal
says that there is implementation specific rounding applied when
operations might result in numbers with more digits of precision than
are supported by the implementation. This introduces imprecision in a
manner analogous to the way that some floating point operations do. Or
consider a measurement is approximated  to the 100th of an inch as a
decimal.

Alternative uses of the hardware arithmetic units, and alternative
designs for hardware emphasize that precision is a fluid concept -
integer units are used for floating point operations and vice versa,
and recently it has been proposed that for certain types of operations
(such as decoding streaming media) precision of operations even on
integers could be traded off for lowered power consumption.

So I must respectfully disagree with your assessment here. While there
very well may be *some* engineers and scientists that think of
floating point numbers in the way you suggest, there is not a single
way in which floating point numbers are used nor a single way in which
decimal numbers are used. The representation issue you mention is not
unique to floating point numbers, either in their specification, or in
their use. I remain of the opinion that the proper way to specify
machine representations of numbers is to define their behavior in
terms of their mathematical properties.

-Alan


>
> It is true that the RIF decision was motivated much more by the need to
> comply with our existing implementation base, however that base is itself
> grounded in very real science and engineering, and very real and practical
> understanding of the mathematical properties of numbers.
>
>
> -Chris
>
>
> Sandro Hawke wrote:
>>
>> My take on this: RIF justifies the choice of making xs:float and
>> xs:decimal disjoint on the basis that this is needed in order for
>> implementations of RIF to be based on existing implementation of xpath
>> operators. The consequences of this choice for OWL go beyond simply
>> making the types disjoint but bring addition constraints on types of
>> facet values and additional complexity due to the possibility of
>> implementation dependent results for the numeric operators. The
>> adoption of xpath operators brings forward a number of issues that seem
>> inadequately considered and this choice may turn out to be unworkable,
>> in practice, even for RIF.
>>
>> In order for OWL to be precisely defined we need to base our
>> specification on the mathematical properties of numbers, not the
>> properties of implementations.
>
> --
> Dr. Christopher A. Welty                    IBM Watson Research Center
> +1.914.784.7055                             19 Skyline Dr.
> cawelty@gmail.com                           Hawthorne, NY 10532
> http://www.research.ibm.com/people/w/welty
>
Received on Wednesday, 18 February 2009 04:46:27 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 18 February 2009 04:46:29 GMT