1 (defun powerset (s) 2 (if (null s) 3 (list nil) 4 (let ((rest (powerset (cdr s)))) 5 (append 6 rest 7 (mapcar (lambda (r) 8 (cons (car s) r)) 9 rest)))))