Return-Path:
Return-Path: <john.harrison-request@uk.ac.cam.cl>
Received: from ted.cs.uidaho.edu by swan.cl.cam.ac.uk with SMTP (PP-6.0)
          id <16112-0@swan.cl.cam.ac.uk>; Wed, 15 Jan 1992 13:20:28 +0000
Received: by ted.cs.uidaho.edu.cs.uidaho.edu (16.6/1.34) id AA03595;
          Wed, 15 Jan 92 05:12:03 -0800
Sender: info-hol-request@edu.uidaho.cs.ted
Errors-To: info-hol-request@edu.uidaho.cs.ted
Received: from swan.cl.cam.ac.uk by ted.cs.uidaho.edu.cs.uidaho.edu (16.6/1.34)
          id AA03591; Wed, 15 Jan 92 05:10:58 -0800
Received: from guillemot.cl.cam.ac.uk by swan.cl.cam.ac.uk
          with SMTP (PP-6.0) to cl id <15960-0@swan.cl.cam.ac.uk>;
          Wed, 15 Jan 1992 13:12:08 +0000
To: info-hol@edu.uidaho.cs.ted
Cc: chou@edu.ucla.cs
Subject: Re: Why sets?
Date: Wed, 15 Jan 92 13:11:53 +0000
From: Tom.Melham@uk.ac.cam.cl
Message-Id: <"swan.cl.ca.987:15.00.92.13.12.26"@cl.cam.ac.uk>


Ching-Tsun <chou@cs.ucla.edu> asks:

> I was browsing through library "sets" and this occurred to me:
> Why do we need sets at all?  Why can't we just use the predicates?
> What is the advantage of having a new type (*)set?  And when should
> I use (*)set and when should I use (* -> bool)?

As David pointed out, some people prefer to make distinctions between
object to be regarded as sets and functions.  For those who would
rather work directly with *->bool, there is the library pred_sets.

Incidentally, I intend to rewrite pred_sets to make it parallel
the library sets, which is the most developed of the set theory
libraries.  If anyone strongly objects to this, please post me
as soon as possible, as I intend to do this soon.

Another point: there is an almost finished (i.e. needs 1 day's work)
full manual for the sets library.  This will be released with version
2.01, but anyone who wants it earlier can contact me.

Tom


