(define nums '(1 2 3 4 5 6 7 8 9)) (define valid (lambda (x) (foldr (lambda (y z) (match y (nil z) (_ (match (filter (lambda (q) (= q y)) nums) (((? r) . nil) (match (filter (lambda (q) (eq r q)) x) (((? _)) z) (_ nil))) (_ nil))))) t x)))