
Boost : 
From: Joel Young (jdy_at_[hidden])
Date: 20020906 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
threevalued logic partionings of the intervalinterval 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 threevalued 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) pointintervals, 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)
or
[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)
or
[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. :)
Joel
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk