(isodata-process-isomaps-args formals arg-isomaps isomap-id) → new-arg-isomaps
Function:
(defun isodata-process-isomaps-args (formals arg-isomaps isomap-id) (declare (xargs :guard (and (symbol-listp formals) (isodata-symbol-isomap-alistp arg-isomaps) (isodata-isomapp isomap-id)))) (let ((__function__ 'isodata-process-isomaps-args)) (declare (ignorable __function__)) (b* (((when (endp formals)) nil) (pair (assoc-eq (car formals) arg-isomaps))) (if (consp pair) (cons pair (isodata-process-isomaps-args (cdr formals) arg-isomaps isomap-id)) (acons (car formals) isomap-id (isodata-process-isomaps-args (cdr formals) arg-isomaps isomap-id))))))
Theorem:
(defthm isodata-symbol-isomap-alistp-of-isodata-process-isomaps-args (implies (and (symbol-listp formals) (isodata-symbol-isomap-alistp arg-isomaps) (isodata-isomapp isomap-id)) (b* ((new-arg-isomaps (isodata-process-isomaps-args formals arg-isomaps isomap-id))) (isodata-symbol-isomap-alistp new-arg-isomaps))) :rule-classes :rewrite)