PROPOSAL: Add `disjoint` method to `Data.IntSet`

Andreas Abel abela at
Tue Dec 19 23:45:28 UTC 2017

I am thinking along the lines of Tikhon.

Sets "overlap" is a rather uncommon term.  [If we were all 
constructivists, the situation would be different.  Constructively, 
"overlap" is certainly the primitive notion, and "disjoint" only its 

We can't introduce a positive term for everything.  For instance, we all 

   not . null

rather than having predicates like "isCons", "inhabited" etc.

On 19.12.2017 19:01, Tikhon Jelvis wrote:
> In practice, I hear people talking about "disjoint" sets all the time—it 
> comes up a lot more often than "overlapping" or "not overlapping". It 
> might have a negative in the name semantically, but it's used as an 
> atomic word in practice. (That is, when people say "disjoint" they're 
> *thinking* "disjoint" as opposed to "not joint" or "not overlapping".)
> I'm in favor of naming functions with common usage in mind, and I think 
> "disjoint" is the word people use most often in this context.
> On Tue, Dec 19, 2017 at 7:44 AM, Henning Thielemann 
> <lemming at <mailto:lemming at>> 
> wrote:
>     On Tue, 19 Dec 2017, Víctor López Juan wrote:
>         I'm thinking that `disjoint` is already a negation:
>         (dis- (not) + joint (united)). When composing with `not`, the
>         user gets
>         a double negation `not (disjoint x y)`. There is a then a small
>         mental
>         effort required to go from "not disjoint" to "overlapping".
>         If we are going to have only one of the two properties, I would
>         rather
>         have the positive one (`overlaps`) as primitive. Then `disjoint`
>         would
>         be written "not (overlaps x y)", which reads quite easily.
>         (Or even "not (x `overlaps` y)").
>     I also dislike double negation and think that 'disjoint' is one. I'd
>     prefer to see both 'overlap' and 'disjoint'.
>     _______________________________________________
>     Libraries mailing list
>     Libraries at <mailto:Libraries at>
>     <>
> _______________________________________________
> Libraries mailing list
> Libraries at

Andreas Abel  <><      Du bist der geliebte Mensch.

Department of Computer Science and Engineering
Chalmers and Gothenburg University, Sweden

andreas.abel at

More information about the Libraries mailing list