(fresh-idents idents blacklist &key (number-prefix '"_") (number-suffix '"")) → idents$
Function:
(defun fresh-idents-fn (idents blacklist number-prefix number-suffix) (declare (xargs :guard (and (ident-listp idents) (ident-setp blacklist) (stringp number-prefix) (stringp number-suffix)))) (let ((__function__ 'fresh-idents)) (declare (ignorable __function__)) (b* (((when (endp idents)) nil) (ident$ (fresh-ident (first idents) blacklist :number-prefix number-prefix :number-suffix number-suffix))) (cons ident$ (fresh-idents (rest idents) (insert ident$ blacklist) :number-prefix number-prefix :number-suffix number-suffix)))))
Theorem:
(defthm ident-listp-of-fresh-idents (b* ((idents$ (fresh-idents-fn idents blacklist number-prefix number-suffix))) (ident-listp idents$)) :rule-classes :rewrite)