Boost logo

Boost :

From: Joel Young (jdy_at_[hidden])
Date: 2002-09-06 10:42:46

Hi Doug,

From: Douglas Gregor <gregod_at_[hidden]>
> where a <= x <= c, b <= y <= d
is there a typo in this? Should it be:
  where a <= x <= b, c <= y <= d

assuming there is a typo,

Just to understand this I quickly came up with the following
three-valued logic partionings of the interval-interval space for:

[a,b] RelOp [c,d] iff
  Conjunction of x RelOp y for all (x, y)
    where a <= x <= b, c <= y <= d

Where Conjunction is three-valued conjunction.

       true false indeterminate
< == {<} {>,mi} A - {<,>,mi}
<= == {<,m} {>} A - {<,>,m}
= == {} {<,>} A - {<,>}
!= == {<,>} {} A - {<,>}
>= == {>,mi} {<} A - {<,>,mi}
> == {>} {<,m} A - {<,>,m}

where A = {<,>,m, mi, o, oi, s, si, f, fi, d, di, =}

Except for (IMHO verboten) point-intervals, true(=) is empty?

Are the existential versions of interest?:

[a,b] RelOp [c,d] iff
  Conjunction of
    (for all x in [a,b] there exists a y in [c,d] such that x RelOp y)


[a,b] RelOp [c,d] iff
  Conjunction of
    (for all y in [c,d] there exists a x in [a,b] such that x RelOp y)


[a,b] RelOp [c,d] iff
  Conjunction of
    (there exists a x in [a,b] and a y in [c,d]) such that x RelOp y)

> Is that clearer?

I think so, but if I screwed up above, it must not be. :-)


Boost list run by bdawes at, gregod at, cpdaniel at, john at