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

P1788 response to Motion 13



George, Ulrich, P1788,

I have spent some time considering George's interesting challenge. Attached
is a PDF file that contains my results.

In summary:

I am convinced that the first three relations provided in Motion 13 are both
necessary and correct:

   A = B iff a1 = b1 and a2 = b2
   A <= B iff a1 <= b1 and a2 <= b2
   A \subseteq B iff b1 <= a1 and a2 <= b2.

The reason is that for any two given intervals, one of the four relations
\subseteq, \supseteq, <=, >= is always true. This is the minimum number of
relations to unambiguously order the entire Inf/Sup plane (each point in the
plane is an interval, plotted by lower bound along the horizontal axis (Inf)
and upper bound along the vertical axis (Sup)... see Fig. 1 in the PDF).

However, then we get, in accordance with algebra textbooks:

   A < B iff A <= B and not ( A = B )  // This is different than Motion 13!
   A \subset B iff A \subseteq B and not ( A = B ).

So I fully agree with Prof. Markov that the fourth relation in Motion 13
should be modified slightly and given the name "precedes or equals", i.e.,

   A \preceq B iff a2 <= b1.

This leads to the family of relations depicted in Fig. 2, and also gives:

   A \prec B iff A \preceq B and not ( A = B ).

Now, let me turn attention to the following.

If we start conversely with the following strict relations:

   A < B iff a1 < b1 and a2 < b2
   A \subset B iff b1 < a1 and a2 < b2
   A \prec B iff a2 < b1

and then, with these definitions we have, in accordance with algebra
textbooks:

   A <= B iff A < B or ( A = B )
   A \subseteq B iff A \subset B or ( A = B )
   A \preceq B iff A \prec B or ( A = B ).

Then these last three relations are almost but not exactly the same as the
relations

   A <= B iff a1 <= b1 and a2 <= b2
   A \subseteq B iff b1 <= a1 and a2 <= b2
   A \preceq B iff a2 <= b1.

The differences appear to be only at endpoints. For example, given the
definition A <= B iff a1 <= b1 and a2 <= b2, we have by algebra textbooks
A < B iff A <= B and not ( A = B). Notice that < does not require strict
inequality for both endpoints in order to be true. However, the explicit
definition A < B iff a1 < b1 and a2 < b2, does. The user now has an ability
to choose exactly which "flavor" of the < relation they require, i.e.,
should < require strict inequality of both endpionts or just one.

One may argue this still violates the Principle of Least Astonishment;
however in my view it seems to be a nice "feature," albiet a tricky one. In
any case, I must say without \preceq it really turns into a totally
undecipherable mess (we really need to inlcude \preceq).

My personal conclusion is that Motion 13 should be revised to provide both
the strict and non-strict versions of all the above-mentioned relations,
i.e., \equals, \preceq, \subseteq, <=, \subset, \prec, and < (a total of 7
basic relations). They are listed in Table 1 of the attached PDF.

From these 7 basic relations, all of the certainly-, possibly-, and set-
relations in the Fortran 95 standard can be derived, as depicted in Table 2.

I suspect other exotic relations may be defined in terms of these seven
elementary relations, as well. However, I believe IEEE 1788 only needs to
provide the seven relations in this minimal set.

Sincerley,

Nate

P.S.
Figs. 1 and 2 are from a paper on modal intervals, so they also include
nonstandard intervals, i.e., the half-plane below the Inf=Sup line. But the
relations are valid for standard intervals, i.e., the half-plane above the
Inf=Sup line, as well.

If an implementor chooses to provide support for nonstandard intervals,
definitions for \preceq and \prec need a slight modification, i.e.:

   A \preceq B iff max(a1,a2) <= min(b1,b2)
   A \prec B iff max(a1,a2) < min(b1,b2).

Otherwise the remaining definitions in Table 1 are valid and can be used
without modification, even for relations between standard and nonstandard
intervals.

Attachment: Motion13.proposed.pdf
Description: Adobe PDF document