(define (element-of-set? x oset)
  (cond ((null?  oset) #f)
	((= x (car oset)) #t)
	((< x (car oset)) #f)    ;; new 
	(else (element-of-set? x (cdr oset)))))





(define (intersection-set oset1 oset2)
  (if (or (null? oset1) (null? oset2))
      '()
      (let ((x1 (car oset1))    ;; use of let
	    (x2 (car oset2)))
	(cond ((= x1 x2) (cons x1
			       (intersection-set (cdr oset1)
						 (cdr oset2))))
	      ((< x1 x2) (intersection-set (cdr oset1) oset2))
	      ((< x2 x1) (intersection-set oset1  (cdr oset2)))))))

