Re: Do I have a second? Re: Position: That the Standard for Computing with Intervals Have Only One Level 1 Requirement: Containment
On Aug 3 2011, Dan Zuras Intervals wrote:
From: Ralph Baker Kearfott
Do I have a second for this position motion?
I have difficulty with the language of this position paper.
The expression "Containment-only Interval Standard" suggests
to me a specification so loose as to admit an implementation
that returns [entire] for all its functions as complying.
That is precisely what all conventional languages I know of do when
they come to something that is effectively unspecifiable, and often
when they come to something that is merely tricky or controversial.
While it is a laudable aim to reach the specification precision of
the "program proving" and hardware design languages, but for real
numbers, it is probably infeasible.
The requirement dates from time immemorial (certainly 1960s, and
perhaps earlier); I have tried doing it and spoken to several people
who have, over that period, and the one thing in common is that we
have all retired hurt. I believe that Ada does something along the
lines of what I mention below, but I haven't looked at it in decades.
And yet, on further reading, I find that I am wrong & this
is NOT what Bill has in mind. I'm not entirely sure what
he DOES have in mind but it is clear that he wishes to
specify things at level 1 as much as possible.
Without trying to second guess anyone, my opinion is that adopting
the position is probably the only feasible solution if either the
specification is to be completed within a decade or if there is to
be any chance of it being adopted.
There are a few relaxations that can be done, though none are easy,
and only the first provides actual requirements:
1) To require implementations to deliver a particular result in
the few trivial cases.
2) To require implementations to document the precision of the
result in the simplest cases.
3) To provide advisory guidelines on what should be achieved in
a respectable implementation, again in the simplest cases.
In all cases, it is extremely difficult to specify such things in a
way that is both useful for programmers and feasible to implement on
the systems they will be using, even before issues of optimisation
arise (and then it becomes truly evil, both technically and politically).
Regards,
Nick Maclaren.