Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

M0026.01 Decorations NO



I vote a reluctant NO on Motion 26,   I agree with Hossam Fahmy's feelings
(who voted a reluctant "yes"), as I do feel that we need a working decoration
system.  But we are already committed to that basic necessity because we
passed Motion 8, and it is the details that need to be worked out.

So I expect the motion to be resubmitted (should it fail in this round)
in a way that addresses the missing issues.

The main detail missed by Motion 26 is the handling of unions and
intersections, which per Motion 26 produce bare intervals, leaving it
up to the programmer to deal with the decorations.  Some have said that
trying to use a bare interval in further computation would trigger a
type check error and would thus be detected at compile time -- but many
languages have automatic type coercions.  Besides, I'm not convinced
that the domain() operation solves the issue:  It accepts both bare and
decorated components of its input vector, and (except for "ill") simply
discards existing decorations.

Now, I fully agree that there are conflicting arguments as to what the
decoration propagation rule should be for unions and intersections, so
that there is no one sensible rule.  In my opinion that should be dealt
with like Max() vs MaxNum() in early 754R drafts:  There should be
distinct flavours of the Hull and Intersection operations that the
programmer can select -- and I hope that only a few flavours will be
sufficient to deal with all legitimate uses.

I also found the nature of the reference document for Motion 26 confusing:
it looks like proposed text, yet we are voting on it as a position paper,
i.e. we are to extract the intent and vote on that, instead of on the
actual text.  This can lead to serious misinterpretations.  So I will try
in the following to note issues I would have raised if we were voting on
the text.  (Btw, there are two versions, both marked DRAFT 03.2, one dated
July 18 -- the one pointed to on grouper.ieee.org/groups/1788/private/Motions
-- and the other dated August 5, with differences besides new Appendix D.)

  Typo in Theorem 5.1:  "a arithmetic expression"

  In 5.8.1:  ...(but not integer constants) -- concerning conversion to
              intervals.  How about "but not small integer constants"?

  In the table describing the decoration values, it would help to
  write "defined, bounded and continuous" for "bnd".  The precise
  definitions given later are ok.

  In Theorem 5.2, the subscript "d" is not bound.  Is universal closure
  implied, i.e. is there and f_d() for each decoration value d for which
  the corresponding p_d(f,x) holds?

Michel.
---Sent: 2011-08-16 20:21:59 UTC