;;; $Id: infinite-set-ADT.def,v 1.1 1998/10/12 01:42:07 leavens Exp $

;;; Copy this file to the same directory where your infinite-set-ADT.scm
;;; file lives.

(defrep (set ?t) (-> (?t) boolean))

(deftype set-comprehend (-> ((-> (datum) boolean)) (set ?t)))
(deftype set-member? (-> (?t (set ?t)) boolean))
(deftype set-union (-> ((set ?t) (set ?t)) (set ?t)))
(deftype set-intersection (-> ((set ?t) (set ?t)) (set ?t)))
(deftype set-complement (-> ((set ?t)) (set ?t)))

